Microsoft DirectX 8.0 (Visual Basic) |
DirectSound バッファは、固定サンプリング レートのサウンドのデジタル サンプルで構成されるウェーブフォーム オーディオ データのみ再生する。アナログ シグナルを数字のシーケンスで表現することを、パルス コード変調 (PCM) と呼ぶ。
ウェーブ データは、通常、RIFF (Resource Interchange File Format) のファイルまたはリソースに保存される。このデータには、サンプリング レートや出力チャンネル数などのパラメータを含む、ウェーブ フォーマットの記述が含まれる。
サウンドの特定のフォーマットは、WAVEFORMATEX 型を使って記述できる。
注 DirectX for Visual Basic タイプ ライブラリの WAVEFORMATEX 型は、Mmreg.h で宣言され、ウェーブ ファイルやリソースのフォーマット チャンクで使用される WAVEFORMATEX 構造体と同じではない。フォーマット チャンクの読み込みおよび DirectX WAVEFORMATEX 型への関連データのコピーの方法については、「ウェーブ ファイルの読み込み」を参照すること。
DirectSound8.CreateSoundBufferFromFile または DirectSound8.CreateSoundBufferFromResource を使ってスタティック バッファを作成する場合、作成されるバッファのフォーマットは常にデータのフォーマットに一致するので、バッファのフォーマットは指定しない。ただし、DirectSound8.CreateSoundBuffer を使ってバッファを作成する場合はフォーマットを指定する必要があり、このフォーマットはバッファで再生するデータのフォーマットと一致していなければならない。
DirectSound は、圧縮ウェーブ フォーマットをサポートしていない。アプリケーションはサウンド バッファにデータを書き込む前に、Platform SDK 内の Win32 API で提供されているオーディオ圧縮マネージャ (ACM) 関数を使って、圧縮されたオーディオ データを PCM フォーマットに変換すべきである。この代わりに、DirectMusic パフォーマンスで再生するために圧縮されたウェーブをロードしたときに、自動的に ACM を利用する DirectMusic ローダーを使用することもできる。
ウェーブの詳細については、次のトピックを参照すること。