アイソクロナス vs バルク(その2)

「PCトランスポート用に専用のパソコンを用意し、USBアダプタにオーディオ信号を送るときにはPCには他に何も接続しないし、オーディオアプリ以外は立ち上げない」、という状況では、USBバス上にはオーディオのトランザクション(信号)しか存在しないことになります。

さて、USBで大量のデータをやり取りするときに使われる転送方式として、「バルク転送」という方式があります。バルク転送では、USBバスに空きがあるとそれを目一杯使ってデータを転送しようとします。ただし、インタラプト転送やアイソクロナス転送の方が優先順位が高いため、そちらの転送要求があるとバルク転送の通信レートは低下します。

つまり、USBという転送路が渋滞していなければ、「貸切」状態で大変高速にデータを送ることができます。USB2.0 HiSpeedモードにおける「バルク転送」にとって、24bit/192kHz のPCM信号なんてごく少量のデータと言えます。

また、バルク転送では、データが正しく受け取られたかどうかを確認し、送信元のPCに「合図」を出すことによって、データが正しく受け取られるまで自動的に再送信されることになっています。

(これは、裏を返せば、「アイソクロナス転送」と違って、転送路でのデータ化けが多発すると、再送要求が多発し、USBアダプタ側のバッファメモリが空になって、最悪、音が途切れるという事態も可能性としては起こり得ることにはなります。)

ノーブランドの得体のしれない格安ケーブルは避けるのが無難ですし、可能な限りケーブル長は短い方がベターです。

また、「正しく受け取られたか」というのは、転送路でデータが化けたりしていないか、というのとは別に、USBアダプタ側のバッファメモリが一杯になってしまい、「今は受け取れないので少し待ってね」という状況も含んでいます。

オーディオのデータレートに比べて圧倒的なスピードで信号を送ってくるのに対し、結果的にUSBアダプタ側でPCに「待った」をかけて時間調整を図ることができるというわけです。

 さて、IEEE1394やHDMI接続のSACDプレーヤーなどで、「フロー制御」と呼んで、データの受け手であるAVアンプ側(DAC側)からデータの送り手であるプレーヤーに、「バッファメモリからデータが溢れそうになったから転送を少し待て」とか、「データが空になりそうだから早く送れ」などと指示を出すことによって、転送量を常に一定に保つようにする方式があります。

受け側がタイミングの主導権を握ることによって、AVアンプ側(DAC側)の完全にジッタのない発振器によるクロックでオーディオ信号をD/A変換することができるというものですが、上の図のように「バルク転送」ではUSBでも「フロー制御」と同等のことをしていることになります。

ただし、転送路が渋滞している場合や、他の「アイソクロナス転送」などの救急車・パトがーが走っている場合などは、USBアダプタ側のバッファメモリが空になりそうだからといって、PC側に早くデータを送ってもらうことができない点が上記と異なっています。

現実的には、PCオーディオ専用に1台パソコンを用意してあげれば、 USB2.0 HiSpeedモードを使用することによって、24bit/192kHzのPCM信号を何ら問題なく転送することができます。

手持ちのThinkPad X31では、2つあるUSBポートのうち、片方にバルク転送USB AUDIOアダプターを接続し、もう一方のポートに24bit/192kHzのwaveファイルを入れたUSBメモリを挿し、USBメモリから読み込みながらアダプタに転送しても音切れは起きていません。現状ではDSDでも大丈夫です。

Windowsのオーディオクラスに従っていないので、その制約も受けませんが(なのでDSDも録再できます)、世の中にたくさん存在する便利で格好良いオーディオプレーヤが使えないというのが、最大の特徴(制約ともいう)になります。 そこで、専用の録再アプリケーションを用意する必要があるわけです※1。

以上をまとめると、バルク転送のUSB AUDIOアダプターは、専用のWindows PCを用意することによって、

  • アダプタ側のオーディオ用発振器によるクロックで真にジッタレスなD/A変換ができる※2
  • Windowsでは定義されていないDSD信号の録再も可能
  • 特に意識しなくてもオーディオデータを何ら加工しないで素のまま転送する

といったことが可能になります。

また、現状では24bit/192kHzのwaveファイルを安定して再生できる数少ないUSB アダプターであるともいえます。

正直、キワモノであることは間違いありません(笑)。

(終わり)

※1  録再用の専用アプリについては、過去の記事をご覧ください。
※2  送信側のタイミングの「揺らぎ」の影響を一切受けないので、アダプタ側の発振器を作動させるのに、VCXOやその他の手段によってPCと時間軸の辻褄合わせをする必要がありません。