ハードウェア ミキシングの利用
ほとんどのサウンドカードは、対応する DirectSound ドライバが存在すれば、何らかのレベルのハードウェア ミキシングをサポートする。次のヒントは、ハードウェア ミキシングをできるだけ利用するのに役立つ。
- 実行時に DirectSound8.GetCaps メソッドを呼び出して、サウンドアクセラレータ ハードウェアがサポートしているフォーマットを確認し、できる限りそのフォーマットを使う。
- 最も利用の多いサウンドのサウンド バッファを最初に作成する。ハードウェアでミキシングできるバッファ数には限度がある。
- バッファをハードウェアに必ず作成するには、DSBUFFERDESC 型の lFlags メンバに DSBCAPS_LOCHARDWARE フラグを指定する。このフラグを指定し、ハードウェア ミキシングに対するリソースが利用できない場合は、DirectSound8.CreateSoundBuffer メソッドは失敗する。
- ボイス管理を使って、ハードウェア リソースが利用可能なときにバッファをリソースに割り当てたり、あまり重要でないバッファを強制終了させてハードウェア リソースを解放できるようにする。「ダイナミック ボイス管理」を参照すること。