Интерфейс IApoAcousticEchoCancellation (audioenginebaseapo.h)

Этот интерфейс реализуется apos для реализации сценариев подавления акустического эха (AEC).

Наследование

Интерфейс IApoAcousticEchoCancellation наследуется от интерфейса IUnknown.

Комментарии

Этот интерфейс может быть реализован только с помощью эффектов режима (MFX) на конечных точках отслеживания. Реализация этого интерфейса в любом другом APO приведет к сбою при загрузке этого APO. Если влияние режима на конечную точку захвата реализовано в виде ряда связанных APOs, только APO, ближайший к устройству, может реализовать этот интерфейс.

Интерфейс IApoAcousticEchoCancellation не содержит явных методов. Его целью является идентификация AEC APO в звуковом движке. APO, реализующие этот интерфейс, будут переданы APO_CONNECTION_PROPERTY_V2 структуры в вызове IAudioProcessingObjectRT::APOProcess. APO_CONNECTION_PROPERTY_V2 предоставляет метку времени, которая позволяет APO синхронизировать буферы из основного и вспомогательного потоков. Если поле u32Signature структуры APO_CONNECTION_PROPERTY , переданное в IAudioProcessingObjectRT::APOProcess , равно APO_CONNECTION_PROPERTY_V2_SIGNATURE, структура может быть безопасно передана в APO_CONNECTION_PROPERTY_V2.

Так как алгоритмы AEC обычно требуют определенной частоты выборки и количества каналов, звуковой модуль обеспечивает поддержку повторной выборки для APOs, реализующих интерфейс IApoAcousticEchoCancellation . Метод IApoAuxiliaryInputConfiguration::IsInputFormatSupported предоставляет механизм информирования системы о предпочтительном формате входных данных APO, возвращая APOERR_FORMAT_NOT_SUPPORTED HRESULT. и возвращает запрошенный формат в параметре ppSupportedInputFormat метода . Затем звуковой модуль повторно выполнит повторную выборку входного звука в предлагаемый формат перед его отправкой в AEC APO. Это устраняет необходимость в AEC APO реализовать преобразование частоты выборки и количества каналов.

Требования

Требование Значение
Минимальная версия клиента сборка Windows 10 20348
Верхняя часть audioenginebaseapo.h

См. также раздел

APO_CONNECTION_PROPERTY_V2IAudioProcessingObjectRT::APOProcessIAudioProcessingObject::IsInputFormatSupported