apu.1c用のlightMPDのヴァージョンアップ

メインシステムの入り口には「APU.1D4」を使っています。インストールしているのは「lightmpd」です。
はじめてインストールしたのは「ヴァージョン5」だったのですが、その後いろいろなバグフィックスがなされて、現在はヴァージョンが「8」にまで上がっています。幸いなことに、私のシステムでは問題を感じるようなバグもありませんでしたし、音質的にも十分に満足のいくものだったので「ヴァージョン5」のままで放置していました。
しかしコメント欄で「lightMPD-v0.08がリリースされて暫く経ちますが、ある程度聴き込んだ印象として、v0.05と比べると音楽的になったというか、より情緒に訴えてくる音になったように感じます。」という書き込みをいただきました。さらに「youngさまはどの様に感じておいででしょうか。」という問いかけもいただきましたので、久しぶりにヴァージョンアップしてみることにしました。

大幅な手直しがされた「ヴァージョン7」

大幅な手直しは「ヴァージョン7」でなされていました。
そのポイントは正式リリース版の「mpd-0.19」にlightMPDの拡張機能を追加したということです。

では、その拡張機能とは何かと言えば以下の4点です。

  1. rt_optのパッチの適用
  2. decoder_selecter
  3. 4096バイト以上のid3タグをサポート
  4. 拡張オーディオフォーマット

まず、(1)の「rt_optのパッチの適用」は「Voyage MPD」の時代から散々やられてきたことです。ひとことで言えば、音楽再生に使用するスレッドに適切な優先度の設定を行ってより安定した音楽再生を行おうというチューニングの手法です。
lightmpdでは初期設定として以下の値を使用しているようです。

  • USB割り込みハンドラー FIFO:99
  • mpd output スレッド FIFO:54
  • mpd player スレッド FIFO:52
  • mpd main スレッド OTHER
  • mpd decoder スレッド OTHER
  • mpd update スレッド OTHER
  • mpd io スレッド OTHER

これは妥当な設定だと思います。よほど特殊なシステム構成でなければこの初期設定で最も良い状態になると思われます。

次の(2)と(3)に関しては、個人的にはあまり興味のない項目です。

(2)に関して言えば、ファイルの種類ごとにデコーダの種類を切り替えることができるようにした機能です。基本的に非圧縮の「wave」でしか音楽を再生しない人なので切り替える必要はありません。
ただし、「wave」だけでなく「flac」や「mp3」、さらには「wma」なんかでも音楽を聞くよという人は、そのファイルごとに最適なデコーダを設定できるので便利かもしれません。

(3)の拡張機能もタグデータの「 4096バイト」という制限を外すことでカバーアートが使えるようにしものですが、そんな見栄えには全く興味がない人にはどうでもいいことです。

しかし、(4)の「拡張オーディオフォーマット」に関しては、アップサンプリングに関して精神衛生的にいささかもやもやしていた部分がすっきり解消されるので、これは少し詳しく触れておきます。

アップサンプリングする人には必須の「拡張オーディオフォーマット」

アップサンプリングの是非についてはPCオーディオの黎明期から論議され続けてきました。その詳細をここでもう一度振り返ることはしませんが、現段階では以下の2点が最低限の合意となっているのではないでしょうか。

  1. デジタル領域でイコライジングをするならば「16bitから24bit」への拡張は必須
  2. 最高品質の「Best Sinc Interpolator」が使えるならば2倍程度のアップサンプリングは有りかもしれない

ビット数の拡張についてはこのあたりご覧ください。

アップサンプリングに関しては、いろいろ意見があるもしれませんが、「mpd-0.19」から使用が可能になった「SOXR」よりも「libsamplerate」の方が音が良いと感じています。ただし、「libsamplerate」で最高品質の「Best Sinc Interpolator」に設定すると今までの一枚基盤のPCでは能力不足でまともに動作しませんでした。ところが、「APU」の登場によって何の問題もなく「Best Sinc Interpolator」に設定することが可能となりました。
「Best Sinc Interpolatorが使えるならば2倍程度のアップサンプリングは有り」というのはそのあたりの事情をふまえた上での結論です。

