XAUDIO2_BUFFER_WMA-Struktur (xaudio2.h)
Wird mit IXAudio2SourceVoice::SubmitSourceBuffer beim Übermitteln von xWMA-Daten verwendet.
Syntax
typedef struct XAUDIO2_BUFFER_WMA {
const UINT32 *pDecodedPacketCumulativeBytes;
UINT32 PacketCount;
} XAUDIO2_BUFFER_WMA;
Member
pDecodedPacketCumulativeBytes
Decodiertes Array der kumulativen Datengröße des Pakets, jedes Element ist die Anzahl der Bytes, die nach der Dekodierung des entsprechenden xWMA-Pakets in der Reihenfolge akkumuliert wurden, und muss PacketCount-Elemente aufweisen.
PacketCount
Anzahl der übermittelten xWMA-Pakete muss = 1 sein >und gleichmäßig in die jeweilige XAUDIO2_BUFFER.AudioBytes-Wert, der an IXAudio2SourceVoice::SubmitSourceBuffer übergeben wird.
Hinweise
Beim Streaming einer xWMA-Datei mit mehreren Paketen sollte XAUDIO2_END_OF_STREAM für das letzte Paket angegeben werden. Alternativ kann die Anwendung IXAudio2SourceVoice::D iscontinuity aufrufen, nachdem das letzte Paket übermittelt wurde.
Außerdem sollte die Anwendung beim Streaming einer xWMA-Datei mehrere Pakete gleichzeitig pDecodedPacketCumulativeBytes[PacketCount-1] des vorherigen Pakets von allen Einträgen des aktuell übermittelten Pakets subtrahieren.
Die Member von XAUDIO2_BUFFER_WMA den Werten entsprechen, die im RIFF-Abschnitt "dpds" der wiedergegebenen xWMA-Datei enthalten sind. PacketCount entspricht der Größe in UINT32s des Blöckes. pDecodedPacketCumulativeBytes entspricht einem UINT32-Puffer, der den Inhalt des Blockes enthält. Der Inhalt des Puffers muss beim Laden des Puffers auf xbox 360 byte ausgetauscht werden.
Speicher, der für eine XAUDIO2_BUFFER - oder XAUDIO2_BUFFER_WMA-Struktur zugewiesen ist, kann freigegeben werden, sobald der IXAudio2SourceVoice::SubmitSourceBuffer-Aufruf an zurückgegeben wird. Die Daten, auf die die Struktur verweist (pAudioData bzw . pDecodedPacketCumulativeBytes), können erst freigegeben werden, wenn der Puffer abgeschlossen ist (wie durch den IXAudio2VoiceCallback::OnBufferEnd-Rückruf signalisiert ) oder die Stimme beendet und zerstört wird.
XAUDIO 2.8 in Windows 8.x unterstützt keine xWMA-Decodierung. Verwenden Sie Windows Media Foundation-APIs, um stattdessen die Decodierung von WMA zu PCM durchzuführen. Diese Funktionalität ist in den DirectX SDK-Versionen von XAUDIO und in XAUDIO 2.9 in Windows 10 verfügbar.
Plattformanforderungen
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)Anforderungen
Anforderung | Wert |
---|---|
Header | xaudio2.h |