pulseaudioコントロール(pulse.php)
pulseaudioコントロール
moOde audioのデフォルトはmpd。moOde audioへはhttp://moode/html/pulse.phpにアクセスします。
以下Raspberry Pi ZeroにmoOde audio(8.0.2)新規インストールして確認
moOde audio(8.0.2)
moOde audioをインストールしたらI2SデバイスをSET
当サイトのI2SデバイスPCM5102A,ES9023,TDA1543
Generic-1 I2S(hifiberry-dac)
IPアドレスは固定(STATIC)に設定するのがいいと思います。
取り敢えずはDHCPでも可
pulseaudio
参考 過去記事 Raspberry Pi Zero moOde audio 630(PulseAudio)
$ sudo apt update && sudo apt -y install pulseaudio
以下 $ sudo -i # rootで作業しています
/etc/pulse/default.pa
当サイトのI2SデバイスPCM5102A,ES9023,TDA1543で確認
いずれも汎用のデバイスですが共通設定で使用できます。他のデバイスでは調査する必要があると思います。
末尾に追記(ネットワーク帯は自ネットワーク)
/etc/pulse/default.pa load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/24 auth-anonymous=1 set-default-source alsa_output.platform-soc_sound.stereo-fallback.monitor set-default-sink alsa_output.platform-soc_sound.stereo-fallback
skyblue css
pulseaudioコントロールは操作性の良いskyblue cssを利用。ダウンロード、展開したらディレクトリ名をhtmlに変更してpulseaudio関連のファイルを纏めます。
# cd /var/www # wget https://github.com/Stanko/skyblue/archive/gh-pages.zip # unzip gh-pages.zip # mv skyblue-gh-pages html # rm gh-pages.zip
www-data
www-dataからpulseaudioをスタートするためにはホームディレクトリが必要になります。
# systemctl stop nginx php7.4-fpm # mkdir -p /var/www/html/www-data/.config/pulse # usermod -s /bin/bash www-data -d /var/www/html/www-data # systemctl start nginx php7.4-fpm
client.conf作成
# vi /var/www/html/www-data/.config/pulse/client.conf autospawn = no daemon-binary = /bin/true auto-connect-localhost = yes
所有者www-data
# chown -R www-data:www-data /var/www/html/www-data
www-dataをaudioグループに追加
# gpasswd -a www-data audio ユーザ www-data をグループ audio に追加
www-dataをsudersに追加(末尾に追記)
# visudo www-data ALL=(ALL) NOPASSWD: ALL
pulse.php
/var/www/html/pulse.php
/var/www/html/killall.sh 作成
#!/bin/sh sudo killall -q mplayer sudo killall -q mpv sudo killall -q ffplay mpc stop > /dev/null 2>&1
ロゴ画像 /var/www/html/imgにコピー
# mkdir /var/www/html/img
以上でmoOde audio(pulseaudio)の設定は終了 Reboot
client設定
``~/.config/pulse/client.conf autospawn = no daemon-binary = /bin/true default-server = 192.168.0.144 # moOde audioのIPアドレス
クライアントはpavucontrolをインストール、起動しておきます。(pulseaudioの自動キルを防止)
Raspberry Pi 2 ,Raspberry Pi Zeroで確認。但しZeroでは一瞬音声が詰まり気味になることがあります。moOde audio(730)では特に問題が無かったことからbullseye(pulseaudio)とZeroの間でなにか問題があると思います。Pi 2は特に問題なし(現時点ではPi2以降を使用か!?)