ラズベリーパイ:omxplayerで再生できないとき

  • このエントリーをはてなブックマークに追加
  • LINEで送る

2015-06-23 at 00.14.28

Raspberry Pi Model Bを使っているのですが、音声関連でかなりてこずりましたので、メモしておきます。

わたしは、ちょっとした目覚ましを作ろうと思いラズベリーパイにつなげたスピーカから音声を流そうとしました。
音声は、mp3形式のファイルです。
ちなみに長い曲の再生には、omxplyaerを使い、短いエフェクト音の再生には、mpg321を使います。

理由は、omxplayerで2~3秒の短い音声を長そうとすると前半部分が聞こえなかったりするからです。mpg321は、短い音声が再生できるかわりに音質は劣る気がします。
定期的に音声ファイルを使ってラズベリーパイにしゃべらせたいようなときは、mpg321を使う方がいいと思います。

インストールは、

$ sudo apt-get install omxplayer
$ sudo apt-get install mpg321

でOKです。簡単です。

【ラズベリーパイの3.5ミリオーディオ端子にスピーカをつないで出力できないとき】

まず、

$ sudo raspi-config

を実行して、設定画面を開きます。

raspiconfig1

「8 Advances Options」を選択します。
raspiconfig2

「A9 Audio」を選択します。
raspiconfig3

ここでは、音声の出力先を指定できます。

「1 Force 3.5mm (‘headphone’) jack」を選びます。初期値は「0 Auto」になっているようです。HDMIディスプレイがつながっている場合、HDMIディスプレイのスピーカが優先されます。

音声ファイルを再生して確認します。

例としてホームフォルダにある「test.mp3」ファイルを再生するとします。

$ omxplayer -o local /home/pi/test.mp3

これで再生できるはずです。
「-o local」オプションをつけるとラズベリーパイのオーディオ端子につながった機器から出力します。「-o hdmi」オプションでHDMIディスプレイのスピーカからの再生となります。
ラズベリーパイのオーディオ端子から常に出力したいとき、わたしは必ず「-o local」オプションをつけるようにしています。その方が安全確実です。

ところで、今までomxplayerで再生できていたのに突然

* failed to open vchiq instance

なるエラーメッセージが出て再生できなくなってしまった時は

$ sudo chmod a+rw /dev/vchiq

とすると再生できるようになります。

  • このエントリーをはてなブックマークに追加
  • LINEで送る

SNSでもご購読できます。

コメントを残す

*