バイナリを一致させてみよう

このページでは,WindowsPCやMacをトランスポートとして使うために必要なバイナリ一致の方法について解説します。

バイナリ一致(ビットパーフェクト)って何?

再生したいデータとデジタル出力からでた信号のデータが一致する状態を,「バイナリ一致」または「ビットパーフェクト」と呼ぶことがあります。海外では,bit perfectやbit trasparentと表記することが多いようです。
記録されたデータを正しく再生するための第一歩として,バイナリ一致は必要不可欠といえるでしょう。

大前提:ボリュームは最大に!

音楽再生用プレーヤーやOSにボリューム調整機能があるのは皆さんご存じでしょう。あのボリュームはソフトウェアで元のデータを演算し直して音量を落としていますので,D/Aコンバーターにデジタル信号が届く前に既に信号が改変されてしまっていることになります。
コンピュータをトランスポートとして使いたい場合には,プレーヤーとOSの音量はいつも最大にしておきましょう。音量調整はアンプで行うのがトランスポートとしての正しい使い方です。

Windows PCでバイナリを一致させる方法

※ 下記の方法でも例外的にバイナリが不一致になってしまうケースがありえますが,通常の使い方をする場合にはバイナリが一致するため,ここではわかりやすく表記してあります。

Windows Vista SP1以前

特定の条件を満たさない限りバイナリが一致しないので,事実上ASIO対応の再生ソフトウェアとASIO対応のオーディオインターフェースを使うか,Windows XP以降であればKernel Streaming(カーネル・ストリーミング)に対応する再生ソフトウェアとオーディオデバイスを使うしかありませんでした。

ASIO(Audio Stream Input Output;アジオ)とは?
ASIOは、「ドイツのスタインバーグによりオーディオを入出力するためのアプリケーション用APIとして提供された規格であり、今日販売されている高級オーディオカードの多くがこの規格に準拠し、Windows用およびMac OS用のドライバも存在し、ほぼ業界標準として採用されている」(ASIO – Wikipediaより引用)とされるもので音声信号をPCで取り扱うための仕組みの一つです。
利点は色々とありますが,オーディオ再生を目的とした場合に最も重要なことは,ユーザーが意図しないデータの改変が発生しないことです。そのため,ASIOドライバで動作中のオーディオデバイスは,ただ一つのソフトウェアからしか音が出ない仕様になっています。Windows XP以前の時代は,もともと警告音やメディアプレーヤーの音など様々な音を同時に処理するために,Kernel Mixer(カーネル・ミキサー)と呼ばれる仕組みで全ての信号をデジタル処理してから出力していました。その精度が低かったため,元のデータと同じではないデータとなってしまったものをオーディオデバイスに渡していたのです…。

Windows Vista SP2以降

WASAPI(Windows Audio Session APIs)という仕組みが標準となりました。WASAPI排他モードとよばれる方法を使うと,ASIOドライバを使わなくともデータの意図しない改変を防ぐことが出来ます。
WASAPI共有モードではバイナリが一致しないようですので,CD規格のデータなら殆どのハードで対応しているWASAPI排他モードを使うのが簡単で確実でしょう。CD規格のデータであれば,USBオーディオのほぼ全ての製品が対応するなど,対応する機種は大変多いです。
もちろんASIOでも問題ありませんが,こちらは従来と同様,対応する製品がWASAPIに比べて限られるのが現状です。

WASAPI共有モードでバイナリが一致しない例
○『WASAPI共有モードのサンプルレート変換』
http://community.phileweb.com/mypage/entry/2721/20101016/21076/

Macintoshでバイナリを一致させる方法

MacOS 9以前

ASIO対応の再生ソフトウェア,ASIO対応のオーディオインターフェースを使うのが一般的でした。標準環境であるSound Managerではバイナリ一致が確保されていたという確たる情報はありませんでした。

MacOS X以降

ASIOとほぼ同様のCoreAudioという仕組みが標準となっており,こちらも適切な設定をすればバイナリの一致が可能です。Audio MIDI セットアップで設定したサンプリング周波数とbit深度で再生が決まるそうなので,再生している音声データのフォーマットとAudio MIDI セットアップで設定されているフォーマットが同じであればバイナリが一致します。
なお,異なるサンプリング周波数の曲を再生する場合,一旦iTunesを終了して,再度Audio MIDIで設定し直した後,iTunesを再起動する必要があります。再生ソフトによってはバイナリが不一致になるケースもありますので,再生ソフトがビットパーフェクトを保証しているかどうかを確認して使用して下さい。