Nouveautés des API Audio de base dans Windows 7
Les API Audio de base ont été introduites dans Windows Vista, qui a fourni un nouvel ensemble de composants audio en mode utilisateur qu’une application cliente peut utiliser pour afficher ou capturer des flux audio avec des fonctionnalités audio améliorées. Pour obtenir une vue d’ensemble générale de cet ensemble d’API, consultez À propos des API Audio Windows Core.
Les API Audio de base ont été améliorées dans Windows 7. Le tableau suivant récapitule les nouvelles fonctionnalités et les améliorations apportées aux API Audio de base :
Fonctionnalité | Description |
---|---|
Améliorations génériques | Les fonctionnalités suivantes ont été améliorées dans Windows 7 :
|
Appareil de communication (Nouveau) | Dans cette version, un nouveau type d’appareil a été ajouté au panneau de configuration Sons : Périphérique de communication . Cet appareil est principalement utilisé pour les communications, c’est-à-dire pour passer ou recevoir des appels téléphoniques sur l’ordinateur. Une application de communication peut utiliser les composants Core Audio pour obtenir une référence au point de terminaison du périphérique de communication par défaut et restituer des flux audio à des fins de communication. Le système d’exploitation considère que le flux ouvert sur un appareil de communication est un flux de communication. Les opérations WASAPI sur un flux de communication sont similaires à tout autre flux audio. Pour plus d’informations, consultez Utilisation des rôles d’appareil. |
Atténuation de flux ou canardage audio (Nouveau) | Le canardage automatique ou atténuation de flux est une nouvelle fonctionnalité de Windows 7 destinée aux applications VoIP et communication unifiée. Par défaut, le système d’exploitation réduit l’intensité d’un flux audio lorsqu’un flux de communication, tel qu’un appel téléphonique, est reçu sur l’appareil de communication via l’ordinateur. Les options de volume sont définies par l’utilisateur dans le panneau de configuration Son . De nouvelles API ont été ajoutées dans le Kit de développement logiciel (SDK) Windows, qui permettent aux applications de remplacer le comportement de mise à l’ardage par défaut. Pour plus d’informations sur l’implémentation d’une fonctionnalité de canardage personnalisé, consultez Fournir un comportement de canardage personnalisé. |
Routage de flux (Nouveau) | Dans Windows 7, les API Audio de base ont été améliorées pour transférer en toute transparence un flux audio d’un appareil existant vers un nouveau point de terminaison audio par défaut. Les ensembles d’API audio de haut niveau qui utilisent les API Audio de base, telles que Media Foundation, DirectSound et LES API WAVE, implémentent la fonctionnalité de routage de flux. Les applications multimédias qui utilisent ces jeux d’API pour lire ou capturer un flux utilisent l’implémentation par défaut et n’ont pas besoin de modifier l’application. Toutefois, si votre application multimédia utilise directement les API Core Audio, l’application doit fournir l’implémentation du routage de flux. Pour ce faire, l’application doit gérer les nouveaux événements ajoutés qui informent un client WASAPI lorsque l’appareil par défaut est connecté ou supprimé. Pour plus d’informations sur cette fonctionnalité, consultez Routage de flux. |
PuMA (Protected User Mode Audio) (amélioré) | PUMA a été mis à jour pour Windows 7 afin de fournir les fonctionnalités suivantes :
|
La structure WAVEFORMATEXTENSIBLE a été étendue à la structure WAVEFORMATEXTENSIBLE_IEC61937 (Nouveau) | Dans Windows 7, une nouvelle structure a été ajoutée pour prendre en charge les transmissions IEC 61937.
WAVEFORMATEXTENSIBLE_IEC61937 étend la structure WAVEFORMATEXTENSIBLE pour stocker deux ensembles de caractéristiques de flux audio : le format audio encodé avant la transmission et les caractéristiques du flux audio après son décodage. La nouvelle structure spécifie explicitement le nombre effectif de canaux, la taille de l’échantillon et le débit de données d’un format non PCM. Avec ces informations, une application peut déduire le niveau de qualité du flux non-PCM après avoir été décompressé et lu. Pour plus d’informations, consultez Représentation des formats pour les transmissions IEC 61937. |
IAudioClient::Initialize (amélioré) | La méthode IAudioClient::Initialize a été améliorée pour indiquer des erreurs spécifiques qui peuvent se produire lors de l’ouverture d’un flux audio. Les nouveaux codes d’erreur sont les suivants :
|
IAudioCaptureClient::GetBuffer et IAudioRenderClient::GetBuffer (amélioré) | Les méthodes IAudioCaptureClient::GetBuffer et IAudioRenderClient::GetBuffer ont été améliorées pour renvoyer le code d’erreur AUDCLNT_E_BUFFER_ERROR qui indique que la mémoire tampon du point de terminaison en mode exclusif n’a pas été récupérée. Pour plus d’informations, consultez Remarques dans IAudioCaptureClient::GetBuffer et IAudioRenderClient::GetBuffer. |
Fonctionnalité de détection jack (améliorée) | Une nouvelle interface dans Windows 7, IKsJackDescription2, étend IKsJackDescription. En utilisant la nouvelle interface, la pile audio ou une application peut obtenir des informations jack supplémentaires. Cela inclut la capacité de détection de la prise jack et si le format de l’appareil a changé dynamiquement. |
Exemples Windows (Nouveau) | De nouveaux exemples ont été ajoutés au Kit de développement logiciel (SDK) Windows qui illustrent l’utilisation des API Audio de base. Pour plus d’informations, consultez Exemples sdk qui utilisent les API audio principales. |
Nouvelles interfaces principales
Les interfaces suivantes sont nouvelles pour Windows 7 :
- IAudioClock2
- IAudioClockAdjustment
- IAudioEndpointVolumeEx
- IAudioSessionManager2
- IAudioSessionControl2
- IAudioSessionEnumerator
- IAudioSessionNotification
- IAudioVolumeDuckNotification
- IKsJackDescription2
- IKsJackSinkInformation
Rubriques connexes