Share via


Metodo ISpatialAudioMetadataReader::ReadNextItemCommand (spatialaudiometadata.h)

Legge i comandi dei metadati e i dati di valore per l'elemento corrente.

Sintassi

HRESULT ReadNextItemCommand(
  [out] BYTE   *commandID,
  [in]  void   *valueBuffer,
  [in]  UINT32 maxValueBufferLength,
  [out] UINT32 *valueBufferLength
);

Parametri

[out] commandID

Riceve l'ID comando per il comando corrente.

[in] valueBuffer

Puntatore a un buffer che riceve dati specifici del comando come specificato dalla definizione del formato dei metadati. Il buffer deve essere almeno maxValueBufferLength per assicurarsi che tutti i comandi possano essere recuperati correttamente.

[in] maxValueBufferLength

Dimensione massima di un valore del comando.

[out] valueBufferLength

Dimensione, in byte, dei dati scritti nel parametro valueBuffer .

Valore restituito

Se il metodo ha esito positivo, viene restituito S_OK. Se ha esito negativo, i possibili codici restituiti includono, ma non sono limitati, i valori illustrati nella tabella seguente.

Codice restituito Descrizione
SPTLAUD_MD_CLNT_E_NO_ITEMS_OPEN
ISpatialAudioMetadataItems non è stato aperto per la lettura con una chiamata a Open o l'oggetto è stato chiuso per la scrittura con una chiamata a Close.
E_INVALIDARG
Uno dei puntatori forniti non è valido.

Commenti

Prima di chiamare ReadNextItem, è necessario aprire ISpatialAudioMetadataReader per la lettura chiamando Open dopo aver creato l'oggetto e dopo aver chiamato Close . È inoltre necessario chiamare ReadItemCountInFrames e quindi chiamare ReadNextItem prima di chiamare ReadNextItem.

ISpatialAudioMetadataReader mantiene un puntatore interno alla posizione corrente all'interno dell'intervallo totale di fotogrammi contenuti negli oggetti ISpatialAudioMetadataItems a cui è associato il lettore. Ogni chiamata a questo metodo fa sì che il puntatore venga avanzato in base al numero di fotogrammi specificato nel parametro readFrameCount .

Il processo di lettura dei comandi e dei valori associati è ricorsivo. Dopo ogni chiamata a ReadItemCountInFrames, chiamare ReadNextItem per ottenere il numero di comandi nell'elemento successivo. Dopo ogni chiamata a ReadNextItem, chiamare ReadNextItemCommand per leggere ogni comando per l'elemento. Ripetere questo processo fino a quando non è stato letto l'intero intervallo di fotogrammi di ISpatialAudioMetadataItems .

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione spatialaudiometadata.h

Vedi anche

ISpatialAudioMetadataReader