#2 その8 PC+REX-Link2EXの音楽再生について。USBでの転送。

 iTunesやMediaPlayerなどのアプリケーションは、指定された曲名のファイルを読出し、ミキサーなどで処理を行った後、USB Audio Driverを呼び出し、USBポートを経由してREX-Linkの送信機に音楽データを引き渡します
USBでの転送はFull Speed(12Mbps)で行われ、Isochronous(アイソクロナス)という方式でPCから送信機に転送されます。USBの転送方式は、キーボードやマウスなどで使用されるインタラプト方式、CDドライブやHDD(ハードディスクドライブ)、USBメモリ、メモリカード、それにiPodなどの携帯オーディオ機器やデジカメとの間の転送で使用されるバルク転送、それにIsochronousの3種類の方式があります。Isochronous方式は定時発車厳守の日本の鉄道みたいな転送方式で、一定時間間隔でデータ転送を実行します。受信側からACK(受信確認)がこなくても、エラー通知が来ても、次のスケジュールが来れば強制的に次のデータを送信します。USBで使用される前に、IEEE1394(i-Link、FireWire)で使用され、DVCAMとの間での映像・音声の送受信などで使われています。SACDのデジタルデータもi-Link経由で、このIsochronous方式で転送されていると思うのですが、まだREX-Linkでは対応しきれていません。1回の転送のデータパケットサイズは1023バイトで、非圧縮のリニアPCMデータでは約5mS分に相当します。
Full Speedの転送サイクル1mSの間に5mS分の音楽データを送ることができるので、その間を利用すれば追いつかれずに、エラー発生時に再送などを行うことも可能です。受信側で処理が遅れたり、受信バッファ(エンドポイント)内のデータパケットの順番が無茶苦茶にならないように、各パケットにはTime-Codeが埋め込まれています。受信側(REX-Link2)の送信機ではTime-Codeを参照しながら、Time-Codeの順番に基づいてこのデータパケットを編成してWirelessコントローラに引き渡します。

リッピングされたHDD上の音楽データはこのような方法でUSBポートから送り出されますので、ミキサー内部でサンプリングレートの変換でも行わない限り、ここでもjitterとは直接関係はありません。しかし、ミキサー経由による音質の変化に問題があると指摘される方もいます。私達の経験では、ここでの一番大きな問題はUSB転送の問題です。例えば、WindowsVista、Core2Duo搭載のVAIOノートPCで、iTunesのCover Flowオプションを使用すると、「ブツ、ブツッ」と雑音が聞こえます。これはCover Floの処理に要する時間が長く、Isochrounous転送の定時運行に音楽データのセットが間に合わないか、定時運行そのものが守れなくなっているということを示しています。この症状はREX-Link2だけでなく、有線で接続した各社のUSB Audio Deviceに共通ですので、アプリケーションおよびOS側に原因があります。MacOS X(10.4.11、intel版)ではUSB-Audioからブツ、ブツ音がするのを修正するためのパッチプログラムが配布されていますが、未確認です。iTunesのCover Flowを使用しなければ、また、同時にCPU占有率が高くなるようなアプリケーションを実行しなければ問題はありませんが、目下のところ、この問題が私達にとっては重大な問題です。また、パソコンのPowerManagementの設定によってはモードが切り替わる際に、Isochrounous転送がうまく行かないで「ブチッ」という音が聞こえることがあります。

私達の経験では、USB上でのIsochrounous転送でデータが壊れるということは、REX-Linkの送信機の場合にはほとんどありません。ただし、パソコンのUSBポートと送信機の間にIsochrounous転送を正しくサポートしていないHUBを入れたり、Isochrounous転送にbugがあるUSBホストアダプタ・ドライバを使用した場合はこの限りではありませんが、旧版のOSなどを使用する場合はUSBドライバの更新を行うべきと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です