なお、lightmpdのデフォルト設定は「Linear Interpolator」なので、アップサンプリングを行う人は必ず「Best Sinc Interpolator」に書き直しておく必要があります。

しかし、そう言う音質面以外の部分で、どうしても困ってしまうことが一つありました。
それは、アップサンプリングする周波数を「88200」に設定すると、何でもかんでも「88.2kHz」にしてしまうと言う融通のきかなさです。

私のように、音源は基本的にCD規格、それを「88.2kHz 24bit」にアップサンプリングするだけという人ならば実用面では問題はありません。

しかし、時には、もしくは頻繁にハイレゾ音源も聞くという人ならばこれはいささか困ってしまいます。
入力された音源が96kHzであろうと、192kHzであろうと、お構いなしに88.2kHzに変換されてしまうからです。さらに言えば、DSDファイルであってもお構いなしに88.2khzに変換してしまうのですから、これはある意味ではかなり強力です。

と言うことで、、時には、もしくは頻繁にハイレゾ音源も聞くという人たちにとってはかなり困ったことになりますので、「mpd.conf」に「audio_output」を複数設定して、再生するファイルごとに「GMPC」の側で切り替えるという苦肉の策も提案されました。
しかし、再生するファイルに従ってクライアントの側でプロファイルを切り替えるというのはオシャレさに欠けますし、何よりも面倒です。
また、「44.1kHz 16bit」→「88.2kHz 24bit」というワンウェイのアップサンプリングしかしないと言っても、そう言う問題を内包しているというのは精神衛生上もやもやが残ります。

そんなときに登場したのが「拡張オーディオフォーマット」でした。
これを使えば、そう言う困った問題が一気に解決されるので、基本的にPCサイドでアップサンプリングする人にとっては必須の機能だと言えます。

では、「拡張オーディオフォーマット」とは何かと言えば、それはアップサンプリングは「audio_output」で設定は行わず、新しく「audio_output_format」という設定項目を設けて、そこでアップサンプリングに関する指定を行うという拡張です。
たとえば、私のように「44.1kHz 16bit」→「88.2kHz 24bit」というサンプリングを行う人ならば

audio_output_format “X2L2:24:*”

と記入すればいいようです。
詳しくは作者のサイトにある「拡張オーディオフォーマット」をご覧ください。
DSDファイルならばこの設定をスルーして素の状態で再生されます。

この設定をすることで、44.1kHz系列のファイルは全て88.2kHzに変換されますし、48kHz系列のファイルは96kHzに変換されます。
また「L2」の設定をしているので、アップサンプリングの上限もそれぞれ「88.2kHz」と「96kHz」になります。
これは、システムのど真ん中に挟み込んでいるデジタルイコライザが「96kHz」までしか受け付けないからです。もしも、システム全体が「192kHz」までに対応しているならば

audio_output_format “X2L4:24:*”

としておけばいいようです。
また、そう言うシステムで、常に目一杯上限までアップサンプリングしたい人ならば

audio_output_format “X4L4:24:*”

となります。
こうしておくと、44.1kHz系列は全て172.4kHz、48kHz系列は全て192kHz)にアップサンプリングされます。
ただし、強力な「APU」と言えども「Best Sinc Interpolator」設定でこのアップサンプリングが実用になるのかどうかはやったことがないので分かりません。

「ヴァージョン8」の変更点

「ヴァージョン7」から「ヴァージョン8」への変更はそれほど大きくありません。

Linuxのkernelが「linux-3.14.23rt20」になったことと(最新版)、mpdも「mpd-0.19.3rt」にヴァージョンアップしたことです。あと、「tag_cache」を圧縮して保存するかしないかが選択できるようになりました。デフォルトは「非圧縮」です。

