宅内での音楽再生環境を改善。
AVIOT DAC01 が専用ケース共に安価で購入できた時にセットで購入してRaspBerryPi2にvolumioをセットアップして聴いていた。
問題点
宅内の回線の負荷が高くなると、再生できなかったり音が途切れる。
このとき同じDLNAサーバ・NASで再生している、iPhoneのfidataアプリでの再生は安定している。
wifiの電波十分に強い状態なので、ipv6に対応していない事が要因と予想。
対処
volumio ipv6 有効化 では情報がいまいち集まらず。
raspberrypi IPV6 有効化 で検索
sysctl.confを編集すれば良さそう。
手順
まず確認
ip a
volumio起動しているRaspberriPiにsshで接続後
sudo nano /etc/sysctl.conf
下記箇所を修正
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
の1が無効化設定なので、0に変更すれば良い。
再起動
確認
ip a
ipv6のアドレスが表示されればOK
YouTube2プラグインが1.1.3になっていたので更新したら、LofiGirl等のライブ配信が途中で止まる現象も改善して聴けるようになっていた。
暫く様子を見なければ判断できないが、改善したように思える。
ipv6が無効化されているのはルーターが非対応な場合に不具合があるためだと思われる、検索した際にipv6の無効化の情報が多いようなので無用なトラブルを避けるため?
2024/02/07 追記
レスポンスも悪くなく安定しているかと思ったが、ランニングテストで鳴らしっぱなしにしていると音が出なくなる事がある。
リモートアプリ側では再生しているので出力がされていない?や、リモートアプリで接続もできない状態になる事がある。
5,6時間は問題無い様なのだがPi2なので放熱や電源容量では無いかと思うがipv6はやはり無効にした方が良いのか要検討。
2024/02/14 追記
レスポンスが悪い・遅い等の現象が発生、ipv6有効化しても期待した様な効果は無しかも( ノД`)シクシク…
2016年でかなり古いが、”Volumio2 では IPv4 のみを使用します”との回答だった、現在はVolumio3だが情報探せず。
2024/02/17 追記
カスタムDNS設定のゲートウェイに自宅ルーターを記述したら接続が安定・レスポンスも良くなった気がする。
IPv4が高負荷等で不安定な場合に、ローカルのみの音楽再生環境まで不安定になるのがそもそも理解できていないのでとりあえず暫く試す事にする。
sshで接続後
結果
PING localhost(localhost (::1)) 56 data bytes
64 bytes from localhost (::1): icmp_seq=1 ttl=64 time=0.221 ms
64 bytes from localhost (::1): icmp_seq=2 ttl=64 time=0.267 ms
アドレスが、::1 なのでipv6が優先されているはずだが負荷を掛けるとwebブラウザで確認しているvolumioの画面が時々タイムアウトする。
(ipv4が優先されている場合は、ipv4フォーマットのIPアドレス 192.168.1.x 等が表示される)
2024/02/18追記
やはり、再生が止まったり音飛びが発生する。
ヘッドレスでのリモコンでの操作がし易いのでvolumioが良いのだが、kodiはリモートアプリでの操作も含めイマイチ。(メインは動画再生だから?当然ディスプレイ操作が前提でリモートアプリは補助的なのかも)
volumio カスタマイズ ipv6
で検索したら、MPD関連でipv4を指定する記述が有った。
/etc/mpd.conf
bind_to_address "localhost"
bind_to_address "0.0.0.0" #明示的にipv4に変更する記述
#port "6600"
port "6600" #コメントを外すことにより6600固定する記述
との事なので、/etc/mpd.confを変更する。
ssh接続して
nano /etc/mpd.conf
bind_to_address "any"
の箇所を
bind_to_address "localhost"
#port "6600"
はコメントアウトせずそのまま、またしばらくテスト。
2024/02/19 追記
安定していて、レスポンスも良い気がする。
/etc/mpd.confを
bind_to_address "::1"
にすれば、ipv6のみとなる???もう暫く運用してから試してみる。
2024/02/20 追記
bind_to_address が、"any"に戻っていた???
bind_to_address "localhost" に書き換えて再起動して確認。
bind_to_address "localhost" で起動した???
bind_to_address "::1" にして再起動、
bind_to_address "any"で起動してきた???
書き換え時にエラーにはならないし、再起動前に確認すると書き換えた状態なので再起動時に修正されるみたい、”安定していて、レスポンスも良い気がする。”は、気のせい*1
bind_to_address "localhost" でも、2回再起動後は"any"に戻っていた。
2024/02/21追記
/etc配下のファイルを確認したら、mpd.conf.dpkg-disがあったので、
/etc/mpd.conf.dpkg-dist を確認・編集
一部抜粋
bind_to_address "localhost"
#
# And for Unix Socket
#bind_to_address "/run/mpd/socket"
#
# This setting is the TCP port that is desired for the daemon to get assigned
# to.
#
#port "6600"
となっているので、元々設定したい内容になっているっぽい、なのでipv6のローカルホストアドレスにしてみる。
bind_to_address "::1"
に変更、再起動後も有効でyoutubeも聴けるのでテスト運用。
2024/02/23 追記
ネットワークに起因すると思われる音飛び・再生停止は改善している様に思える。
まれに音が出なくなっているが、再生画面を確認すると再生は続いているし操作も可能な状態になる、これはOS側かAVIOT DAC01側の問題と思われる。
2024/03/28 ipv6化でやった事は追記効果無しだった( ノД`)シクシク…
ここ数日で音飛びや再生不可が発生している。
リモコンが使えず、スマホアプリからの操作になるので少し使いづらい(ボリュームは可能なので多少はまし)が暫くはvolumioからkodiに変更してみる。
2024/03/31
Microsoft Copilotに ”Volumio os をipv6優先する方法を教えて”と訊いてみる。
すると、”ネットワーク設定にipv6アドレスを入力すれば良い”との回答、そもそもipv6を無効にしているので回答は見当違いだが試していなかったので設定してみる。
Volumioにssh接続して、ip aでアドレス確認
何処見て良いかイマイチ不明(・・?
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff
inet XXX.XXX.X.XX/24 brd XXX.XXX.X.255 scope global noprefixroute wlan0
valid_lft forever preferred_lft forever
inet6 XXXX:XXX:XXX:XXXX:XXX:XXXX:XXXX:XXXX/64 scope global dynamic mngtmpaddr noprefixroute
valid_lft 2591820sec preferred_lft 604620sec
inet6 XXXX::XXX:XXXX:XXXX:XXXX/64 scope link
****ココ↑のアドレスを固定IPアドレスに入力(/64は含まない)***
valid_lft forever preferred_lft forever
固定IPアドレスの値に “::0/64“を追加した値をネットマスクに入力。
ゲートウェイのアドレスは、ルーターのインターネット・IPv6設定から確認した値。
ゲートウェイを未入力や間違った値にすると外部と通信できないので、Youtubeなどのプラグインが機能しない(MyVolumioに正常にログインできない)ので設定は正しくできたと思われる、IPv4のアドレスでも他の端末からVollumioアクセスは可能なのでちょっと混乱しているが暫く試してみる。
2024/04/02 追記 再起動したら、プラグインが使えなくなりMyVolumioにログインするようにメッセージが出力されてしまう。(・・?
設定変更
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff
inet XXX.XXX.X.XX/24 brd XXX.XXX.X.255 scope global noprefixroute wlan0
valid_lft forever preferred_lft forever
inet6 XXXX:XXX:XXX:XXXX:XXX:XXXX:XXXX:XXXX/64 scope global dynamic
****ココ↑のアドレスを固定IPアドレスに入力(/64は含まない)***
mngtmpaddr noprefixroute
valid_lft 2591820sec preferred_lft 604620sec
inet6 XXXX::XXX:XXXX:XXXX:XXXX/64 scope link valid_lft forever preferred_lft forever
再起動しても、プラグイン使えたので再度ランニングテスト。
??
コマンドでゲートウェイを確認したかったので、routeコマンドを打ったがVolumioにはインストールされていなかった。
なので、windowsから確認した。
route print -6
で表示された、ゲートウェイのアドレスはルーターで調べたものと違ったので別途テストしてみようφ(..)メモメモ
2024/04/04 NG? youtubeが使えなくなった??
ネットマスクをIPアドレスと全く同じ値にしてみた。
Ipv4環境でyoutubeのアカウント登録(テスト用にサブを作成)しても再起動すると解除されてしまうのであきらめていたが、試してみたら再鼓動後もOKだった。
現在
Volumioのラズパイで、ip a で確認したIpv6のアドレスを固定IPとネットマスクに設定。
同一LAN内のPCでroute print -6 で確認したIpv6のゲートウェイアドレス(Volumioにはrouteコマンドが無いため)をゲートウェイに設定。
* プラグイン設定を確認しようとすると、MyVolumioにログインされていません、とのメッセージが表示される事があるが2,30秒待つとログインが確認できるのかプラグイン設定の確認や設定ができるようになる。
*1:+_+