Partilhar via


Como: Criar um gráfico de processamento de áudio básico

O requisito mínimo para permitir que o XAudio2 reproduza dados de áudio é um gráfico de processamento de áudio, que é construído a partir de uma única voz de masterização e uma única voz de fonte.

Para criar um gráfico básico de processamento de áudio

  1. Inicialize o mecanismo XAudio2 seguindo as etapas descritas em Como: Inicializar XAudio2.

  2. Preencha as estruturas WAVEFORMATEX e XAUDIO2_BUFFER seguindo as etapas descritas em Como: Carregar ficheiros de dados de áudio no XAudio2.

  3. Crie uma voz de origem usando a função CreateSourceVoice.

    Quando você especifica NULL para o argumento pSendList de CreateSourceVoice, a saída da voz de origem vai para a voz de masterização criada na etapa 1.

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

    Depois de concluir esta etapa, há um gráfico de áudio simples que consiste na voz de origem, na voz de masterização e no dispositivo de áudio. As etapas restantes neste tópico de instruções mostram como iniciar o fluxo de dados de áudio através do gráfico.

    Um gráfico de áudio simples

    um gráfico de áudio simples.

  4. Use a função SubmitSourceBuffer para enviar um XAUDIO2_BUFFER para a voz de origem.

    if( FAILED(hr = pSourceVoice->SubmitSourceBuffer( &buffer ) ) )
        return hr;
    
  5. Use a função Iniciar para iniciar a voz de origem.

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

Gráficos de áudio

Guia de Programação XAudio2