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