XAUDIO2_BUFFER_WMA構造体 (xaudio2.h)

xWMA データを送信するときに IXAudio2SourceVoice::SubmitSourceBuffer と共に使用されます。

構文

typedef struct XAUDIO2_BUFFER_WMA {
  const UINT32 *pDecodedPacketCumulativeBytes;
  UINT32       PacketCount;
} XAUDIO2_BUFFER_WMA;

メンバー

pDecodedPacketCumulativeBytes

デコードされたパケット累積データサイズ配列は、各要素が、対応するxWMAパケットが順にデコードされた後に蓄積されたバイト数であり、 PacketCount 要素を有する必要がある。

PacketCount

送信される xWMA パケットの数は、 = 1 で>、それぞれのXAUDIO2_BUFFERに均等に分割する必要があります。IXAudio2SourceVoice::SubmitSourceBuffer に渡される AudioBytes 値。

注釈

xWMA ファイルを一度に数パケットストリーミングする場合は、最後のパケットでXAUDIO2_END_OF_STREAMを指定する必要があります。 または、アプリケーションは、最後のパケットを送信 した後に IXAudio2SourceVoice::D iscontinuity を呼び出す場合があります。

さらに、xWMA ファイルを一度に数パケットストリーミングする場合、アプリケーションは、現在送信されているパケットのすべてのエントリから前のパケットの pDecodedPacketCumulativeBytes[PacketCount-1] を減算する必要があります。

XAUDIO2_BUFFER_WMAのメンバーは、再生中の xWMA ファイルの 'dpds' RIFF チャンクに含まれる値に対応します。 PacketCount は、チャンクの UINT32s のサイズに対応します。 pDecodedPacketCumulativeBytes は、チャンクの内容を含む UINT32 バッファーに対応します。 Xbox 360 にバッファーを読み込むときは、バッファーの内容をバイト スワップする必要があります。

XAUDIO2_BUFFERまたはXAUDIO2_BUFFER_WMA構造体を保持するために割り当てられたメモリは、IXAudio2SourceVoice::SubmitSourceBuffer が呼び出されるとすぐに解放できます。 構造体が指すデータ (pAudioDatapDecodedPacketCumulativeBytes それぞれ) は、バッファーが完了するか ( IXAudio2VoiceCallback::OnBufferEnd コールバックによって通知される) か、音声が停止および破棄されるまで解放できません。

Windows 8.x の XAUDIO 2.8 では、xWMA デコードはサポートされていません。 代わりに Windows Media Foundation API を使用して、WMA から PCM へのデコードを実行します。 この機能は、XAUDIO の DirectX SDK バージョンと、Windows 10 の XAUDIO 2.9 で使用できます。

プラットフォームの要件

Windows 10 (XAudio2.9);Windows 8、Windows Phone 8 (XAudio 2.8);DirectX SDK (XAudio 2.7)

要件

要件
Header xaudio2.h

関連項目

構造体