Raspberry Piのサウンドを試したら音が出なかった話

公開日: 電子工作 |

vlc_media_player
(これはX-WindowのVLCメディアプレイヤーのスクショ)

Raspberry Piでは、以下のコマンドでサウンドファイルの再生が行えると聞いて、早速試してみた。

$ aplay /usr/share/sounds/alsa/Front_Center.wav

この時、HDMIケーブルを使ってRaspberry Piをテレビに繋いでいたので、このコマンドを実行すると、テレビのスピーカーから女性の声で「フロント、センター」と聞こえるはず。

・・・が、コマンドを実行して待てど暮らせど一向に再生される気配が無い!!!

なんで鳴らないの!?

 

サウンドの鳴らない原因

原因は簡単で、

「HDMI出力がDVIモードになっていた」

と言うこと。

DVIモードになっていると、サウンドの再生は行われないようです。
そして、サウンドの出力先は、デフォルトでは自動で判別されるはず(期待としてはDVIモードであれば本体のライン出力から出力されるべき?)なのですが、DVIモードになっている時でもHDMIの方へ出力しようとして、結果サウンドが再生されないと言う状態だと思う・・・(推測)。

この状態でも、強制的に本体のライン出力の方へ、出力先を変更してあげれば、そちらから再生することは可能でした。

 

HDMI出力モードを変更する

Raspberry PiのHDMI出力は、PCモニター等へ出力するDVIモードと、テレビモニターへ出力するHDMIモードの2種類から選択できる。
DVIモードではHDMIへのサウンドの出力は無く、HDMIモードではHDMIへサウンドの出力が行われます。

で、この設定は、デフォルトでDVIモードとなっているようで、HDMI出力モードへ変更してやる必要があります。

HDMI出力モードは、起動SDカードのbootパーティションにある、config.txtファイルを編集することで変更することができる。

bootパーティションは、Windows7でも読み書き可能なので、Windows7のパソコンにSDカードを挿して編集する。

raspberry pi config.txt
Windows7で、RaspberryPiの起動SDカードを開いて、config.txtを編集する。

raspberry pi config.txt hdmi_driver

# hdmi_driver=2
の、頭の#を外して、保存する。

これで次からHDMIモードで起動されるようになる。

ちなみに、

hdmi_driver=1 で、DVIモード(デフォルト)
hdmi_driver=2 で、HDMIモード

 

サウンドの出力先を変更する

Raspberry Piの音声出力は、HDMIケーブルからの出力と、本体の音声ラインからの出力(ステレオ・ミニ・ジャック)の2系統ある。
デフォルトでは、どちらか自動で判別されて再生されるようになっているのを、強制的に変更することも可能。

サウンドの出力先変更は、以下のコマンドで行います。

自動判別

$ sudo amixer cset numid=3 0

本体のラインへ出力

$ sudo amixer cset numid=3 1

HDMI端子へ出力

$ sudo amixer cset numid=3 2

※一度実行すれば、再起動後もその設定が有効となる。

 

 

サウンドの再生確認

コマンドで

$ aplay /usr/share/sounds/alsa/Front_Center.wav

を実行すると、ファイルが再生される。
女性の声で「フロント、センター」と聞こえるはず。

 

関連記事

SDカード・マイクロSDカード

ArduinoでSDカード

電子工作で大量のデータを保存する方法を調べていると、 Arduinoでも比較的簡単にSDカードを

記事を読む

soundIR 受信機 回路図

赤外線リモコン受信機(イヤホンジャック接続)の回路

  前回からだいぶと時間が経ってしまっていますが、今回はイヤホンジャック接続のリモコン受

記事を読む

no image

Android+Arduinoでリモコン4(Microbridge接続)

前回AndroidAccessory接続で作った赤外線学習リモコンを、今回はMicrobridge接

記事を読む

no image

米粒AVRで小型8連ナイトライダーを作ってみた

米粒AVR(ATtiny10)を2つ使って、8つのLEDを順番に点灯しています。 &nbs

記事を読む

秋月電子 キャラクタLCD

秋月の小型キャラクタLCD

今回秋月電子で売られている小型のキャラクター液晶2種を買ったので、ちょっと比較してみる。 買っ

記事を読む

no image

Android+Arduinoでリモコン3 その1(AndroidAccessory接続)

何度か、Android+リモコンのネタを書いたことがあるのですが、今回はAndroid Access

記事を読む

ssh_connected

Raspberry PiをWindowsで操作する(SSH)

SSHを使って、Raspberry Piを外部PC(Windows)で操作する。

記事を読む

Androidから米粒AVRへデータを送る

米粒AVRでSoftModem的なこと その2

前回は「米粒AVRからAndroidへデータを送る」ことを試しました。 今回はその逆の「And

記事を読む

no image

Android + Bluetoothドングル + PIC24F

@hrdakinori さんと言う方が、PIC24FとBluetoothドングルを使って、Andro

記事を読む

Raspberry Pi 起動SDカード

Raspberry Piの起動SDカードを準備する

先日入手したRaspberry PiでLinuxを起動する為のSDカードを準備します。 Ras

記事を読む

Arduinoで温湿度データロガー
Arduinoで温湿度計 #2

今回は、前回作った温湿度計にRTCモジュールとSDカードアダプタを

Arduinoで温湿度計
Arduinoで温湿度計

秋月電子の温湿度モジュールを使って、温湿度計を作ってみました。 以前

SDカード・マイクロSDカード
ArduinoでSDカード

電子工作で大量のデータを保存する方法を調べていると、 Arduin

秋月電子 リアルタイムクロック(RTC)モジュール
秋月のリアルタイムクロック(RTC)モジュール

今回は秋月電子のI2C接続のリアルタイムクロック(RTC)モジュールを

秋月電子 キャラクタLCD
秋月の小型キャラクタLCD

今回秋月電子で売られている小型のキャラクター液晶2種を買ったので、

PAGE TOP ↑