Интерфейс 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