さて、一番の関心は、このようなヴァージョンアップに伴う音質改善の効果がどの程度のものか?です。システムを開発する側にとっては丹念にバグをとっていくのは大変な作業ですし、ユーザーサイドからの好き勝手な要求を仕分けて、その中からとりれるべき要求を実現していくというのは大変な作業だろうと思います。
しかし、気楽なユーザーのサイドにあって一番の興味は「それで音が良くなったの」に尽きてしまいます。ホントに気楽なものです。
ですから、以下に述べる感想は、そう言う気楽なユーザーレベルでの話として受け取ってください。

まずは、「APU」に組み込まれた「lightmpd」は最初から良くできたシステムでした。
そのあたりこことは「APU1Cに対応したlightmpdの実力チェック~LINNの尻尾がついに見えた!!」で簡単に紹介しました。

ですから、ヴァージョンアップによって、そこからさらに大幅に音質が改善されるというのは難しい話です。
おそらくは、「lightmpd」という提案によって実現できる世界はほぼ飽和点に達しているのだと思います。もしもこの音を大幅に乗り越えていこうと思えば、根本的な部分でもっと違う提案がなされなければいけないと思います。

しかし、今回は一番最初の「ヴァージョン5」から最新の「ヴァージョン8」に一気にアップデートをしたので、システム全体の安定性はかなり向上していることは実感できました。そして、そう言うシステムの安定性が音質面に寄与している事は確かなようです。
PCオーディオにおいて重要なことは音楽再生に必要な機能に絞り込むことだけでなく、あわせてPC自体の動作が安定することも重要です。これは、Windows時代の極限まで行ったチューニングの試みの中でたどり着いた結論です。
lightmpdは一面においては極限までに音楽再生に特化したシステムですが、同時にシステムの安定性もこの間のヴァージョンアップで向上したように思います。そして、このシステムの安定性が音質面にも大きき寄与していることは間違いありません。

音の透明度、ピアニシモでの滲みのなさ、そして音色の太さなど、全ての項目でほんの少しずつ向上してきているような感じがしますし、その総体としてワンランク上の世界に到達してきているような気がします。
やはり、面倒がらずに、作者がアップデートしたときはそれに追随するのが正解のようです。

