ISpatialAudioMetadataReader::ReadNextItemCommand-Methode (spatialaudiometadata.h)
Liest Metadatenbefehle und Wertdaten für das aktuelle Element.
Syntax
HRESULT ReadNextItemCommand(
[out] BYTE *commandID,
[in] void *valueBuffer,
[in] UINT32 maxValueBufferLength,
[out] UINT32 *valueBufferLength
);
Parameter
[out] commandID
Empfängt die Befehls-ID für den aktuellen Befehl.
[in] valueBuffer
Ein Zeiger auf einen Puffer, der spezifische Daten für den Befehl empfängt, wie in der Metadatenformatdefinition angegeben. Der Puffer muss mindestens maxValueBufferLength sein, um sicherzustellen, dass alle Befehle erfolgreich abgerufen werden können.
[in] maxValueBufferLength
Die maximale Größe eines Befehlswerts.
[out] valueBufferLength
Die Größe der In den valueBuffer-Parameter geschriebenen Daten in Bytes.
Rückgabewert
Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Wenn ein Fehler auftritt, umfassen mögliche Rückgabecodes die in der folgenden Tabelle gezeigten Werte, sind jedoch nicht darauf beschränkt.
Rückgabecode | Beschreibung |
---|---|
|
ISpatialAudioMetadataItems wurde nicht zum Lesen mit einem Aufruf von Open geöffnet, oder das Objekt wurde zum Schreiben mit einem Aufruf von Close geschlossen. |
|
Einer der bereitgestellten Zeiger ist ungültig. |
Hinweise
Vor dem Aufrufen von ReadNextItem müssen Sie den ISpatialAudioMetadataReader zum Lesen öffnen, indem Sie Open aufrufen, nachdem das Objekt erstellt wurde und nachdem Close aufgerufen wurde. Sie müssen auch ReadItemCountInFrames und dann ReadNextItem aufrufen, bevor Sie ReadNextItem aufrufen.
Der ISpatialAudioMetadataReader behält einen internen Zeiger auf die aktuelle Position innerhalb des Gesamtbereichs der Frames bei, die von den ISpatialAudioMetadataItems enthalten sind, denen der Reader zugeordnet ist. Jeder Aufruf dieser Methode bewirkt, dass der Zeiger um die Anzahl von Frames erweitert wird, die im readFrameCount-Parameter angegeben ist.
Der Prozess zum Lesen von Befehlen und den zugeordneten Werten ist rekursiv. Rufen Sie nach jedem Aufruf von ReadItemCountInFramesReadNextItem auf, um die Anzahl der Befehle im nächsten Element abzurufen. Rufen Sie nach jedem Aufruf von ReadNextItemReadNextItemCommand auf, um jeden Befehl für das Element zu lesen. Wiederholen Sie diesen Vorgang, bis der gesamte Framebereich von ISpatialAudioMetadataItems gelesen wurde.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | spatialaudiometadata.h |