Always Seriesのブログ

Always Series 開発担当者

前回の続き:UA100のASIOは本物だった。そして「バッファは小さいほど良い」は間違いだった

前回の記事の続きです。

前回は「専用ASIOとWASAPI排他、ASIO4ALLの音の違い」について書きました。その後、手元のEarFun UA100のドライバについてAIに聞いたところ、「これは専用ASIOではなく、ASIO4ALLと同じラッパーだ」という答えが返ってきました。

もしそうなら、前回の比較の前提が崩れます。そこで確かめてみました。すると、もう一つ、前回の記事で私自身が間違えていたことにも気づきました。

UA100のドライバは「ラッパー」ではなかった

AIが「ラッパー」と判断した理由は、設定画面にバッファサイズくらいしか項目がなく、見た目が汎用ドライバに似ている、というものでした。

でも、設定画面の見た目ではドライバの正体はわかりません。チップメーカー製の純正ドライバでも、設定画面はとても簡素なことがよくあります。

今回はファイルの中身までは確認していませんが、状況証拠から見て、このドライバはメーカー製の純正ドライバと考えてよさそうです。

  • チップの素性:UA100のUSBチップはComtrue社のCT7601で、SHANLING製品がベースになっています。ドライバは、このチップ向けに作られたものをEarFun名義で配布しているようです。
  • ネイティブDSDが通る:DSD64/128/256がそのまま再生できました。ASIO4ALLのようなラッパーでは、ネイティブDSDは通りません。
  • Windows 7でも動く:Windows 7には、Microsoft標準のUSB Audio 2.0ドライバがありません。そこで動くということは、ドライバ本体を自前で持っているということです。

なお、確実に確かめたい方は、デバイスマネージャーでドライバーの詳細を開いてみてください。Microsoft標準の usbaudio2.sys ではなく、メーカー製の.sysファイルが使われていれば純正ドライバです。

「専用ASIOはプロ用機器メーカーしか作れない」というAIの説明も誤りでした。中価格帯のDACでも、チップメーカーのドライバを使ってASIOを提供している例はたくさんあります。

前回の比較は、ちゃんと「専用ASIO」で行えていた、ということになります。

前回の訂正:バッファは小さいほど良い、わけではなかった

ここからが本題です。

前回、私は「専用ASIOは極小バッファで動作するから、ジッターが最小化される」と書きました。今回、バッファについて調べ直したところ、この説明は正確ではありませんでした。訂正します。

バッファとは何か

ASIOの設定画面にある「バッファサイズ」は、パソコン側で音のデータを一時的にためておく待合室の大きさです。

再生ソフトは、この待合室にデータを詰めます。ドライバは、そこからUSBでDACへ送り出します。DACの中のバッファではありません。

バッファの大きさはジッターを決めない

9月28日の記事にも書いたとおり、今のUSB DACの多くはアシンクロナス(非同期)転送です。音を出すタイミングは、DACの中の水晶発振器が決めています。パソコンは、DACに「データちょうだい」と言われた分を送るだけです。

つまり、待合室が大きくても小さくても、DACが音を出すタイミングそのものは変わりません。また、待合室の中にあるのはデジタルデータ(0と1)なので、長く待たされても劣化しません。

バッファの大きさで変わるのは、主に次の2つです。

  • 遅れ(レイテンシ):大きいほど、音が出るまでの遅れが増える
  • 安定性:小さいほど、パソコンの処理が一瞬遅れただけで音切れする

最適なバッファサイズは?

用途で決まります。

用途 目安 理由
音楽の再生だけ 512〜2048 遅れは問題にならない。安定性を優先
録音・楽器の演奏 64〜256 弾いた音が遅れて聞こえると演奏できない

「極小バッファ=高音質」というのは、もともとは録音やDTMの世界の「遅れを減らす」話です。音楽を聴くだけなら、音切れしない範囲で大きめが合理的です。

注意:ハイレゾでは同じ数値でも短くなる

バッファがサンプル数で指定されている場合、実際の時間はサンプリングレートで変わります。

バッファ 44.1kHz 384kHz
1024サンプル 約23ms 約2.7ms

同じ1024でも、ハイレゾでは待合室がぐっと狭くなります。ハイレゾやDSDで音切れするときは、バッファを大きくしてみてください。

9月23日の記事で、v9のエンジンのアンダーラン(音切れ)と格闘した話を書きました。あのとき悩んでいたのも、まさにこの「待合室が空になる」問題でした。バッファは音質を作るものではなく、音を途切れさせないための余裕なのだと、今は理解しています。

では、専用ASIOとWASAPIの音の違いは何だったのか

正直に書くと、バッファの大きさで説明した前回の理屈は、成り立たなくなりました。

ただ、私が聴いて感じた違いまで消えたわけではありません。純正ASIOは経路が短く、DSDをそのまま送れます。ASIO4ALLはドライバが2段重なり、DSDは通りません。こうした経路の違いはたしかにあります。

一方で、どちらもビットパーフェクトで出力できている場合、DACに届くデータは同じです。聴感の違いがどこから来るのかは、音量をきちんと揃えたうえで、あらためて聴き比べて確かめたいと思います。

おわりに

今回は、AIの誤りを確かめるつもりで調べ始めて、自分の記事の誤りにも気づくことになりました。

AIの説明も、自分の思い込みも、もっともらしく見える点では同じです。仕組みを確かめて、耳で確かめる。これからもこの順番を守りながら、Always Playerを作っていきます。

ホームページ
https://always-player.sakuraweb.com
紹介ページ
Always Playerの詳細情報 : Vector ソフトを探す!
Always Player のダウンロード・使い方 - フリーソフト100
Always Player:Windows用のフリーの高品質オーディオプレーヤー | お手軽ふりーなもの探索記