Freigeben über


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 im XAUDIO2_BUFFER bereitgestellt wird, der derzeit verarbeitet wird, oder, wenn die Stimme derzeit angehalten wird, auf den nächsten Puffer, der verarbeitet werden soll. pCurrentBufferContext ist NULL, wenn keine Puffer in der Warteschlange vorhanden sind.

BuffersQueued

Anzahl der Audiopuffer, die derzeit für die Stimme in die Warteschlange gestellt werden, einschließlich des Derzeit verarbeiteten Puffers.

SamplesPlayed

Gesamtanzahl der Von dieser Stimme verarbeiteten Samples seit dem letzten Start oder seit dem Ende des letzten Audiostreams (wie mit dem XAUDIO2_END_OF_STREAM Flag gekennzeichnet). Diese Summe umfasst Beispiele, die aufgrund von Schleifen mehrmals wiedergegeben werden. Theoretisch wäre dieser Parameter die Länge des Audiostreams in Beispielen, wenn alle Audiodaten erfasst werden, die bis zu diesem Zeitpunkt von der Stimme ausgegeben werden. Wenn Sie XAUDIO2_VOICE_NOSAMPLESPLAYED angeben, wenn Sie IXAudio2SourceVoice::GetState aufrufen, wird dieses Element nicht berechnet, und sein Wert wird bei rückgaben von IXAudio2SourceVoice::GetState nicht angegeben. IXAudio2SourceVoice::GetState benötigt etwa ein Drittel so lange, bis sie abgeschlossen ist, wenn Sie XAUDIO2_VOICE_NOSAMPLESPLAYED angeben.

Hinweise

Für alle codierten Formate, einschließlich CBR-Formaten (Constant Bit Rate) wie adaptive Differenzialpulscodemodulation (ADPCM), wird SamplesPlayed als decodierte Stichproben ausgedrückt. Bei Pulscodemodulationsformaten (Pulse Code Modulation, PCM) wird SamplesPlayed entweder als Eingabe- oder Ausgabebeispiele ausgedrückt. Es gibt eine 1:1-Zuordnung von der Eingabe zur Ausgabe für PCM-Formate.

Wenn ein Client die korrelierten Positionen mehrerer Stimmen abrufen muss, d. h. um genau zu wissen, welches Beispiel einer bestimmten Stimme wiedergegeben wird, wenn ein angegebenes Beispiel einer anderen Stimme wiedergegeben wird, muss er die IXAudio2SourceVoice::GetState-Aufrufe in einem Rückruf der XAudio2-Engine durchführen. Dadurch wird sichergestellt, dass keine der Stimmen voranschreiten, während die Anrufe getätigt werden.

Plattformanforderungen

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

Requirements (Anforderungen)

   
Kopfzeile xaudio2.h

Siehe auch

Strukturen