IXACT3Engine::PrepareInMemoryWave
既にメモリーにあるデータからメモリー内 IXACT3Wave オブジェクトを作成します。
[Code-driven]
HRESULT
PrepareInMemoryWave(
DWORD dwFlags,
WAVEBANKENTRY entry,
DWORD *pdwSeekTable,
BYTE *pbWaveData,
DWORD dwPlayOffset,
XACTLOOPCOUNT nLoopCount,
IXACT3Wave **ppWave
);
パラメータ
- dwFlags
Wave の準備に影響を与えるフラグ : - entry
Wave の形式、再生領域、およびループ領域を記述する WAVEBANKENTRY 構造体です。再生領域の長さをバッファーのサイズ (バイト単位) に設定します。 - pdwSeekTable
シーク テーブルへのポインターです。このテーブルの最初の DWORD は、シーク テーブル内のエントリの数を表す必要があります。 - pbWaveData
Wave データへのポインターです。Wave データのサイズは、渡される WAVEBANKENTRY 構造体に記述されている再生領域の長さにより決定されます。 - dwPlayOffset
Wave の先頭として使用される再生オフセットです。このオフセットは、ミリ秒またはサンプル数で表されます。dwFlags 引数により、オフセットの単位が決定されます。 - nLoopCount
Wave のループ カウントです。 - ppWave
返される IXACT3Wave オブジェクトへのポインター
戻り値
成功した場合、S_OK を返します。それ以外の場合は、エラー コードを返します。
解説
アプリケーションでは、渡されるバッファー (データ、シーク テーブル) がこの Wave の有効期間にわたって有効であることを確認する必要があります。
Xbox 360: この API を使用して XMA コンテンツを準備する場合、64K をブロック サイズとしてコンテンツをエンコードする必要があります。XMAEncode を使用するときにコマンド ラインで "/b 64" を指定して 64K ブロックを作成してください。
要件
ヘッダー: Xact3.h 宣言
ライブラリ: Xact3.lib 内容