概要
スピーカーをRaspberry PiとBluetooth接続し、オーディオ出力する。
また、おまけとして、Raspberry Piでサイマルラジオを受信し、Bluetooth接続したスピーカーで再生する。
環境
- Raspberry Pi本体 ※Bluetooth内蔵モデル(Pi Zero W)が望ましい
- SDカード ※Raspbian Stretch Liteにsshdを導入済みの4GB以上のもの
- Micro USB Micro-Bケーブル、または、Pi Zero USB Stem ※Raspberry Pi本体への電源供給方法
- Bluetooth Audio Receiverデバイス(MR230) ※以下、Bluetoothデバイス
- スピーカー ※3.5mmステレオミニプラグ(オス)入力対応
手順
-
Raspberry PiとBluetoothデバイスをペアリングする。
$ sudo bluetoothctl [bluetooth]# scan on [bluetooth]# scan off [bluetooth]# trust E8:07:BF:xx:xx:xx [bluetooth]# pair E8:07:BF:xx:xx:xx [bluetooth]# connect E8:07:BF:xx:xx:xx [MR230]# paired-devices [MR230]# quit
-
BluetoothデバイスをALSAデバイスとして扱えるよう、Bluetooth Audio ALSA Backend(以下、bluez-alsa)を導入する。
$ sudo apt install bluealsa
-
~/.asoundrc
ファイルにBluetoothデバイスを別名定義(bluealsaとbt-receiver)する。$ vi ~/.asoundrc defaults.bluealsa.interface "hci0" defaults.bluealsa.device "E8:07:BF:xx:xx:xx" defaults.bluealsa.profile "a2dp" defaults.bluealsa.delay 10000 pcm.bt-receiver { type bluealsa device "E8:07:BF:F0:2F:31" profile "a2dp" }
-
bluez-alsa
がBluetoothデバイスを認識していることを確認する。$ amixer -D bluealsa Simple mixer control 'MR230 - A2DP',0 Capabilities: pvolume pswitch Playback channels: Front Left - Front Right Limits: Playback 0 - 127 Mono: Front Left: Playback 127 [100%] [on] Front Right: Playback 127 [100%] [on]
Simple mixer control
に続く文字列はBluetoothデバイスの識別子となるため、書き留めておくこと。ここでは、'MR230 - A2DP
'である。-
Bluetoothデバイス'
MR230 - A2DP
'のボリュームを70%
に変更する。$ amixer -D bluealsa sset 'MR230 - A2DP' 70%
-
mplayer
コマンドをインストールする。$ sudo apt install mplayer
-
mplayer
コマンドでWAVファイルを再生し、Bluetoothデバイス(bt-receiver
と別名定義)からオーディオ出力する。$ mplayer -ao alsa:device=bt-receiver /usr/share/sounds/alsa/Front_Center.wav
サイマルラジオを聴く
※参考:Raspberry Piをインターネットラジオ(radiko等)の再生環境にしたらとても快適だった!CUI操作編radikoやサイマルラジオを聞いてみよう!
- サイマルラジオのページを開く。
- 「放送を聴く
」アイコンを右クリックし、プレイリストのURL(http://~/*.asx)を取得する。
-
取得したプレイリストのURLを
-playlist
オプションに記述し、次のコマンドを実行する。$ mplayer -ao alsa:device=bt-receiver -playlist http://www.simulradio.info/asx/fmpalulun.asx
Bluetooth接続したスピーカーからサイマルラジオが流れる。