Procedura: Creare un grafico di elaborazione audio di base

Il requisito minimo per abilitare XAudio2 per riprodurre dati audio è un grafico di elaborazione audio, che viene costruito da una singola voce mastering e da una singola voce di origine.

Per creare un grafico di elaborazione audio di base

  1. Inizializzare il motore XAudio2 seguendo i passaggi descritti in Procedura: Inizializzare XAudio2.

  2. Popolare una struttura WAVEFORMATEX e XAUDIO2_BUFFER seguendo i passaggi descritti in Procedura: Caricare file di dati audio in XAudio2.

  3. Creare una voce di origine usando la funzione CreateSourceVoice .

    Quando si specifica NULL per l'argomento pSendList di CreateSourceVoice, l'output della voce di origine passa alla voce mastering creata nel passaggio 1.

    IXAudio2SourceVoice* pSourceVoice;
    if( FAILED(hr = pXAudio2->CreateSourceVoice( &pSourceVoice, (WAVEFORMATEX*)&wfx,
                  0, XAUDIO2_DEFAULT_FREQ_RATIO, NULL, NULL, NULL ) ) ) return hr;
    

    Al termine di questo passaggio, esiste un semplice grafico audio costituito dalla voce di origine, dalla voce mastering e dal dispositivo audio. I passaggi rimanenti in questo argomento illustrano come avviare il flusso dei dati audio tramite il grafico.

    Un semplice grafico audio

    un semplice grafico audio.

  4. Usare la funzione SubmitSourceBuffer per inviare un XAUDIO2_BUFFER alla voce di origine.

    if( FAILED(hr = pSourceVoice->SubmitSourceBuffer( &buffer ) ) )
        return hr;
    
  5. Usare la funzione Start per avviare la voce di origine.

    if ( FAILED(hr = pSourceVoice->Start( 0, XAUDIO2_COMMIT_NOW ) ) )
        return hr;
    

Grafici audio

Guida alla programmazione di XAudio2