次の方法で共有


方法: サブミックス ボイスの使用

このトピックでは、同じサブミックス音声に出力を送信する音声のグループを設定する方法について説明します。 これにより、サブミックス音声を 1 回変更して、音声のグループ全体に影響を与える可能性があります。

  1. ゲームのすべての効果 音の音声 が送信されるサブミックス音声を作成します。

    IXAudio2SubmixVoice * pSFXSubmixVoice;
    pXAudio2->CreateSubmixVoice(&pSFXSubmixVoice,1,44100,0,0,0,0);
    
  2. サブミックス音声への参照を含む XAUDIO2_VOICE_SENDS 構造を作成します。

    XAUDIO2_SEND_DESCRIPTOR SFXSend = {0, pSFXSubmixVoice};
    XAUDIO2_VOICE_SENDS SFXSendList = {1, &SFXSend};
    
  3. XAUDIO2_VOICE_SENDS構造を新しいソース音声に渡します。

    IXAudio2SourceVoice* pSFXSourceVoice;
    if( FAILED(hr = pXaudio2->CreateSourceVoice( &pSFXSourceVoice, (WAVEFORMATEX*)&wfx,
        0, XAUDIO2_DEFAULT_FREQ_RATIO, pCallback, pSFXSendList, NULL ) ) )
        return hr;
    
  4. サブミックス音声を調整して、すべての効果音に変更を適用します。

    この例では、 SetVolume 関数を使用してサブミックス音声の音量を変更すると、出力されるすべての音声の音量が効果的に変更されます。

    pSFXSubmixVoice->SetVolume(0.1);
    

音声

XAudio2 プログラミング ガイド

方法: 基本的なオーディオ処理グラフの作成