如何:更改语音音量

本主题介绍如何在整体级别、每个输出通道或语音的每个声道与其 发送列表中的另一个语音之间更改语音的音量。

设置语音输入的总体音量级别

  • 使用 SetVolume 函数。

    pSourceVoice->SetVolume(1.0);
    

设置语音输出声道的音量

  1. 创建一个浮点数字数组,其中包含语音中所有输出通道的所需音量。

    该数组将为语音中的每个通道提供一个条目。

    float SourceVoiceChannelVolumes[1] = {1.0};
    
  2. 使用 SetChannelVolumes 函数设置输出通道的音量。

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

设置连接量

在其 发送列表中设置语音与语音之间的连接音量。

  1. 创建一个浮点数数组,该数组定义输出矩阵(如果语音发送到另一个语音)。

    注意

    数组的条目数必须等于源语音通道×目标语音通道。 在此示例中,映射从具有一个声道的语音到具有两个声道的语音。

     

    float outputMatrix[2] = {1.0f,0.05f};
    
  2. 使用 SetOutputMatrix 函数设置输出矩阵。

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

XAudio2 编程指南

如何:构建基本的音频处理图

XAudio2 音量和音调控制