概要
スピーカーを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接続したスピーカーからサイマルラジオが流れる。