Справочник по DDI для звуковых устройств
Обзор эталонной технологии DDI для звуковых устройств.
Для разработки справочника по DDI для аудиоустройств вам потребуются следующие заголовки:
- audiomediatype.h
- audioenginebaseapo.h
- audioengineextensionapo.h
- baseaudioprocessingobject.h
- msapofxproxy.h
Рекомендации по программированию для этой технологии см. в следующих разделах:
APO_FLAG Перечисление APO_FLAG определяет константы, используемые в качестве флагов объектом обработки звука (APO). |
APO_LOG_LEVEL Задает уровень события APO, зарегистрированного с помощью IAudioProcessingObjectLoggingService::ApoLog. |
APO_NOTIFICATION_TYPE Указывает тип APO_NOTIFICATION. |
APO_REFERENCE_STREAM_PROPERTIES Задает свойства потока замыкания на себя для метода обратного вызова IApoAcousticEchoCancellation2::GetDesiredReferenceStreamProperties. |
AUDIO_SYSTEMEFFECT_STATE Указывает состояние звукового эффекта sAPO. |
DEVICE_ORIENTATION_TYPE Задает значения ориентации устройства для уведомлений типа APO_NOTIFICATION_TYPE_DEVICE_ORIENTATION. |
KSPROPERTY_AUDIOEFFECTSDISCOVERY Перечисление KSPROPERTY_AUDIOEFFECTSDISCOVERY определяет константу, используемую списком объектов аудиообработки (APOs). |
AcceptInput Предоставляет входные данные для APO в одном из его вспомогательных входов. |
AddAuxiliaryInput Добавляет вспомогательные входные данные в APO и предоставляет параметры инициализации. |
AERT_Allocate Служебная функция AERT_Allocate выделяет и блокирует сегмент памяти для использования объектами обработки звука. |
AERT_Free Служебная функция AERT_Free освобождает память, заблокированную функцией AERT_Allocate, для использования объектами обработки звука для обработки звуковых данных. |
ApoLog Регистрирует событие APO. |
APOProcess Метод APOProcess приводит к тому, что APO выполняет проход обработки. |
CalcInputFrames Метод CalcInputFrames возвращает количество входных кадров, необходимое APO для создания заданного количества выходных кадров. |
CalcOutputFrames Метод CalcOutputFrames возвращает количество выходных кадров, необходимых APO для заданного количества входных кадров. |
Фиксация После внесения изменений этот метод сохраняет изменения. |
CreateAudioMediaType Функция CreateAudioMediaType использует формат, заданный вызывающим объектом, для создания объекта типа мультимедиа, описывающего формат звука. |
CreateAudioMediaTypeFromUncompressedAudioFormat Функция CreateAudioMediaTypeFromUncompressedAudioFormat использует сведения, предоставленные в структуре UNCOMPRESSEDAUDIOFORMAT, для создания объекта типа мультимедиа, описывающего аудиоформат. |
GetApoNotificationRegistrationInfo Вызывается системой, чтобы разрешить клиентам регистрироваться для получения обратных вызовов уведомлений для конечной точки APO и уведомлений о эффектах системы. |
GetApoNotificationRegistrationInfo2 Вызывается системой, чтобы разрешить клиентам регистрироваться для получения обратных вызовов уведомлений для конечной точки APO и уведомлений о эффектах системы. Этот метод добавляет параметр, который можно использовать для определения типов уведомлений, поддерживаемых в версии Windows, работающей на текущем устройстве. |
Getat Возвращает ключ свойства из массива свойств элемента. |
GetAudioFormat Метод GetAudioFormat возвращает структуру WAVEFORMATEX для формата аудиоданных. |
GetControllableSystemEffectsList Реализованы звуковые эффекты объекта sAPO, позволяющие вызывающему объекту получить текущий список эффектов. |
GetCount Этот метод возвращает количество свойств, присоединенных к файлу. |
GetDesiredReferenceStreamProperties Запрашивает набор свойств для потока замыкания на себя, если они поддерживаются в связанной конечной точке звука. |
GetEffectsList Метод GetEffectsList используется для получения списка активных в данный момент эффектов обработки звука и сохраняет событие, которое будет сигнализироваться при изменении списка. |
Getformat Метод GetFormat извлекает представление пользовательского формата IAudioMediaType. |
GetFormatCount Метод GetFormatCount извлекает количество настраиваемых форматов, поддерживаемых объектом обработки звука (sAPO) системных эффектов. |
GetFormatRepresentation Метод GetFormatRepresentation извлекает строковое представление настраиваемого формата, чтобы его можно было отобразить в пользовательском интерфейсе. |
GetInputChannelCount GetInputChannelCount возвращает количество входных каналов (примеров на кадр) для этого APO. |
GetLatency Метод GetLatency возвращает задержку для этого объекта APO. Задержка — это время, необходимое кадру для прохода обработки объекта APO. |
GetPreferredInputFormat Функция обратного вызова, которая позволяет apos указывать предпочтительный формат входных данных для предоставленного формата вывода. |
GetPreferredOutputFormat Функция обратного вызова, которая позволяет apos указать предпочтительный формат вывода для предоставленного входного формата. |
GetRealTimeWorkQueue Возвращает идентификатор рабочей очереди, которую APO может использовать для планирования задач, которые должны выполняться с приоритетом в режиме реального времени. |
GetRegistrationProperties GetRegistrationProperties возвращает свойства регистрации объекта обработки звука (APO). |
GetUncompressedAudioFormat IAudioMediaType::GetUncompressedAudioFormat возвращает сведения о формате аудиоданных. |
GetValue Этот метод извлекает данные для определенного свойства. |
HandleNotification Вызывается системой для уведомления клиентов об изменениях конечных точек APO или системных эффектов. |
Initialize Метод Initialize инициализирует объект APO и поддерживает данные переменной длины. |
IsCompressedFormat Метод IsCompressedFormat определяет, является ли формат звуковых данных сжатым. |
IsEqual Метод IsEqual сравнивает два типа носителей и определяет, идентичны ли они. |
IsInputFormatSupported Проверяет, поддерживается ли APO определенный вспомогательный формат входных данных. |
IsInputFormatSupported Этот метод согласовывает с подсистемой звука Windows Vista, чтобы установить формат данных для потока звуковых данных. |
IsOutputFormatSupported Метод IsOutputFormatSupported используется для проверки поддержки определенного формата вывода. |
LockForProcess Метод LockForProcess используется для проверки того, что APO заблокирован и готов к обработке данных. |
RemoveAuxiliaryInput Удаляет вспомогательные входные данные из APO. |
Сброс Метод Reset сбрасывает объект APO в исходное состояние. Этот метод не вызывает никаких изменений в объектах подключения, присоединенных к входным или выходным данным APO. |
SetAudioDeviceModulesManager Вызывается системой для передачи экземпляра IAudioDeviceModulesManager объектам обработки аудио (APOs), реализующим интерфейс IAudioDeviceModulesClient . |
SetAudioSystemEffectState Реализованы звуковые эффекты объекта sAPO, позволяющие вызывающему объекту задать состояние эффектов. |
SetValue Этот метод задает значение свойства, заменяет или удаляет существующее значение. |
UnlockForProcess Метод UnlockForProcess освобождает блокировку, наложенную на APO методом LockForProcess. |
IApoAcousticechoCancellation Этот интерфейс реализуется apos для реализации сценариев акустической эхо-подавления (AEC). |
IApoAcousticechoCancellation2 Расширяет возможности IAcousticEchoCancellation, чтобы разрешить apos указывать требуемые свойства ссылочного потока. |
IApoAuxiliaryInputConfiguration Предоставляет методы, которые api-интерфейсы могут реализовать для добавления и удаления вспомогательных входных потоков. |
IApoAuxiliaryInputRT Безопасный в реальном времени интерфейс, используемый для управления вспомогательными входными данными APO. |
IAudioDeviceModulesClient Объекты аудиообработки реализуют этот интерфейс для получения ссылки на экземпляр IAudioDeviceModulesManager . |
IAudioMediaType Интерфейс IAudioMediaType предоставляет методы, позволяющие sAPO получать сведения, используемые для согласования с обработчиком звука для соответствующего формата аудиоданных. |
IAudioProcessingObject Объекты обработки звука (SAPOS) с системными эффектами обычно используются в потоках процессов реального времени или вызываются из них. |
IAudioProcessingObjectConfiguration Интерфейс IAudioProcessingObjectConfiguration используется для настройки APO. Этот интерфейс использует свои методы для блокировки и разблокировки APO для обработки. |
IAudioProcessingObjectLoggingService Представляет службу ведения журнала для APOs. |
IAudioProcessingObjectNotifications Реализовано клиентами для регистрации и получения стандартных звуковых уведомлений для конечных точек APO и уведомлений о эффектах системы. |
IAudioProcessingObjectNotifications2 Реализовано клиентами для регистрации и получения стандартных звуковых уведомлений для конечных точек APO и уведомлений о эффектах системы. Этот интерфейс добавляет возможность определять типы уведомлений, поддерживаемые в в версии Windows, работающей на текущем устройстве. |
IAudioProcessingObjectPreferredFormatSupport Этот интерфейс реализуется APOs, чтобы позволить им указать предпочтительный формат ввода или вывода. |
IAudioProcessingObjectRT Этот интерфейс может работать в режиме реального времени, а его методы можно назвать потоками обработки в режиме реального времени. |
IAudioProcessingObjectRTQueueService Представляет службу рабочих очередей в реальном времени для APOs. |
IAudioSystemEffects Интерфейс IAudioSystemEffects использует базовые методы, унаследованные от IUnknown, и должен реализовывать метод Initialize. |
IAudioSystemEffects2 Интерфейс IAudioSystemEffects2 появился с Windows 8.1 для получения сведений об объектах обработки в заданном режиме. |
IAudioSystemEffects3 Реализуется клиентами, которым требуется передать структуру APOInitSystemEffects3 в метод IAudioProcessingObject::Initialize. |
IAudioSystemEffectsCustomFormats Интерфейс IAudioSystemEffectsCustomFormats поддерживается в Windows Vista и более поздних версиях Windows. |
IPropertyStore Этот интерфейс предоставляет методы, используемые для перечисления значений свойств и управления ими. |
AcousticEchoCanceller_Reference_Input Содержит развернутые сведения, относящиеся к текущей конфигурации AEC. |
APO_NOTIFICATION Представляет уведомление об изменении конечных точек APO или системных эффектов. |
APO_NOTIFICATION_DESCRIPTOR Указывает запрошенное уведомление APO. |
APO_REG_PROPERTIES Структура APO_REG_PROPERTIES используется IAudioProcessingObject::GetRegistrationProperties для возврата свойств регистрации объекта обработки звука (APO). |
APOInitBaseStruct Структура APOInitBaseStruct — это базовый заголовок инициализации, который должен предшествовать другим данным инициализации в IAudioProcessingObject::Initialize. |
APOInitSystemEffects Структура APOInitSystemEffects передается в APO системных эффектов для инициализации. |
APOInitSystemEffects2 Структура APOInitSystemEffects2 появилась вместе с Windows 8.1, чтобы обеспечить дополнительный контекст инициализации объекта обработки звука (APO) для инициализации. |
APOInitSystemEffects3 Предоставляет параметры инициализации APO, расширяя возможности APOInitSystemEffects2, чтобы добавить возможность указывать поставщика услуг для ведения журнала. |
AUDIO_ENDPOINT_PROPERTY_CHANGE_APO_NOTIFICATION_DESCRIPTOR Указывает уведомление APO об изменении свойства конечной точки. |
AUDIO_ENDPOINT_PROPERTY_CHANGE_NOTIFICATION Представляет уведомление APO об изменении свойства. |
AUDIO_ENDPOINT_VOLUME_APO_NOTIFICATION_DESCRIPTOR Указывает уведомление APO тома конечной точки. |
AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION Представляет уведомление APO об изменении громкости конечной точки звука. |
AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION2 Представляет уведомление APO об изменении громкости конечной точки звука. Это обновленная версия AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION, которая предоставляет дополнительные сведения о событии изменения тома. |
AUDIO_ENVIRONMENT_STATE_CHANGE_NOTIFICATION Представляет уведомление APO об изменении звуковой среды. |
AUDIO_MICROPHONE_BOOST_APO_NOTIFICATION_DESCRIPTOR Указывает уведомление о повышении APO для микрофона конечной точки. |
AUDIO_MICROPHONE_BOOST_NOTIFICATION Представляет уведомление APO о повышении звукового микрофона. |
AUDIO_SYSTEMEFFECT Представляет звуковой эффект объекта sAPO системных эффектов. |
AUDIO_SYSTEMEFFECTS_PROPERTY_CHANGE_NOTIFICATION Представляет уведомление APO о системном звуковом эффекте. |
AUDIO_VOLUME_NOTIFICATION_DATA2 Представляет сведения о событии уведомления об изменении тома. Эта структура используется структурой AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION2. |
KSP_PINMODE Структура KSP_PINMODE указывает свойство pin и поддерживаемые режимы обработки звука для фабрики контактов. |
MDEVICECAPSEX Структура MDEVICECAPSEX содержит сведения о возможностях устройств для драйверов устройств Plug and Play (PnP). |
MIDIOPENDESC Структура MIDIOPENDESC — это структура, заполненная клиентом, которая предоставляет сведения о том, как открыть устройство MIDI. |
UNCOMPRESSEDAUDIOFORMAT Структура UNCOMPRESSEDAUDIOFORMAT определяет частоту кадров, маску канала и другие атрибуты несжатого формата аудиоданных. |
WAVEFORMATEX Структура WAVEFORMATEX определяет формат данных волнового звукового потока. |