XAUDIO2_VOICE_STATE Struktur (xaudio2.h)

Gibt die aktuellen Status- und Cursorpositionsdaten der Stimme zurück.

Syntax

typedef struct XAUDIO2_VOICE_STATE {
  void   *pCurrentBufferContext;
  UINT32 BuffersQueued;
  UINT64 SamplesPlayed;
} XAUDIO2_VOICE_STATE;

Member

pCurrentBufferContext

Zeiger auf einen Pufferkontext, der in der derzeit verarbeiteten XAUDIO2_BUFFER oder, wenn die Stimme derzeit beendet wird, auf den nächsten Puffer, der verarbeitet werden soll. pCurrentBufferContext ist NULL, wenn keine Puffer in der Warteschlange vorhanden sind.

BuffersQueued

Die Anzahl der audiopuffer, die derzeit auf der Stimme in die Warteschlange gestellt wurden, einschließlich des derzeit verarbeiteten Audiopuffers.

SamplesPlayed

Die Gesamtzahl der von dieser Stimme verarbeiteten Beispiele seit dem letzten Start oder seit dem letzten Ende des Audiostreams (wie mit dem XAUDIO2_END_OF_STREAM Flag gekennzeichnet). Diese Summe umfasst Beispiele, die mehrmals aufgrund von Schleifen wiedergegeben werden. Theoretisch wäre dieser Parameter die Länge des Audiodatenstroms in Beispielen, wenn alle von der Stimme bis zu diesem Zeitpunkt ausgegebenen Audiodatenströme erfasst werden. Wenn Sie XAUDIO2_VOICE_NOSAMPLESPLAYED angeben, wenn Sie IXAudio2SourceVoice::GetState aufrufen, wird dieses Element nicht berechnet, und sein Wert wird nicht angegeben, wenn sie von IXAudio2SourceVoice::GetState zurückgegeben wird. IXAudio2SourceVoice::GetState benötigt etwa ein Drittel zeit, bis sie abgeschlossen werden, wenn Sie XAUDIO2_VOICE_NOSAMPLESPLAYED angeben.

Hinweise

Für alle codierten Formate, einschließlich konstanter Bitrate (CBR), wie z. B. adaptive Differenzielle Pulscodemodulation (ADPCM), wird SamplesPlayed in Bezug auf decodierte Beispiele ausgedrückt. Bei Pulscodemodulationsformaten (PCM) wird SamplesPlayed in Bezug auf Eingabe- oder Ausgabebeispiele ausgedrückt. Es gibt eine 1:1-Zuordnung von Eingaben zur Ausgabe für PCM-Formate.

Wenn ein Client die korrelierten Positionen mehrerer Stimmen abrufen muss – d. h. genau wissen, welches Beispiel einer bestimmten Stimme wiedergegeben wird, wenn ein bestimmtes Beispiel einer anderen Stimme wiedergegeben wird – muss die IXAudio2SourceVoice::GetState-Aufrufe in einem XAudio2-Modulrückruf erfolgen. Dadurch wird sichergestellt, dass keine der Stimmen vorangehen, während die Anrufe ausgeführt werden.

Plattformanforderungen

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

Anforderungen

   
Header xaudio2.h

Weitere Informationen

Strukturen