下記の記事で説明した、RaspberryPi 3 で AmazonEcho を Bluetoothスピーカとして使用する場合に、利用できるスクリプトです。
先に下記記事での設定をおこなっておきます。
RaspberryPi 3 で AmazonEcho を Bluetoothスピーカにする パソコン鳥のブログ
また、以降の XX:XX:XX:XX:XX:XX は、上の記事中で確認した値に置き換えて下さい。
Pulseaudio の設定を起動時に自動的に行う
RaspberryPi 3 で AmazonEcho を Bluetoothスピーカにする の「Pulseaudio の設定」を RaspberryPi起動時に行う必要がありますが、それを自動的に実行するスクリプトです。
ユーザ pi で crontab -e を実行し、次の1行を追加します。
Linuxで起動時に1度だけコマンドを実行する で説明したように、起動時に実行されます。
@reboot /home/pi/scripts/exec_restart_pulseaudio.sh
次にディレクトリ /home/pi/scripts を作成します。
そこに次のスクリプトを作成し、chmod +x /home/pi/scripts/exec_restart_pulseaudio.sh します。
これで、RaspberryPi起動時に、Pulseaudio の設定を自動的に行います。
/home/pi/scripts/exec_restart_pulseaudio.sh
#!/bin/bash device=XX:XX:XX:XX:XX:XX export PATH=/bin:/usr/bin:$PATH sleep 60 killall pulseaudio sleep 5 pulseaudio -D sleep 5 sudo bluetoothctl <<EOF disconnect $device quit EOF /bin/sleep 3 sudo bluetoothctl << EOF connect $device exit EOF
Amazon Echo に接続する
Bluetoothスピーカとして Amazon Echo に接続するスクリプトです。
(正確には Bluetoothデバイスに接続するスクリプトです)
次のスクリプトを作成し、chmod +x /home/pi/scripts/connect_bt.sh します。
スクリプト実行で、Amazon Echo に接続実行し、接続完了まで待ち合わせます。
既に接続済みの場合は、接続動作は行いませんので、Amazon Echo に接続済みかどうかに関わらず、とりあえずこれを実行すればOKです。
/home/pi/scripts/connect_bt.sh
#!/bin/bash device=XX:XX:XX:XX:XX:XX export PATH=/bin:/usr/bin:$PATH result=`echo -e "info $device\nexit\n" | bluetoothctl | grep "Connected: yes"` if [ -z "$result" ]; then echo "connect $device\nexit\n" | sudo bluetoothctl fi FOUND=`pacmd list-sinks | grep "Echo-"` while [ -z "$FOUND" ] do sleep 1 FOUND=`pacmd list-sinks | grep "Echo-"` done
Amazon Echo への再生音量を設定する
Bluetoothスピーカとして接続した Amazon Echo の、音量を設定するスクリプトです。
次のスクリプトを作成し、chmod +x /home/pi/scripts/set_bluetooth_volume.sh します。
音量変更は、現在の Amazon Echo の音量を100%として、
/home/pi/scripts/set_bluetooth_volume.sh 80%
のように実行します。
100%以上も指定できます。
/home/pi/scripts/set_bluetooth_volume.sh
#!/bin/sh device=XX:XX:XX:XX:XX:XX VOL=$1 export PATH=/bin:/usr/bin:$PATH /home/pi/scripts/connect_bt.sh INDEX=`pacmd list-sinks | grep "* index: " | sed -e 's/ \* index\: //'` pactl set-sink-volume "$INDEX" "$VOL"
コメント