趣味のプログラム工房

VMware ESXi+windows server 2008 R2で音質改善

VMware ESXiのWindows server 2008 R2のサーバをジュークボックス的に使えないかと、試行。(前回の続きです。)

目的としては、このサーバをネットワークオーディオプレイヤーとしたい。
でも、前回の記事で書いたように、音質が致命的に悪いです。
ホストマシンに接続したUSB DAC(デジタル-アナログコンバータのですが、音とびがひどすぎます。
(ちなみに、同じホストに入れているUbuntuではハード自体は認識しているが、オーディオデバイスとしては仕様不可。同じハードに入れた、ネイティブでは使用できていたのに、、、。VMでだと使えないみたい)

Windowsでは、出力先に選択できるドライバインタフェースにはいくつか種類があるらしいが、通常「DirectSound」が使われる。
また、デバイスが対応していれば「AISO」というオーディオ用のインタフェースもある。
「DirectSound」の場合、音楽ソフトとオーディオデバイスの間に、OSの処理が多く入るため、OSの影響を受けやすく、遅延も発生する。(その分、音響処理とかできるメリットがある)
また、間の処理をより少なくした「ASIO」(オーディオデバイスが対応している必要がある)。
しかし、私の持っているUSB DACでは当然ASIOは対応していない。

でも世の中にはあるんですね。
http://ta2020.huuryuu.com/asio4all.html
非対応でもASIOを使えるようにするソフトです。

↑これと、出力インタフェースを変更できるオーディオソフト WINAMP(プラグインが豊富)で、ASIO用outプラグインを使用して鳴らしてみると、、、うーん、いまいち。
若干良くはなったが、まだノイズ、音飛びが酷い。


出力インタフェースでかなり改善できることがわかったので、この方向でとさらに調べた結果、ついに発見!!

それが、「Kernel Streaming」。
以外にも古い仕組みらしいのですが、音質は一番良かったです。
OSの処理をかなり排除しているらしく、軽いため、音飛びもないです。

ただ、Kernel StreamingやASIOを使うためには、対応する音楽ソフトを用意する必要があります。
WINAMPではプラグインを追加することで対応可能なので、WINANPプラグイン互換のソフトならば使えます。


追記
そもそもの問題として、Windows 2008が悪い気がする、、、
XPならば通常ドライバでも音質はそれなりなのに。(Kernel Streamingよりは悪い)

2011年12月25日