Platform SDK: DirectX

プライマリ バッファの連続再生

[C++]

サウンドが再生されていない場合、DirectSound はミキサー エンジンを停止し、DMA (ダイレクト メモリ アクセス) を停止させる。再生なしの状態が頻繁に発生するアプリケーションでは、サウンドを再生するたびにミキサーの開始と停止を行う場合のオーバーヘッドは、ミキサーを常時アクティブにする場合の DMA のオーバーヘッドより大きくなることがある。また、サウンド機器やドライバによっては、再生の頻繁な開始と停止により不要な雑音を出すこともある。アプリケーションがほぼ連続的に再生を行い、休止時間が少ない場合は、プライマリ バッファに対して IDirectSoundBuffer::Play メソッドを呼び出し、ミキサー エンジンを常時アクティブにもできる。ミキサーは音を出さずに連続運転する。

サウンドの再生がないときにミキサー エンジンを停止するデフォルトの状態に戻すには、プライマリ バッファに対して IDirectSoundBuffer::Stop メソッドを呼び出す。

[Visual Basic]

サウンドが再生されていない場合、DirectSound はミキサー エンジンを停止し、DMA (ダイレクト メモリ アクセス) を停止させる。再生なしの状態が頻繁に発生するアプリケーションでは、サウンドを再生するたびにミキサーの開始と停止を行う場合のオーバーヘッドは、ミキサーを常時アクティブにする場合の DMA のオーバーヘッドより大きくなることがある。また、サウンド機器やドライバによっては、再生の頻繁な開始と停止により不要な雑音を出すこともある。アプリケーションがほぼ連続的に再生を行い、休止時間が少ない場合は、プライマリ バッファに対して DirectSoundBuffer.Play メソッドを呼び出し、ミキサー エンジンを常時アクティブにもできる。ミキサーは音を出さずに連続運転する。

サウンドの再生がないときにミキサー エンジンを停止するデフォルトの状態に戻すには、プライマリ バッファに対して DirectSoundBuffer.Stop メソッドを呼び出す。

詳細については、「プライマリ バッファへのアクセス」を参照すること。