ASIO非対応でもASIO出力する方法解説|ASIO4ALLインストール・設定方法

ASIOとは

ASIOとは「Audio Stream Input Output」の略で「アジオ」と読む。
オーディオドライバの規格の一種だ。

ASIOドライバlogo

このオーディオドライバには、一般的なWindowsならばMMEドライバ、DirectSoundドライバなどがあるが何故ASIOドライバが特に良いと言われているのか。
それは、レイテンシー(latency)つまり遅延を小さく抑えることができるからだ。

一般にレイテンシーは

MME: 100msec以上
DirectSound: 50msec以上
ASIO: 10msec以下

ぐらいだと言われている。うまくいくと、ASIOだと1msec以下にできるそうだ。
レイテンシーが小さいと、操作とオーディオデバイスの反応遅延がなくなりほぼリアルタイムでDTMが可能になる。

このことによるさらなる恩恵は、ジッタノイズ(jitter noise)を抑えることができることだろう。
ジッタノイズとは、時間軸でのずれにより生じるノイズである。
待ち時間が小さいほどずれる可能性は小さくなるので、ジッタノイズを抑えることができると言う訳だ。

もう一つうれしい事がある。
それは、カーネルミキサー(Kernel mixer)を通らないことだ。
カーネルミキサーとは、さまざまなサンプリング周波や音量のあるPC環境で、プレーヤーソフト側の負担を減らすために存在する。
MMEやDirectSoundはこのカーネルミキサーを通り音声を再生している。
しかし、このカーネルミキサーが厄介で、サンプリングコンバータの性能が悪くこのmixerを通ると音質が劣化すると言われている。
また、レイテンシーの原因にもなっている。
ASIO出力だと、このカーネルミキサーを通らず独自でやるので音質向上が望めるというわけだ。

良いことばかりのASIOだが、高価なサウンドデバイスにしかASIOドライバに対応していない。
ここが残念なところだ。

ASIO4ALL

ASIO4ALLというドライバを使うとASIO非対応のオーディオデバイスから擬似的にASIO出力できるようになる。

その仕組みは、Windows2000以降のOSはKernal mixerを通らないオーディオ再生経路にKernel streamingを持っている。
このカーネルストリーミングから音を出すことで、カーネルミキサーを通らずに再生できるという。

ASIO4ALL – Universal ASIO Driver For WDM Audio

ここがオフィシャルサイト。

ASIO4ALLをダウンロードしてインストールする。
ASIO4ALLの設定画面は以下のようなものが出てくると思う。

ASIO4ALL 設定画面解説

「WDN Device List」からASIO出力したいデバイスを選択し、スピーカーマークの「Enable」ボタンを押すと↑のようにそのデバイスが緑色のRunning状態になる。
これでASIO出力できるようになった。

そのデバイスを選択した状態でアインシュタインのマーク「Advanced」ボタンを押すと↓のような詳細設定画面になる。

ASIO4ALL Advanced設定画面解説

各項目の説明

●ASIO Buffer Size

Buffer Sizeが小さいほどレイテンシーを小さくできる。プツプツとノイズが入らない最小の値にすると良い。
調節しては聞いて決定すると良い。

●Latency Compensation

異なるサウンドデバイスとの発音のタイミングを合わせるためのスライダ。
作者もよく分からない項目だと言っているので、普通はDefaultのままで良いようだ。

●Use Hardware Buffer

WavePCIというミニポートはこの機能を利用することができる。
その他のデバイスは、Hardware Bufferは機能しないのでチェックオフに。

Kernel Buffers

Use Hardware Bufferがオフの場合にこの設定になる。非力なPC以外は、Defaultの「2」のままが良い。スペックに不安のあるPCは大きな値にしても良いが、レイテンシーが大きくなるためおすすめできないそうだ。

Buffer Offset

Use Hardware Bufferがオンの場合にこの設定になる。ハードウェアバッファとASIO4ALLとで交信する許可を出すオフセットタイムを指定する。小さい値ほどレイテンシーを小さくできるが、不安定になる。Defaultは10msで、4msにすると限りなく0に近いと考えるくらいの数値設定らしい。

●Always Resample 44.1 kHz <-> 48 kHz

ASIO4ALLはリアルタイムに44.1kHz<->48kHz間のリサンプリングをすることができる。AC97のように性能の悪いリサンプラーを持っているデバイスの場合はチェックを入れると音質向上が期待できる。

●Force WDM Driver To 16 Bit

AC97のように17bit〜23bitに出力を持つデバイス用のチェック項目である。通常はチェックオフで良い。

ASIO出力できるプレイヤーソフト

●foobar2000

フラットな出音で解像感がある。ソースのモニタリングには最適。デジタルアンプ的な硬質な音色。

foobar2000 wiki for Japanese Users

●Winamp

非常にメジャーなプレイヤー。デコーダの変更により高音質化が可能。WAVES等の高音質プラグインも使用できる。

Winamp統合スレのガイド

●SoundPlayer Lilith

MP3に特有な高音域の歪が上手く補正され聴き疲れしない。真空管アンプ的な艶っぽい音色。

Official Site

※各プレーヤーの評価は、2ちゃんねるの【PCAU】オーディオプレイヤー総合【音質スレ】より抜粋

個人的には、foobar2000 0.8.3が好き。
おたちゃんのmp3 inputプラグインとASIO outputプラグインを使えるし、なにより動作が軽い。

ASIO出力してみた感想だが、DTMをするわけでもないので耳ではあんまり変化は感じられなかった。
ただ、ASIO出力しているという自己満足度は大きく向上した。

コメント