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