Apr 28, 2024
Logitech Media ServerのUPnP pluginとmpdの設定を見直した
とりあえず、今現在の最終設定をキャプチャ。mpd.confの設定なんて、本気で弄ったの何年ぶりだろう。


上がLMSのUPnPプラグイン、下がmpdだ。
ちなみに、LMSサーバーは、Mac mini 2010 mid、OSはFedora 39。
mpdサーバーは、HP Probook 450 G9 (CPU:i7-1255U)、OSはTiny Core 64 14.0。
問題になったのが、下記の音源。これが、ギャップレス再生しない。音が途切れる。
https://deezer.page.link/JWaU5YtNL56SjPmy7
スリープ マックス・リヒター
204曲 8時間24分 2015/09/04
うちのシステムでは、ストリーミングの音源によって処理しやすい、しにくいがあるらしく、特定の音源、特定の場所でノイズが乗るとか途切れるとかすることがある。libsamplerateでアップサンプリングするので、サーバーへの負荷が高いのが影響しているかもしれない。
そうした音源でも、このたびLMSサーバーが、HP 2570p(一部壊れかけ)のDaphileからMac miniのFedoraに変更になって、ちゃんと聴けるようになったのがいくつか確認出来ている。だから環境は良くなっているはずなんだけど、上記音源はギャップレス再生すら出来ない。
あろうことか、曲の途中で止まって飛んだりノイズが入ったりもする。
mpdの負荷を減らすためにアップサンプリングを止めるというのも考えられるが、この音源のためだけにそんなことをする気になれない。
試しにmpdの負荷が少なくなるようにアップサンプリングの設定を「best」から「fastest」に変えてみたけど、改善しない。
そんな状況で、うまく再生出来たのは、WiiM miniだった。
つまり、LMSサーバー、mpdサーバーを経由しなければ、支障なく鳴らせる(とはいえ、長時間になったらどうなるか分からないけど。音源8時間全部を鳴らしたわけではない)。
ストリーミングだと音切れ、ノイズが出るけど、ダウンロードした音源だと出ないということがある。そこで、ダウンロードしてみた。
https://www.prestomusic.com/classical/products/8518548--sleep
Max Richter: Sleep
FLAC(CD quality, 44.1 kHz, 16 bit)
204トラックで8時間半。発売は2018年。Deezerのストリーミングに使われているのと同じだと思う。
NASに保存して鳴らしてみたら、ストリーミングよりはずっとましだけど、たまに途切れる。NAS音源でこんなのは初めてだ。
上記よりも早く2015年に、CD、Blu-ray Audioと同時に発売となっているハイレゾ音源もある。ハイレゾを買うとCD同等の音源やmp3などダウンロードできるようだ。
https://www.prestomusic.com/classical/products/8079217--max-richter-sleep-8-hour-version
Max Richter: Sleep (8 hour version)
Hi-Res FLAC (lossless, 96 kHz, 24 bit)
全部で31トラック。これは、204トラックだと音楽が切れるところが繋がっているので、ストリーミング音源と再生時の条件が異なる。
この音源を何とかしようと、UPnPプラグインとmpd.confの設定変更で対応した。
UPnPプラグインのほうは、HTTP mode を「no length」、Cashe を「memory」、Streaming options の Delayを「0」に。
Audio format to UPnP player で、Transcode を「none」。
mpdは、audio_buffer_size を「65536」(KiBなので、64MiBということになる)。
buffer_before_play を「80%」。
このあたりが肝かな。うちで手応えがあるのがこの辺ということだ。
いつからか分からないが、mpdで「buffer_before_play」を100%に設定出来なくなっている。80%が最大値だ。バージョンは0.20.20。
audio_buffer_sizeの最大値は「131071」。128MiB未満ということだ。
audio_buffer_sizeを大きくしたときの問題は、音を出すときに出音に時間がかかることだ。再生ボタンをクリックして音が出るまでの時間が長くなる。
128MiBにしたらストリーミング音源の再生開始に30~40秒。ちなみにNAS音源の再生だと、そこまでの時間はかからないが、20秒ほど。
mpdサーバーでtopを動かしてmpdの状況を見てみると、挙動にかなり余裕があるようだ。なのに、曲の途中で止まる。音が途切れたら、再会するのに10数秒かかったりする。うーん、、、
ということで64MiBにして様子を見ている。
64MiBだと、かなりいける。
しかしそれでも、音切れが皆無にはならない。
他の音源は問題ないんだがなあ、、、他音源の音は、以前より良くなった気がする。
ここまでやってなんだけど、案外、Deezerサーバー側の問題なのかも、と思ったり、LMSサーバーの性能を上げたら解決したりしないかな、などと考えている。
しかし問題になるのはこの音源だけだし、当面、これでいいかなと思っている。
writeback message:
Caution!!!
Now, Anyone cannot post a comment.