Compartir a través de


DuckingMediaPlayer

En esta aplicación de ejemplo se muestra la atenuación de secuencias mediante la implementación de un reproductor multimedia que muestra el comportamiento de atenuación predeterminado proporcionado por el sistema, no participar en eventos de pato e implementar un control personalizado cuando se reciben eventos de pato. Este ejemplo se debe usar en conjuction con DuckingCaptureSample. Para obtener más información sobre la atenuación de patos o secuencias, consulte Default Ducking Experience.

En este tema se incluyen las siguientes secciones.

Descripción

En este ejemplo se muestran las siguientes características.

  • DirectShow to play a media file.
  • WASAPI para la administración de flujos y el control de eventos de pato.

Requisitos

Producto Versión
Windows SDK Windows 7
Visual Studio 2008

 

Descarga del ejemplo

Este ejemplo está disponible en las siguientes ubicaciones.

Location Ruta de acceso y dirección URL
Windows SDK \Archivos de programa\Microsoft SDKs\Windows\v7.0\Samples\Multimedia\Audio\DuckingMediaPlayer\...

 

Generar el ejemplo

Para compilar el ejemplo DuckingMediaPlayer, siga estos pasos:

  1. Abra DuckingMediaPlayer.sln en Visual Studio 2008.
  2. En la ventana, seleccione la configuración de la solución Depurar o Liberar , seleccione el menú Compilar en la barra de menús y seleccione la opción Compilar . Si no abre Visual Studio desde el shell de CMD para el SDK, Visual Studio no tendrá acceso al entorno de compilación del SDK. En ese caso, el ejemplo no se compilará a menos que establezca explícitamente la variable de entorno MSSdk, que se usa en el archivo del proyecto, DuckingMediaPlayer.vcproj.

Ejecutar el ejemplo

Si compila correctamente la aplicación, se genera un archivo ejecutable, DuckingMediaPlayer.exe. Para ejecutarla, seleccione Iniciar depuración o Iniciar sin depurar en el menú Depurar o escriba DuckingMediaPlayer en una ventana de comandos.

Para ver una demostración de pato, debe ejecutar DuckingMediaPlayer y DuckingCaptureSample simultáneamente. DuckingCaptureSample abre un flujo de comunicación y señala al sistema para generar un evento de pato. El sistema notifica a DuckingMediaPlayer cuando se produce un evento de pato y el reproductor multimedia realiza la acción solicitada por el usuario.

Para deshabilitar el comportamiento de pato:

  1. En la ventana DuckingCaptureSample, seleccione Usar dispositivo de entrada predeterminado y haga clic en Iniciar para iniciar una sesión de captura desde el dispositivo de comunicación.
  2. En DuckingMediaPlayer, seleccione un archivo multimedia para reproducir y especifique la opción de pato como No participar en Ducking.

Observe que el archivo multimedia se reproduce sin ninguna interrupción. Los eventos generados por el sistema cuando se omite la secuencia de comunicación abierta.

Para demostrar el comportamiento de pato predeterminado proporcionado por el sistema, haga lo siguiente:

  1. Seleccione la opción Sonidos en el panel de control. En la pestaña Comunicaciones , seleccione Reducir el volumen de otros sonidos en un 80 %.
  2. En la ventana DuckingCaptureSample, seleccione Usar dispositivo de entrada predeterminado y haga clic en Iniciar para iniciar una sesión de captura desde el dispositivo de comunicación.
  3. En DuckingMediaPlayer, seleccione un archivo multimedia para reproducir, sin elegir ninguna de las opciones de pato.
  4. En la ventana DuckingCaptureSample, haga clic en Detener para detener la secuencia de comunicación.

Observe que cuando DuckingCaptureSample abre la secuencia de comunicación, el archivo multimedia reproducido por DuckingMediaPlayer se reproduce sin interrupción, pero el nivel de volumen se reduce. Cuando se detiene la sesión de comunicación, el volumen se restablece a la configuración original. Este comportamiento de atenuación de flujo es el comportamiento de pato predeterminado implementado por el sistema.

Para ver un comportamiento de pato personalizado implementado por el reproductor multimedia:

  1. En la ventana DuckingCaptureSample, seleccione Usar dispositivo de entrada predeterminado y haga clic en Iniciar para iniciar una sesión de captura desde el dispositivo de comunicación.
  2. En DuckingMediaPlayer, seleccione un archivo multimedia para reproducir y especifique la opción de pato como Pausar en Duck.
  3. En la ventana DuckingCaptureSample, haga clic en Detener para detener la secuencia de comunicación.

Observe que cuando DuckingCaptureSample abre la secuencia de comunicación, el archivo multimedia reproducido por DuckingMediaPlayer está en pausa. La reproducción se reanuda cuando se detiene la sesión de comunicación. Este comportamiento de atenuación de secuencia es el comportamiento de pato implementado por el reproductor multimedia.

DuckingMediaPlayer también muestra cómo integrar el control de volumen para cada aplicación con el mezclador de volúmenes.

Para obtener más información sobre la característica de atenuación de flujo, consulte Default Ducking Experience.

Ejemplos del SDK que usan las API de audio principal