オーディオエンドポイントコンテナID

この記事では、Bluetooth オーディオ デバイスに関連付けられているオーディオ エンドポイントのコンテナー ID を取得するための信頼性の高い方法について説明します。

オーディオ エンドポイント ビルダーは、列挙アルゴリズムを使用してオーディオ エンドポイントのコンテナー ID を決定し、これらの ID をプロパティとして MMDEVAPI エンドポイント プロパティ ストアに格納します。 場合によっては、エンドポイント ビルダーによって使用されるロジックが、オーディオ ドライバーによって公開されるオーディオ エンドポイントのコンテナー ID が別の列挙子 (Bluetooth 列挙子) によって決定される Bluetooth I2S 設計を処理するには不十分です。

独自の Bluetooth 列挙子を使用する Bluetooth I2S 設計を含むこのシナリオはまれです。 ただし、このようなシナリオのサポートを提供するオーディオ ドライバーを開発できます。 この場合、オーディオ ドライバーはエンドポイントの新しいコンテナー ID プロパティをサポートできます。 新しいプロパティは KSPROPERTY_JACK_CONTAINERID で、既存の KSPROPSETID_Jack プロパティ セットに追加されています。 値は GUID であり、コンテナー ID のデータ型です。

オーディオ ドライバーは、Bluetooth 列挙子などの他の方法で適切なコンテナー ID を確実に取得できる場合にのみ、KSPROPERTY_JACK_CONTAINERID をサポートします。

オーディオ ドライバーが KSPROPERTY_JACK_CONTAINERID プロパティをサポートしている場合、オーディオ システムはドライバーからこのプロパティの値を読み取り、その値をオーディオ エンドポイントのコンテナー ID として格納します。

コンテナー ID と前述のアルゴリズムについての詳細は、「コンテナー ID」「オーディオ エンドポイント ビルダーのアルゴリズム」を参照してください。

Bluetooth バイパス オーディオ ストリーミングの理論