Microsoft DirectX 8.0 (Visual Basic) |
DirectSound を初期化すると、DirectSound はサウンドのミキシングと出力デバイスへの送信をするために、プライマリ サウンド バッファの作成と管理を自動的に行う。
アプリケーションは、個々のサウンドの保存と再生をするために、少なくとも 1 つのセカンダリ サウンド バッファを作成しなければならない。この方法の詳細については、「セカンダリ バッファの作成」を参照すること。
セカンダリ バッファは、アプリケーションが動作している間常に持続することも、不要になったときに削除することもできる。セカンダリ バッファには、ゲーム中の効果音など繰り返し再生される 1 つのサウンドを格納したり、適宜新しいデータを記録することもできる。アプリケーションは、セカンダリ バッファに記憶されているサウンドを 1 つのイベント、または連続再生されるループ サウンドとして再生できる。サウンド ファイルのデータが非常に大きく、メモリに記憶しておくことが実用的ではない場合、データをストリームするためにセカンダリ バッファを利用できる。
バッファは、ハードウェアまたはソフトウェアのいずれかに配置できる。ハードウェア バッファはサウンド カードのプロセッサによってミキシングされ、ソフトウェア バッファは CPU によってミキシングされる。ソフトウェア バッファのデータは常にシステム メモリに置かれる。ハードウェア バッファのデータはシステム メモリに置くことも、アプリケーションが要求し、リソースが使用可能な場合はオンボード メモリに置くこともできる。詳細については、「ダイナミック ボイス管理」および「ISA および PCI カードでのハードウェア アクセラレーション」を参照すること。
異なるセカンダリ バッファのサウンドは、これらを同時に再生するだけでミキシングできる。処理能力の限界内であれば、任意の数のセカンダリ バッファを同時に再生できる。