#はじめに
Sonic piを試したかったのですが、音を出すのに少し手間取りました。
手順をシェアしておきます。
HW: Raspberry pi model B+
OS: raspbian (version: September 2014 release date: 2014-09-09)
モニターはSAMSONGのプラズマディスプレイです。HDMI接続しています。
以下のページが参考になります。
http://elinux.org/R-Pi_Troubleshooting#Sound
このページですでに色々試している方は、amixerのオートは使わないで、もう一度やってみて下さい。
この記事のポイントはそれだけです、、、。
#準備
まずはテスト用のhello_audio.binを作成します。
cd /opt/vc/src/hello_pi/
./rebuild.sh
音声出力はアナログ(=ヘッドフォンジャック)とHDMIがあります。
始めはヘッドフォンでチェックした方が簡単です。
#アナログ(ヘッドフォン)
ヘッドフォンを接続して次のコマンドを実行して下さい。
/opt/vc/src/hello_pi/hello_audio/hello_audio.bin
これで音がなるはずです。次にspeaker-testで音が鳴るか試して下さい。
#出力をアナログ(=ヘッドフォンジャック)に固定
amixer cset numid=3 1
#テスト
speaker-test -t sine -f 600
僕が試した時は、出力をアナログに固定しないと、音が出ませんでした。
デフォルトはオート(アナログ出力とHDMI出力兼用)なのですが、これに問題があるのかもしれません。
次にwavファイルの再生を試してみます。
aplay /usr/share/sounds/alsa/Rear_Center.wav
これで音がなればアナログはOKです。
なお、piユーザーがaudioグループに入っていないと、aplayコマンドでwav再生は出来ないそうです。
僕の環境ではデフォルトで設定されていました。
#HDMI
HDMIで音を出す前に、/boot/config.txtを変更する必要があります。
次の一行をコメントアウトして下さい。これをしないと一部のモニターではHDMIで音が出ないそうです。
hdmi_drive=2
変更したらリブートして下さい。音が出るかのテストはアナログとほぼ同じです。
#出力をHDMIに固定
amixer cset numid=3 2
#音が鳴るか確認
/opt/vc/src/hello_pi/hello_audio/hello_audio.bin
#スピーカーテスト
speaker-test -t sine -f 600
#wavテスト
aplay /usr/share/sounds/alsa/Rear_Center.wav