Поделиться через


Идентификатор контейнера конечной точки аудио

В этой статье рассматриваются надежные методы получения идентификатора контейнера конечной точки аудио, связанной со звуковым устройством Bluetooth.

Конструктор конечных точек аудио использует алгоритм перечисления для определения идентификаторов контейнеров конечных точек аудио и сохраняет эти идентификаторы в качестве свойств в хранилище свойств конечных точек MMDEVAPI. В некоторых случаях логика, используемая построителем конечных точек, недостаточна для обработки проектов Bluetooth I2S, где идентификатор контейнера конечной точки аудио, предоставляемый аудиодрайвером, определяется другим перечислителем — перечислителем Bluetooth.

Этот сценарий с использованием конструкции Bluetooth I2S, использующей собственный перечислитель Bluetooth, встречается редко. Однако вы можете разработать аудиодрайв, чтобы обеспечить поддержку такого сценария. В этом случае аудиодрайвер может поддерживать новое свойство идентификатора контейнера для конечных точек. Новое свойство KSPROPERTY_JACK_CONTAINERID добавлено в существующий набор свойств KSPROPSETID_Jack . Значением является GUID, который является типом данных для идентификатора контейнера.

Аудиодрайвер поддерживает KSPROPERTY_JACK_CONTAINERID , если и только в том случае, если он может надежно получить правильный идентификатор контейнера с помощью других средств, например из перечислителя Bluetooth.

Если аудиодрайвер поддерживает свойство KSPROPERTY_JACK_CONTAINERID , звуковая система считывает значение этого свойства из драйвера и сохраняет значение в качестве идентификатора контейнера для конечной точки аудио.

Дополнительные сведения об идентификаторах контейнеров и алгоритме, упомянутом ранее, см. в разделе Идентификатор контейнера и алгоритм построителя конечной точки аудио.

Теория обхода потоковой передачи звука по Bluetooth