9件のコメント

  1. yungさま

    v0.08の試聴結果のレポートを掲載して頂き、ありがとうございます。

    僅かながらも改善が見られるということで、自分の印象が単なるプラセボではなかったことに安心しました。

    LinuxとMPDのボランタリーによる改善と、digififanさんのこれまたボランタリーなコンフィギュレーションの賜であることに、感謝の念を抱かざるを得ません。

    さて、次のヴァージョンアップがいつになるかは解りませんが、次回では”storage plugins”が導入される可能性があります。(決定事項ではありません)

    これにより、NASをマウントしなくても音楽が再生できるようになるらしいです。
    これは結構大きな変更だと思いますが、音質の変化があるのか、ないのか、今から楽しみです。

    ちなみに、マウントしないからと言って設定が容易になるわけではないそうです。残念(^^;)

  2. 初歩的な質問で申し訳ありません。お聞かせ頂けますでしょうか。
    可能な限りシンプルなオーディオ用PCを探しています。
    たとえばNASやルーターを通さずに、APU.1D4本体に音楽データーを直接入れたUSBメモリー等を差込んで使用することは出来るのでしょうか。
    音楽データのサイズが限られてしまいますが、それが可能であれば、よりシンプルに使用できるかなと思います。
    アドバイスお願いできますでしょうか。

    1. たとえばNASやルーターを通さずに、APU.1D4本体に音楽データーを直接入れたUSBメモリー等を差込んで使用することは出来るのでしょうか。

      確か「不可」だったと思います。
      詳しいことは「lightmpd」の掲示板に投げれば親切に返事をいただけると思います。

      なお、シンプルな構成をお望みならば、メーカー製のネットワークプレーヤを購入するのが一番賢い選択肢です。
      それをせずにPCを弄るのは、そう言うシンプルさを潔しとせず、逆にあれこれの複雑さや面倒を「趣味」ととらえて楽しめるからです。オーディオにおける「楽しさ」を何処に求めるかで自ずから選択する方向は見えてくるのではないでしょうか。

  3. yungさん

    アドバイスありがとうございました。

    すみません言葉足らずでした、私が言っている「シンプルな構成」とは「ハードウェア的にシンプルでかつユーザーに優しい構成」ということです。なので、ネットワークプレーヤーは確かに使い勝手の面ではシンプルではありますが中身はブラックボックス化していてシンプルとは言いがたいです。また、私もどうしもメーカーの価格設定(一部のメーカは良心的ですが)が納得できないのです。

    私の趣味におけるオーディオの楽しさは「音」に尽きると思います。なので、PCオーディオの発展により何百万円もお金を掛けずに同じ音を手に入れられる所まで来ているかと思います。
    次はいかにNASやその間のケーブル部分をそぎ落としハードウェアの面でシンプルなものを目指していけば(APU.1D4自体はPCとしては極めてシンプルですが)、また音質にも貢献できるのではないかと思っています。

    それとjoecool さんが仰っているNASが必要ないシステムとはどのようなものか期待しています。

    1. 私が言っている「シンプルな構成」とは「ハードウェア的にシンプルでかつユーザーに優しい構成」ということです。

      なるほどね、それなら分かります。
      おそらく、システムから「NAS」を排除することは決して「ハードウェア的にシンプル」にはならないと思います。必要なのは、「NAS」をなくすことではなくて、「NAS」を接続すれば自動的にマウントしてくれるようなシステム構成を作ることです。
      「lightmpd」のようにWindows環境でインストールができて、あとは「NAS」がオートマウントできればメーカー製のネットワークプレーヤーはかなり立ち位置が微妙になると思います。

      ところが、この「オートマウント」がなかなかに難しい・・・。
      おそらく、できる人ならば「簡単にできてしまう」ので、今まではその「必要性」があまり意識されなかったんでしょうね。

  4. 失礼します。

    >それとjoecool さんが仰っているNASが必要ないシステムとはどのようなものか期待しています。
    言葉足らずだったかも知れないのですが、NASが必要ないのではなく、NASをマウントする必要がないシステムです。

    digififanさんによると、
    >storage plugins を使うとマウントしていないサーバーからmpd自信がnfsプロトコルでデータを読み込みます。
    ということだそうです。

    結果として、ネットワークプレーヤーと同じような扱いができるようになるそうです。
    https://sites.google.com/site/digififan/home/digifi-labo/lightmpdno-du-zi-ji-neng

    1. 私もNASの接続ができない(やればできるかも)ので、apu.1cあるいはcubox4ではUSBメモリーあるいはHDDのUSB接続で聴いています。しかしRaspberryPiでVolumioを使ったら、NAS接続が簡単にできました(全くlinux不用)。ネットラジオも組み込んであり、Vortex(もう卒業しましたが)と同様に気に入っています。

      1. OLD BOYさん、volumioを使って下さっているのですね。お薦めしたかいがありました。
        同じようなディストリビューションにRune Audioもありますので、試してみたらいかがでしょうか。設定はvolumioとほとんど一緒です。
        ただ、音的にはlightMPDがその上をいっているように思います。
        今、lightMPDの作者のdigififanさんにraspberry piのi2s接続用のlightMPDの作成をお願いしているところです。
        これが出ると、面白いことになりそうな予感がするのですが・・・・・・。

        1. yseki118さん

          いろいろ教えていただきありがとうございます。これからもこの世界の発展が続いていくでしょうね。これに付いていくのも大変ですが、私は最近カメラにも手を出し、超望遠、超連写で琵琶湖の鳥たちを追っています。すると鳥になって飛んでみたい、彼らを空撮してみたいとなって、マルチコプターにも手を出しています。来年は71歳ですが、野尻湖まで450Kmを5時間で走っていく気力も残っていて、残る10年をめいっぱい楽しんでいこうと思っています(子供に帰って)。皆さん、来年もよろしくお願いします。

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です