2014年11月23日日曜日

RockDisk Next の設定

lightMPD 用として長らく AV 用の NAS を使っていたのですが、何故かハイレゾでプチノイズが発生するようになったので、新しい NAS に入れ替えました。

買ったのは、io PLAZA の "RockDisk Next"  ^o^ 音質が良いことで有名ですよね。何故音質が良いかは有名なサイトで説明されているので割愛。
QNAP の "TurboNAS TS-120" や Synology の "DiskStation DS115j" も候補だったのですが、ファンが付いているのでそれなりの騒音が予想されるため、RockDisk Next に軍配を上げました。

RockDisk Next は、QNAP と比べると設定できる機能が少ないのですが、lightMPD で利用するだけなら、後に述べる理由から不都合は全く感じません。( ̄ー ̄)

ただし、安定性とか耐久性は実績のある QNAP や Synology が1歩か2歩はリードしていると思います。別室に NAS を置けるなら QNAP か Synology を選んだでしょうね。

それから、不要なサービスを停止することで高音質化が図れると言われていますが、NFS 以外は全て止めても問題ないようです。

どうせ止めるのですから、余分な機能は必要ないわけです。^^

残念ながら ”サムネイル” は止めても、なぜかサムネイルが作られてしまいます。(T^T) これはなにげに精神衛生に良くないので、何とかして欲しいところです。

あ、IP アドレスを「手動」に変更しておく必要があります。(プリファレンス→ネットワーク→ネットワーク)で設定できるので好みのアドレスに設定しました。

肝心の NSF の設定ですが、少し解りづらいのでメモ。(「PC オーディオ実験室」さんのコメントを引用させて頂きました。)
RockDiskNextの管理画面からプリファランス→サービス→NFSを選択し、NFSを有効にする。
次に同じ画面から「追加」をクリックする。
ディレクトリの選択画面が出るので、「音楽」を選択して「開く」をクリックする。
そうするとNFSの画面に「/home/admin/Music/」が追加される。
同じ画面で「ホスト」が「192.168.0.*」ないし「192.168.1.*」になっていることを確認する。
また、「読み取り専用」と「Insecure」のチェックボックスにチェックが入っていないことを確認する。
最後に「保存」クリック。これで、nfsの設定は終了。
※セキュリティ的には問題があるかもしれないのですが、設定を簡単にするため、新たにアカウントを作成せず、admin の Music ディレクトリに音楽ファイルを置いています。

さて、これで RockDisk Next の設定は終了(ヲイヲイ)。あと 「lightmpd.conf」の設定もメモ。
[nas:NASID1]
    type=nfs
    host=192.168.x.xxx
    remotedir=home/admin/Music
    proto=tcp
    rsize=65536
    wsize=65536
[mpd]
    load_module=mpd-0.18.16dsdrt
    music_directory=NASID1/music
    playlist_directory=NASID1/mpd/playlists
    db_file=NASID1/mpd/tag_cache
    sticker_file=NASID1/mpd/sticker.sql
    #    log_file=NASID1/mpd/mpd.log
    log_file=/dev/null
  • "host" はRockDiskNext のIPアドレス。
  • "remotedir" は 上記 NSF の設定で画面に表示されたディレクトリを記入
あと、proto には "tcp" 以外に "udp" も設定できるようなのですが、ネットで調べても lightMPD で使用する上での違いが解らなかったので digififan さんに聞いてみました。
性能はtcpのほうがいいです。音質については実際に聞いて判断されたほうがいいと思います。
udpにする場合、rsize,wsizeは最大が8192になります。8192以上の値を指定した場合は強制的に8192になります。
udpの場合は1パケットがイーサネットの1フレームに収まるのが最も効率がよくなります。
イーサネットの1フレームの最大値をMTUとよびますが、apu.1cでもcubox-i4pでもMTUは1500以上に設定出来ません。
NICのMTUを大きく出来たとしても、フレームが通過するハブ、サーバーのMTUも大きくしないと効果はありません。
MTU=1500なのでrsize,wsizeは1024がいいのですが、これだと逆にIOの数が多くなってかえって効率が悪くなります。
したがって、rsize,wsizeは8192を指定しておけばいいと思います。
自分の駄耳&プアシステムでは音質差が感じられなかったので、性能が良いとされる "tcp"に設定しました。(^^;

あと、"tcp" にした場合の "rsize & wsize" についてもどのように設定すればよいのか?だったのでお聞きしました。
一般的には大きい方がベンチマーク上は高速になります。
cuboxi4の障害調査で測定した時もその傾向がでました。
しかし、あまり大きい単位でIO(入出力)を行うと、別な弊害がでます。
例えば、エラーが起こったときのペナルティが大きい(通常は同じデータを再送します)
IOが完了するまでそのデバイスを占有する事になるので平行性が悪くなるなどです。
〜〜 省略 〜〜
rsize,wsizeを突き詰める場合、スループットも大事ですが、アプリケーションの利用形態も考慮すべきです。
lightMPDではmpdがnasからデータを読み込むことしかしません。
mpdはaudio_buffer_size,buffer_before_playで決められる単位でデータの読み込みが行われます。(audio_buffer_sizeの単位は4096バイトです)
 バッファーが空の時(曲の開始時)に一時的に大量のデータの読み込みが発生しますが、以後は192Khz/24bitのデータでも平均して毎秒1Mbyte程度の読み込みしかしません。
以上を考慮するとmpdではrsize,wsizeはデフォルト値でいいのではないかと考えています。
lightmpd.confの値はOSのデフォルト値になっています。
結論として、デフォルトのままの設定で行くことにしたのですが、疑問が消えて気分がすっきりしました。digififan さん、お忙しいところしょうもない質問に丁寧にご回答頂きありがとうございました。m(_ _)m

最後に、NAS の外部電源を付属のスイッチング方式の AC アダプターからトランス方式に変更する場合は、2倍以上の電流容量のものにする必要があるそうです。

起動時に定格の2倍以上の電流が流れているらしく、付属の AC アダプターと同じ電流容量のトランス方式電源では、容量不足で動作が不安定になったり、誤動作を起こす場合があるとのことです。

と、いうか、NAS の電源を高品位なものにしても音質は殆ど変わらないような気が〜(^^; ←体験談

(追記)
lightmpd.conf の mpd セクションを記載していなかったのですが、それだと殆ど説明の体をなさないため記載しました。(赤字部分)←追記に誤りがあったので訂正しました。