Condividi tramite


Procedura: Modificare il volume vocale

Questo argomento illustra come modificare il volume di una voce a livello generale, a ogni canale di output o tra ogni canale di una voce e un'altra voce nell'elenco di invio.

Per impostare un livello di volume complessivo per l'input della voce

  • Usare la funzione SetVolume .

    pSourceVoice->SetVolume(1.0);
    

Per impostare il volume dei canali di output della voce

  1. Creare una matrice di numeri a virgola mobile che contengono i volumi desiderati di tutti i canali di output nella voce.

    La matrice avrà una voce per ogni canale nella voce.

    float SourceVoiceChannelVolumes[1] = {1.0};
    
  2. Usare la funzione SetChannelVolumes per impostare il volume dei canali di output.

    hr = pSourceVoice->SetChannelVolumes(1,SourceVoiceChannelVolumes);
    

Per impostare il volume delle connessioni

Impostare il volume di connessione tra la voce e una voce nell'elenco di invio.

  1. Creare una matrice di numeri a virgola mobile che definisce una matrice di output se la voce invia a un'altra voce.

    Nota

    La matrice deve avere un numero di voci uguali ai canali vocali di origine × canali vocali di destinazione. In questo esempio, il mapping proviene da una voce con un canale a una voce con due canali.

     

    float outputMatrix[2] = {1.0f,0.05f};
    
  2. Usare la funzione SetOutputMatrix per impostare la matrice di output.

    pSourceVoice->SetOutputMatrix(pSubmixVoice,1,2,outputMatrix);
    

Guida alla programmazione di XAudio2

Procedura: Creare un grafico di elaborazione audio di base

Controllo volume e inclinazione di XAudio2