Microsoft DirectX 8.0 (C++)

DMUS_APATH_SHARED_STEREOPLUSREVERB

リバーブおよびステレオ タイプのバッファを設定する。

ステレオ バッファは複数のオーディオパスで共有される。これはシンクイン バッファで、ほかのバッファからではなく、シンセサイザから直接データを受け取る。

アプリケーションは、dwStage を DMUS_PATH_BUFFER に、dwBuffer を 0 に設定して GetObjectInPath メソッドのいずれかを呼び出すことによって、ステレオ バッファへのインターフェイスを取得できる。

リバーブ バッファも共有シンクイン バッファである。ステレオ バッファとは異なり、シンセサイザからのモノラル入力を受け取り、データをステレオ フォーマットに変換する。

アプリケーションは、dwStage を DMUS_PATH_BUFFER に、dwBuffer を 1 に設定して GetObjectInPath メソッドのいずれかを呼び出すことによって、リバーブ バッファへのインターフェイスを取得できる。

次のサンプル コードは、デフォルトの DMUS_APATH_SHARED_STEREOPLUSREVERB オーディオパス上にあるリバーブ バッファ内の DMO への IDirectSoundFXWavesReverb8 インターフェイスを取得する。g_pPerfIDirectMusicPerformance8インターフェイスである。

IDirectMusicAudioPath8 * pAudioPath;
IDirectSoundFXWavesReverb8 * pEffectDMO;
HRESULT hr;
 
hr = g_pPerf->GetDefaultAudioPath(&pAudioPath);
if (SUCCEEDED(hr))
{
  HRESULT hr = pAudioPath->GetObjectInPath(DMUS_PCHANNEL_ALL,
        DMUS_PATH_BUFFER_DMO, 1,
        GUID_All_Objects, 0, IID_IDirectSoundFXWavesReverb8,
        (LPVOID*) &pEffectDMO);
}