親子IoTワークショップ

マイコンとクラウドを使ってIoTとプログラミングを学ぼう

[ トップ | 開催予定・概要 | 2024-12開催 | お知らせ | Facebook ]

Bluetoothスピーカーを使う

ラズパイのZeroには、スピーカーもスピーカー接続用のジャック(イヤホン接続用のジャック)も付いていません。したがって、ラズパイから音を出すには、外部スピーカーをBluetooth経由で無線接続するか、USB経由で有線接続するかの選択になります。Bluetoothスピーカーを接続するのが最も手っ取り早いのではないかと思います。

スピーカーを接続する

まずは、Bluetoothスピーカーをラズパイに接続します。スピーカーをペアリングモードにしてください。以下、ペアリングモードにする典型的なやり方をまとめますが、この方法はスピーカーの機種によって違うので、詳細はスピーカーのマニュアルを参照してください。

スピーカーがペアリングモードになったら、ラズパイの画面右上にあるBluetoothアイコンをクリックし、「Make Discoverable」クリックし、その後「Add Device」をクリックします(以下写真参照)。

ラズパイの周辺にあるBluetooth機器の一覧が表示され、しばらくすると、その一覧にスピーカーの名前が表示されます(1分くらいかかるかもしれません。気長に待ってください)。以下の例では「SRS-XB10」がスピーカーの名前です。

スピーカーの名前を選んで「Pair」ボタンをクリックしてください。これで、以下のように、Bluetoothメニューの一番下にスピーカーの名前が追加されます。

次に、ラズパイの画面右上にある「音量アイコン」を「右クリック」します。Bluetoothアイコンではなく「音量アイコン」です。そして、通常のクリックではなく「右」クリックです。そしてメニュー一番下の「Device Profiles」をクリックします。以下のようなウィンドウの中にスピーカーが表示されれば、接続は完了です。

なお、この音量アイコンを通常の左クリックすると、スピーカーから出る音の音量調節ができます。適当な音量にしておいてください。

スピーカーをテストする

それでは、接続したスピーカーのテストから音をだしてみます。まずは、VLCというメディアプレーヤー・アプリを使います(VLCはラズパイにインストール済みです)。

ファイル・マネージャーを起動し(ラズパイ画面左上にある黄色いファイルフォルダのアイコンをクリック)、/usr/share/sounds/alsaへ移動します。このフォルダに、音のサンプル(.wavファイル)があるので、どれかひとつ選んでダブルクリックします(あるいはスペースキーを押す)。これでVLCが起動し、選んだファイルが再生されます。スピーカーから音が聞こえれば、スピーカー接続は成功です。

同じことを、Terminal上で以下のコマンドを(コピー・アンド・ペーストして)実行して行うこともできます。

vlc -I dummy /usr/share/sounds/alsa/Noise.wav --play-and-exit

「-I dummy」の部分は、VLCがウィンドウを開かずに音ファイルを再生するための指定です。最後の部分「–play-and-exit」を追加すると、再生後にコマンドが自動終了します。

VLCではなく「aplay」というコマンドを使って再生することもできます。

aplay /usr/share/sounds/alsa/Noise.wav

vlcコマンドを使っても、aplayコマンドを使っても、再生結果は同じです。

MP3ファイルを使ってテストするには、MP3ファイルをラズパイにコピーして、VLCで再生してください(ラズパイへファイルをコピーするには「ファイル共有」を参照)。aplayコマンドはWAVファイルの再生だけ可能で、MP3ファイルの再生はできません。VLCはWAVファイルもMP3ファイルも再生できます。

VLCをTerminalから使う

先に紹介したように、TerminalからVLCを起動して音を再生するには、以下のようにvlcコマンドを使います。

vlc -I dummy test.mp3 --play-and-exit

また、以下のようにして、複数ファイルを連続再生することもできます。

vlc -I dummy test1.mp3 test2.wav --play-and-exit

このように、異なる種類(形式)のファイルを連続再生可能です。さらに、以下のように、再生開始時間と再生終了時間を指定できます。

vlc -I dummy test.mp3 --start-time=0 --stop-time=10 --play-and-exit

ここでは、MP3の最初(0秒目)から10秒目までを再生しています。VLCのコマンドには、他にも山ほどのオプションが指定可能です。詳細はこちら

プログラムを使ってスピーカーから音をだす

WAVファイルやMP3ファイルを再生するPythonプログラムが、replay-sound.pyです。上記のコマンドをsubprocess.run()に渡すだけです。subprocess.run()は、IoTワークショップ2日目にも使いました。プログラムを見比べてみてください。

自習プロジェクトの目次に戻る