Share via


IApoAcousticEchoCancellation-Schnittstelle (audioenginebaseapo.h)

Diese Schnittstelle wird von APOs implementiert, um AEC-Szenarien (Acoustic Echo Cancellation) zu ermöglichen.

Vererbung

Die IApoAcousticEchoCancellation-Schnittstelle erbt von der IUnknown-Schnittstelle.

Hinweise

Diese Schnittstelle kann nur durch Moduseffekte (MFX) auf Erfassungsendpunkten implementiert werden. Die Implementierung dieser Schnittstelle auf einem anderen APO führt zu einem Fehler beim Laden dieses APO. Wenn der Moduseffekt auf einen Erfassungsendpunkt als eine Reihe verketteter APOs implementiert wird, kann diese Schnittstelle nur von der apo implementiert werden, die dem Gerät am nächsten ist.

Die IApoAcousticEchoCancellation-Schnittstelle verfügt über keine expliziten Methoden. Ihr Zweck besteht darin, eine AEC APO für die Audio-Engine zu identifizieren. APOs, die diese Schnittstelle implementieren, werden in ihrem Aufruf von IAudioProcessingObjectRT::APOProcess eine APO_CONNECTION_PROPERTY_V2-Struktur übergeben. APO_CONNECTION_PROPERTY_V2 stellt einen Zeitstempel bereit, damit der APO Puffer aus dem primären und dem Hilfsdatenstrom synchronisieren kann. Wenn das u32Signature-Feld der anIAudioProcessingObjectRT::APOProcess übergebenen APO_CONNECTION_PROPERTY-Struktur gleich APO_CONNECTION_PROPERTY_V2_SIGNATURE ist, kann die Struktur sicher in eine APO_CONNECTION_PROPERTY_V2 umgewandelt werden.

Da AEC-Algorithmen in der Regel bestimmte Samplingraten und Kanalanzahlen erfordern, bietet die Audio-Engine Unterstützung für Die Erneutesampling für APOs, die die IApoAcousticEchoCancellation-Schnittstelle implementieren. Die IApoAuxiliaryInputConfiguration::IsInputFormatSupported-Methode stellt einen Mechanismus bereit, um das System über das bevorzugte Eingabeformat des APO zu informieren, indem die HRESULT-APOERR_FORMAT_NOT_SUPPORTED zurückgegeben wird. und zurückgeben das angeforderte Format im ppSupportedInputFormat-Parameter der Methode. Die Audio-Engine setzt dann die Eingabeaudio in das vorgeschlagene Format neu, bevor sie an den AEC APO gesendet wird. Dadurch entfällt die Notwendigkeit, dass der AEC APO Samplingrate und Kanalanzahlkonvertierung implementieren muss.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10 Build 20348
Kopfzeile audioenginebaseapo.h

Weitere Informationen

APO_CONNECTION_PROPERTY_V2IAudioProcessingObjectRT::APOProcessIAudioProcessingObject::IsInputFormatSupported