Partager via


Effets de capture DirectSound

DirectSound 8 ajoute certaines nouvelles fonctionnalités permettant d’activer et de contrôler les effets tiers pendant la capture audio. Ces versions et ultérieures de DirectSound prennent en charge les deux effets de capture suivants :

  • Annulation de l’écho acoustique (AEC)

  • Suppression du bruit (NS)

Dans une application audio duplex complète, 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 salle ou dans un autre environnement physique, le système duplex complet utilise AEC pour surveiller le flux de rendu afin d’annuler les échos qu’il ajoute au flux de capture. Le système peut améliorer davantage la qualité du flux de capture à l’aide de NS pour détecter les pics de bruit et les retirer du flux.

Une application DirectSound en mode 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 des 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 pour chaque GUID est indiqué dans le tableau suivant, ainsi que le nom KS pour 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 KS GUID

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ération matérielle de votre appareil 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 abordées dans le reste de cette section :

Exposition des effets de capture Hardware-Accelerated

Filtre système AEC