Platform SDK: DirectX

DirectSound.DuplicateSoundBuffer

DirectSound.DuplicateSoundBuffer メソッドは、新しい DirectSoundBuffer オブジェクトを作成する。このオブジェクトは、オリジナルのオブジェクトと同じバッファ メモリを使う。

object.DuplicateSoundBuffer( _
    original As DirectSoundBuffer) _
    As DirectSoundBuffer

パラメータ

object
DirectSound オブジェクトを表すオブジェクト式。
original
複製する DirectSoundBuffer オブジェクト。

戻り値

成功すれば DirectSoundBuffer を返す。

エラー コード

失敗すればエラーが発生し、Err.Number に次のいずれかのエラー コードが設定される。

DSERR_ALLOCATED
DSERR_INVALIDCALL
DSERR_OUTOFMEMORY
DSERR_UNINITIALIZED

注意

新しいオブジェクトはオリジナルのオブジェクトと同じ方法で使用できる。

複製直後のバッファは、オリジナル バッファと同じパラメータを持つ。ただし、アプリケーションは各バッファのパラメータを個別に変更でき、各バッファは互いに影響を及ぼすことなく再生と停止を行える。

どちらかのオブジェクトがバッファ内のデータを変更すると、バッファ メモリが共有されているため、通常その変更はもう一方のオブジェクトにも反映される。ただし、いくつかの環境では複製バッファが固有のメモリを保持するため、この動作をあてにすべきではない。

後に残った参照側オブジェクトが解放されると、バッファ メモリは解放される。

アプリケーションは、サウンド バッファの複製作業が成功するとは想定できない。特に、DirectSound はハードウェア バッファのソフトウェア複製を作成できない。

参照

DirectSound.CreateSoundBufferDirectSound.CreateSoundBufferFromFileDirectSound.CreateSoundBufferFromResource