WindowsのWASAPI排他モードでさらに音質をアップさせる方法
audio-technicaのAT-HA90USB、これは相当のじゃじゃ馬です。
取説通りに使っていると、確実にBSODを招きます。
これと2年弱付き合う中で、ようやく扱い方が掴めてきました。
共有モードでは使い物にならない
サンプリングレートを16bit 44100khzに設定すれば落ちる頻度は低くなります。
しかし、相変わらずYoutube動画の変わり目などではノイズが走り、動作不安定に陥ります。
こうなる度にソフトウェアの再インストールを行うのが億劫で、結局共有モードでは使わないという選択肢に落ち着きました。
排他モードだと基本的には安定して動きます。
ハードウェアバッファを手動で指定する
排他モードには2種類ありますが、Event方式だとノイズが発生します。
・WASAPI Push → 従来の方式。問題は一切発生しない。
・WASAPI Event → より新しい形式。ノイズを防ぐため、バッファの手動設定が必要。
私が聞いた印象では、Eventでクラッシュギリギリまでバッファサイズを小さくするのが、最も好みの音質でした。
小さくすればするほど音の輪郭がはっきりし、ぼやけが取れる印象です。
Foobar2000
拡張オプション → Exclusive output overridesにチェック → ハードウェアバッファを12msに手動指定しています。

11msまで下げると2分前後でクラッシュしてしまいました。
MPC-BE
同様にWASAPIモードをEvent、デバイスバッファーを12msに設定しています。
しかしMPC-BEの設定画面からは50msと100msしか選べないため、特定値にしたい場合は追加の手順が必要です。

1.設定の保存場所をプロファイルフォルダに変更

プレーヤー設定を開き、「設定の保存場所」をユーザプロファイルに設定します。
2.プロファイルフォルダのmpc-be.iniを開く
フォルダパスは、Microsoft Store版の場合は、以下になります。
C:\Users\ユーザー名\AppData\Roaming\MPC-BE

3. MPC Audio Renderer設定を変更する
まずは、メモ帳で「BufferDuration」で検索します。
次に、最初にヒットしたMPC Audio Rendererのバッファ値を12に変更してください。

最後にCtrl+Sで保存して終了です。
※注意※
MPC-BEの設定画面から何らかの変更を行った場合、再度2~3の手順が必要となります。(値が上書きされるため)
まとめ
このように、排他モードを使う際にバッファ設定を手動指定することで、さらに音質を1段階上げることができます。
この手法自体は、HA-90USB以外の機種でも役立つと思います。