2011-06-26 1 views
1

A2DP/SCOパケットをPCMとHCIでルーティングすることの違いを正確に知りたい。A2DP/SCO-PCM/HCl

PCMとHCIの両方でパケットのデコードにALSAフレームワークを使用し、それをスピーカーに送信しますか?

PCMには特別なハードウェアが必要ですが、HCIには必要ありませんか?

+0

私は間違っているかもしれませんが、PCMは通常、サウンドのようなアナログ信号のデジタル表現であるパルスコード変調の略です。 HCIはBluetoothプロトコルスタックの低レベルインタフェースです。 Bluetoothステレオオーディオを理解しようとしているときに両方を横切って走っているかもしれないこと以外は、2つは共通していません... PCMは一般的な非圧縮オーディオフォーマットなので、BluetoothラジオがPCMを入力として受け入れることができます。それをシンクに送るためには、Atrac、MP3、またはAACではなく、コーデックを使用します(ほとんどの場合、低複雑で低品質のSBCが必須です)。 – Lumi

答えて

1

A2DPはACLパケットを使用し、音声コール(ハンズフリー)は空中でSCOパケットを使用します。

HCIはACLとSCOの両方を転送できますが、これはfxの場合です。 BTドングルがUSBを介してPCにプラグインされているときBTチップには、SCOデータのルーティングが可能なPCMインターフェイスが用意されていますが、チップのPINにアクセスできる場合を除き、通常はアクセスできません。 PCMインターフェースは、アナウージ入出力に接続することができます。

+0

私はこのBluetoothオーディオビジネスに関心を持って、なぜLogitech Bluetoothオーディオアダプタ(ヘッドフォンのようなオーディオシンク、アンプに接続するためのもの)上で音楽がそのように劣悪な品質でレンダリングされたのかを理解しようとしました。さて、答えはSBC、A2DPの必須コーデックです。オーディオシンクがMP3またはAACを受け入れ、SBCだけでなく、MP3およびAACファイルを圧縮された形式で無線で送信し、到着時にデコードすることができます。これは、帯域幅のより効率的な使用と、より良い音質をもたらします。代わりに、MP3はPCMにデコードされ、SBC(trashed)にエンコードされ、(ゴミとして)送信されます。 – Lumi

3

Ottowa Linux Summit 2008の"Audio Streaming over Bluetooth"(PDF)と書かれた論文は、この点についてさらに光り輝くかもしれません。

特に

(ページ194から引用):

SCOチャネル上で転送されたオーディオデータは、通常のホストコントローラインターフェイス(HCI) ハードウェアドライバまたはPCMバックチャネルを介してを介して提供することができる 。デスクトップコンピュータの の場合は、HCIが使用されます。埋め込みデバイス(例えば、携帯電話)の の場合、 SCOチャネルは、PCM インターフェイスを介してメインオーディオコーデックに直接接続されます。