Condividi tramite


DuckingMediaPlayer

Questa applicazione di esempio illustra l'attenuazione del flusso implementando un lettore multimediale che mostra il comportamento di attenuazione predefinito fornito dal sistema, rifiuta esplicitamente gli eventi di anatraggio e implementa la gestione personalizzata quando vengono ricevuti eventi di anatraggio. Questo esempio deve essere usato in combinazione con DuckingCaptureSample. Per altre informazioni sull'attenuazione di anatra o flusso, vedere Default Ducking Experience.For more information about ducking or stream attenuation, see Default Ducking Experience.

Questo argomento include le sezioni seguenti.

Descrizione

In questo esempio vengono illustrate le funzionalità seguenti.

  • DirectShow per riprodurre un file multimediale.
  • WASAPI per la gestione dei flussi e la gestione degli eventi di anatraggio.

Requisiti

Prodotto Versione
Windows SDK Windows 7
Visual Studio 2008

 

Download dell'esempio

Questo esempio è disponibile nelle posizioni seguenti.

Ufficio Percorso/URL
Windows SDK \Programmi\Microsoft SDKs\Windows\v7.0\Samples\Multimedia\Audio\DuckingMediaPlayer\...

 

Compilazione dell'esempio

Per compilare l'esempio DuckingMediaPlayer, seguire questa procedura:

  1. Aprire il DuckingMediaPlayer.sln in Visual Studio 2008.
  2. Nella finestra selezionare la configurazione della soluzione Debug o Rilascio , selezionare il menu Compila dalla barra dei menu e selezionare l'opzione Compila . Se Visual Studio non viene aperto dalla shell CMD per l'SDK, Visual Studio non avrà accesso all'ambiente di compilazione DELL'SDK. In tal caso, l'esempio non verrà compilato a meno che non si imposti in modo esplicito la variabile di ambiente MSSdk, che viene usata nel file di progetto DuckingMediaPlayer.vcproj.

Esecuzione dell'esempio

Se si compila correttamente l'applicazione, viene generato un file eseguibile DuckingMediaPlayer.exe. Per eseguirlo, selezionare Avvia debug o Avvia senza eseguire debug dal menu Debug o digitare DuckingMediaPlayer in una finestra di comando.

Per visualizzare una dimostrazione di anatraggio, è necessario eseguire DuckingMediaPlayer e DuckingCaptureSample contemporaneamente. DuckingCaptureSample apre un flusso di comunicazione e segnala al sistema di generare un evento di anatraggio. DuckingMediaPlayer viene informato dal sistema quando si verifica un evento di anatraggio e il lettore multimediale esegue l'azione richiesta dall'utente.

Per disabilitare il comportamento di anatraggio:

  1. Nella finestra DuckingCaptureSample selezionare Usa dispositivo di input predefinito e fare clic su Avvia per avviare una sessione di acquisizione dal dispositivo di comunicazione.
  2. In DuckingMediaPlayer selezionare un file multimediale da riprodurre e specificare l'opzione Anatra come Rifiutare esplicitamente Ducking.

Si noti che il file multimediale viene riprodotto senza interruzioni. Gli eventi generati dal sistema quando il flusso di comunicazione aperto vengono ignorati.

Per illustrare il comportamento predefinito di anatraggio fornito dal sistema, eseguire le operazioni seguenti:

  1. Selezionare l'opzione Suoni nel pannello di controllo. Nella scheda Comunicazioni selezionare Riduci il volume di altri suoni dell'80%.
  2. Nella finestra DuckingCaptureSample selezionare Usa dispositivo di input predefinito e fare clic su Avvia per avviare una sessione di acquisizione dal dispositivo di comunicazione.
  3. In DuckingMediaPlayer selezionare un file multimediale da riprodurre, senza scegliere alcuna delle opzioni di anatraggio.
  4. Nella finestra DuckingCaptureSample fare clic su Arresta per arrestare il flusso di comunicazione.

Si noti che quando DuckingCaptureSample apre il flusso di comunicazione, il file multimediale riprodotto da DuckingMediaPlayer viene riprodotto senza interruzioni, ma il livello del volume viene abbassato. Quando la sessione di comunicazione viene arrestata, il volume viene reimpostato sull'impostazione originale. Questo comportamento di attenuazione del flusso è il comportamento predefinito di anatraggio implementato dal sistema.

Per visualizzare un comportamento personalizzato di anatraggio implementato dal lettore multimediale:

  1. Nella finestra DuckingCaptureSample selezionare Usa dispositivo di input predefinito e fare clic su Avvia per avviare una sessione di acquisizione dal dispositivo di comunicazione.
  2. In DuckingMediaPlayer selezionare un file multimediale da riprodurre e specificare l'opzione di anatraggio come Sospendi su Duck.
  3. Nella finestra DuckingCaptureSample fare clic su Arresta per arrestare il flusso di comunicazione.

Si noti che quando DuckingCaptureSample apre il flusso di comunicazione, il file multimediale riprodotto da DuckingMediaPlayer viene sospeso. La riproduzione riprende quando la sessione di comunicazione viene arrestata. Questo comportamento di attenuazione del flusso è il comportamento di anatraggio implementato dal lettore multimediale.

DuckingMediaPlayer illustra anche come integrare il controllo del volume per ogni applicazione con il mixer del volume.

Per altre informazioni sulla funzionalità di attenuazione del flusso, vedere Default Ducking Experience.For more information about the stream attenuation feature, see Default Ducking Experience.

Esempi di SDK che usano le API audio principali