DeviceTopology API
Ознакомьтесь с примером DMO для записи голосовых данных Майкрософт высокого качества.
API DeviceTopology предоставляет клиентские приложения с возможностью обхода функциональных аппаратных топологий устройств отрисовки и записи звука. Через интерфейсы и методы в API DeviceTopology клиенты могут обнаруживать функциональные подсоедины (например, управление томами), которые лежат вдоль путей данных, которые приводят к устройствам конечной точки аудио и из нее. Клиенты могут проходить внутренние топологии устройств аудиоадаптера и конечных точек звука и выполнять шаги между подключениями, которые связывают одно устройство с другим. Дополнительные сведения см. в разделе "Топологии устройств".
Файл заголовка Devicetopology.h определяет интерфейсы в API DeviceTopology.
Чтобы получить доступ к интерфейсам API DeviceTopology, клиент сначала получает ссылку на интерфейс IDeviceTopology для устройства аудио конечной точки, выполнив следующие действия:
- Используя один из методов, описанных в интерфейсе IMMDevice, получите ссылку на интерфейс IMMDevice для устройства аудио конечной точки.
- Вызовите метод IMMDevice::Activate с параметром iid, равным REFIID IID_IDeviceTopology.
Клиент может получить ссылки на другие интерфейсы в API DeviceTopology, вызвав методы в интерфейсе IDeviceTopology .
API DeviceTopology реализует следующие интерфейсы.
Интерфейс | Description |
---|---|
IAudioAutoGainControl | Предоставляет доступ к аппаратному автоматическому управлению получением (AGC). |
IAudioBass | Предоставляет доступ к аппаратному элементу управления басового уровня. |
IAudioChannelConfig | Предоставляет доступ к элементу управления конфигурации канала оборудования. |
IAudioInputSelector | Предоставляет доступ к аппаратному элементу управления мультиплексором (селектор ввода). |
IAudioLoudness | Предоставляет доступ к контролю за "громкость" компенсации. |
IAudioMidrange | Предоставляет доступ к аппаратному элементу управления среднего уровня. |
IAudioMute | Предоставляет доступ к аппаратному элементу управления выключения. |
IAudioOutputSelector | Предоставляет доступ к аппаратному элементу управления demultiplexer (селектор вывода). |
IAudioPeakMeter | Предоставляет доступ к аппаратному элементу управления пикового измерения. |
IAudioTreble | Предоставляет доступ к аппаратному элементу управления с трепетным уровнем. |
IAudioVolumeLevel | Предоставляет доступ к аппаратному элементу управления томами. |
I Подключение or | Представляет точку соединения между компонентами. |
IControlInterface | Представляет интерфейс элемента управления (подъединений или соединителя). |
IDeviceSpecificProperty | Представляет свойство для конкретного устройства соединителя или подъединения. |
IDeviceTopology | Предоставляет доступ к топологии звукового устройства. |
IKsFormatSupport | Предоставляет сведения о форматах аудиоданных, поддерживаемых программным подключением ввода-вывода (обычно канал DMA) между звуковым устройством и системной памятью. |
IKsJackDescription | Предоставляет сведения о разъемах или внутренних соединителях, которые обеспечивают физическое подключение между устройством на звуковом адаптере и внешнем или внутреннем устройстве конечной точки (например, микрофоном или проигрывателем компакт-дисков). |
Параметрической детали | Представляет часть (соединитель или подсеть) топологии устройства. |
IPartsList | Представляет список частей (соединителей и вложенных элементов). |
IPerChannelDbLevel | Представляет универсальный интерфейс управления подсоединения, обеспечивающий управление на уровне громкости в децибелях аудиопотока или полосы частоты в звуковом потоке. |
ISubunit | Представляет аппаратный подсоединение (например, элемент управления уровня тома), который находится в пути к данным между клиентом и устройством аудио конечной точки. |
Клиенты API DeviceTopology, требующие уведомления о событиях изменения элемента управления в соединителях и подъединениях, должны реализовать следующий интерфейс.
Интерфейс | Description |
---|---|
IControlChangeNotify | Предоставляет уведомления при изменении состояния части (соединителя или подъединения). |
См. также