PCをトランスポートにするその9(カーネルミキサー経由で無変換出力)

前回、
1.Lilith+PCM2704+ASIO4ALLでWAVファイルをS/PDIF(光)出力
2.EDIROL UA-25+SoundEngineFreeで1を録音してWAVファイルを作成
3.1と2のファイルをWaveCompare照合
を行い、PCM2704+ASIO4ALLで無変換かつドロップ無しで出力可能な事を確認した。
ただ、私の音楽ライブラリは現在SonicStage+ATRAC Advanced Losslessで構成されており、SonicStageがASIO等に対応していないため、必然的に出力はカーネルミキサー経由になる。
SonicStageのリッピング品質に問題があるので、最終的にはFlacでライブラリを構築し直す予定だが、当面はSonicStageを使うことになるので、SonicStage+PCM2704の出力がどうなっているかチェックしてみた。
内蔵のサンプリングレートコンバータの品質があまり良くないため、ピュアオーディオユーザーから目の敵にされているカーネルミキサーではあるが、実はある条件をクリアできれば無変換で出力できる。
1.再生するファイルのサンプリングレート・ビット数がオーディオインターフェースが対応しているサンプリングレート・ビット数と一致している事。
2.オーディオインターフェースのミキサーの設定を無加工になるように設定すること。(音量最大、トーンコントロール・バランス等エフェクトは全て停止。)
3.オーディオプレイヤーが無加工で出力できる事。(オーディオプレイヤー側のエフェクトも全て停止。)
まず1であるが、オーディオデバイス側の手抜きで、対応しているにもかかわらずPC側に対応している周波数等をきちんと知らせないデバイスも結構あるようだ。
例えばオーディオチップは44.1KHz16Bitにも対応しているのに、PC側には48KHz24Bitしか知らせないと、カーネルミキサーは48KHz24Bitに一生懸命変換してくれる。
音が出ない訳ではないので、不良品だとも言いづらくやっかいだ。
PCM2704は、ASIO4ALLで確認してみると対応しているのが32-48KHz16Bitとなっており、CDのリッピングファイル44.1KHz16Bitは大丈夫のようだ。
次に2であるが、よくあるオーディオデバイスの常駐ソフト(バーチャルサラウンドとか)を終了させ、各種エフェクトは無しに設定、Wavファイルの再生のボリュームとマスターボリュームを最大に設定すれば出力は無加工となる。
最後に3であるが、基本的にイコライザやバスブーストは無効、後は試してみなと判らない。
さてSonicStageはどうだろうか?
ということで、
1.SonicStage+PCM2704でWAVファイルをS/PDIF(光)出力
SonicStage
2.EDIROL UA-25+SoundEngineFreeで1を録音してWAVファイルを作成
S/PDIF録音
3.1と2のファイルをWaveCompare照合
照合
と前回と同じ手順で録音・照合を行った。
結果…
見事バイナリ一致!!
SonicStageは、エフェクトを切れば無加工でカーネルミキサーに出力しているようだ。
ということで、今までのまとめ。
・アイソクロナス転送でも一般的な利用範囲ではデータ化けや欠落は発生しない。(音質が悪い理由にはならない。)
・データ化けや欠落が発生した場合は、明らかに判るような音(音切れや異音)になるので、雰囲気がどうのとか細かいレベルの音質とは関係無い。
・一般的なUSBオーディオデバイスの音声データ出力用クロックは、PCのクロックではなくUSBオーディオデバイス搭載のクロックが使われ、PCのクロックとは非同期である。
・一般的なUSBオーディオデバイスの、データ転送と音声データの生成の間にはバッファが介在しており、メモリバッファと同じ役目を果たしている。(ジッタはUSBオーディオデバイス側の精度になるということ。)
・電気的条件がクリアできて一般的な使用条件であれば安USBケーブルでもデータ化けや欠落は発生しない。
・カーネルミキサー経由でも条件が揃えば無変換出力が可能
以上USBオーディオの意外な(技術的には当たり前な)盲点でした(笑)
しかし、これを売り文句から抜くと、全く特徴が無くなってしまうUSB機器類がいっぱいあるな(爆)

コメントを残す

メールアドレスが公開されることはありません。