Partager via


DuckingMediaPlayer

Cet exemple d’application illustre l’atténuation des flux en implémentant un lecteur multimédia qui affiche le comportement d’atténuation par défaut fourni par le système, refuse les événements de canardage et implémente une gestion personnalisée lors de la réception d’événements de canardage. Cet exemple doit être utilisé en conjuction avec DuckingCaptureSample. Pour plus d’informations sur le canardage ou l’atténuation de flux, consultez Expérience de canardage par défaut.

Cette rubrique contient les sections suivantes.

Description

Cet exemple illustre les fonctionnalités suivantes.

  • DirectShow pour lire un fichier multimédia.
  • WASAPI pour la gestion des flux et la gestion des événements de canardage.

Spécifications

Produit Version
SDK Windows Windows 7
Visual Studio 2008

 

Téléchargement de l’exemple

Cet exemple est disponible aux emplacements suivants.

Emplacement Chemin/URL
Kit de développement logiciel (SDK) Windows \Program Files\Microsoft SDK\Windows\v7.0\Samples\Multimedia\Audio\DuckingMediaPlayer\...

 

Génération de l'exemple

Pour générer l’exemple DuckingMediaPlayer, procédez comme suit :

  1. Ouvrez DuckingMediaPlayer.sln dans Visual Studio 2008.
  2. Dans la fenêtre, sélectionnez la configuration de la solution Déboguer ou Libérer , sélectionnez le menu Générer dans la barre de menus, puis sélectionnez l’option Générer . Si vous n’ouvrez pas Visual Studio à partir de l’interpréteur de commandes CMD pour le Kit de développement logiciel (SDK), Visual Studio n’aura pas accès à l’environnement de génération du KIT de développement logiciel (SDK). Dans ce cas, l’exemple ne sera généré que si vous définissez explicitement la variable d’environnement MSSdk, qui est utilisée dans le fichier projet, DuckingMediaPlayer.vcproj.

Exécution de l'exemple

Si vous générez l’application avec succès, un fichier exécutable, DuckingMediaPlayer.exe, est généré. Pour l’exécuter, sélectionnez Démarrer le débogage ou Démarrer sans débogage dans le menu Déboguer ou tapez DuckingMediaPlayer dans une fenêtre de commande.

Pour afficher une démonstration de ducking, vous devez exécuter DuckingMediaPlayer et DuckingCaptureSample simultanément. DuckingCaptureSample ouvre un flux de communication et signale au système de générer un événement de canardage. DuckingMediaPlayer est averti par le système lorsqu’un événement de canardage se produit et que le lecteur multimédia effectue l’action demandée par l’utilisateur.

Pour désactiver le comportement de canardage :

  1. Dans la fenêtre DuckingCaptureSample, sélectionnez Utiliser le périphérique d’entrée par défaut, puis cliquez sur Démarrer pour démarrer une session de capture à partir de l’appareil de communication.
  2. Dans DuckingMediaPlayer, sélectionnez un fichier multimédia à lire, puis spécifiez l’option de mise à l’ardeur en tant que Désactiver l’utilisation de Ducking.

Notez que le fichier multimédia est lu sans interruption. Les événements générés par le système lors de l’ouverture du flux de communication sont ignorés.

Pour illustrer le comportement de canardage par défaut fourni par le système, procédez comme suit :

  1. Sélectionnez l’option Sons dans le panneau de configuration. Sous l’onglet Communications, sélectionnez Réduire le volume d’autres sons de 80 %.
  2. Dans la fenêtre DuckingCaptureSample, sélectionnez Utiliser le périphérique d’entrée par défaut, puis cliquez sur Démarrer pour démarrer une session de capture à partir de l’appareil de communication.
  3. Dans DuckingMediaPlayer, sélectionnez un fichier multimédia à lire, sans choisir l’une des options de canardage.
  4. Dans la fenêtre DuckingCaptureSample, cliquez sur Arrêter pour arrêter le flux de communication.

Notez que lorsque DuckingCaptureSample ouvre le flux de communication, le fichier multimédia lu par DuckingMediaPlayer est lu sans interruption, mais le niveau de volume est abaissé. Lorsque la session de communication est arrêtée, le volume est réinitialisé au paramètre d’origine. Ce comportement d’atténuation de flux est le comportement de canardage par défaut implémenté par le système.

Pour afficher un comportement de canardage personnalisé implémenté par le lecteur multimédia :

  1. Dans la fenêtre DuckingCaptureSample, sélectionnez Utiliser le périphérique d’entrée par défaut, puis cliquez sur Démarrer pour démarrer une session de capture à partir de l’appareil de communication.
  2. Dans DuckingMediaPlayer, sélectionnez un fichier multimédia à lire, puis spécifiez l’option de mise à l’échelle en tant que Pause sur Duck.
  3. Dans la fenêtre DuckingCaptureSample, cliquez sur Arrêter pour arrêter le flux de communication.

Notez que lorsque DuckingCaptureSample ouvre le flux de communication, le fichier multimédia lu par DuckingMediaPlayer est suspendu. La lecture reprend lorsque la session de communication est arrêtée. Ce comportement d’atténuation de flux est le comportement de canardage implémenté par le lecteur multimédia.

DuckingMediaPlayer montre également comment intégrer le contrôle de volume pour chaque application avec le mélangeur de volumes.

Pour plus d’informations sur la fonctionnalité d’atténuation de flux, consultez Expérience de canardage par défaut.

Exemples sdk qui utilisent les API audio de base