Share via


Effets de capture DirectSound

DirectSound 8 ajoute de nouvelles fonctionnalités pour activer et contrôler les effets tiers lors de la capture audio. Cette version et les versions ultérieures de DirectSound prennent en charge les deux effets de capture suivants :

  • Annulation d’écho acoustique (AEC)

  • Suppression du bruit (NS)

Dans une application audio full-duplex telle que la conférence téléphonique, les échos du flux de rendu en cours de sortie via les haut-parleurs sont récupérés dans le microphone qui génère le flux de capture. Après avoir caractériser les réflexions sonores dans la pièce ou dans un autre environnement physique, le système en duplex intégral utilise AEC pour surveiller le flux de rendu afin d’annuler les échos qu’il ajoute au flux de capture. Le système peut encore améliorer la qualité du flux de capture en utilisant NS pour détecter les pics de bruit et les supprimer du flux.

Une application DirectSound en duplex intégral peut utiliser les interfaces IDirectSoundCaptureFXAec et IDirectSoundCaptureFXNoiseSuppress pour contrôler les effets AEC et NS. La méthode IDirectSoundCaptureBuffer::GetObjectInPath récupère les pointeurs vers des objets avec ces interfaces. La fonction DirectSoundFullDuplexCreate crée l’objet IDirectSoundCaptureBuffer , et les paramètres que l’appelant passe à cette fonction incluent un tableau de structures DSCEFFECTDESC. Le tableau spécifie les effets à activer dans la mémoire tampon de capture. Le membre guidDSCFXClass de chaque structure du tableau contient un GUID qui spécifie un effet : AEC ou NS. Le nom DirectSound de chaque GUID est indiqué dans le tableau suivant, ainsi que le nom KS de la même valeur GUID. Pour plus d’informations, consultez la documentation du Kit de développement logiciel (SDK) DirectX 8.0.

Nom du GUID DirectSound Nom du GUID KS

GUID_DSCFX_CLASS_AEC

KSNODETYPE_ACOUSTIC_ECHO_CANCEL

GUID_DSCFX_CLASS_NS

KSNODETYPE_NOISE_SUPPRESS

Dans Microsoft Windows XP et versions ultérieures, vous pouvez exposer les effets de capture accélérée matérielle de votre périphérique audio aux applications DirectSound. En outre, le filtre système AEC (Aec.sys) fournit l’émulation logicielle des effets AEC et NS.

Ces rubriques sont traitées dans le reste de cette section :

Exposition des effets de capture Hardware-Accelerated

Filtre système AEC