Share via


Metodo ISpatialAudioMetadataWriter::WriteNextItem (spatialaudiometadata.h)

Avvia un nuovo elemento di metadati all'offset specificato.

Sintassi

HRESULT WriteNextItem(
  [in] UINT16 frameOffset
);

Parametri

[in] frameOffset

Offset del frame dell'elemento all'interno dell'intervallo specificato con il parametro frameCount per ActivateSpatialAudioMetadataItems.

Valore restituito

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

Codice restituito Descrizione
SPTLAUD_MD_CLNT_E_NO_ITEMS_OPEN
ISpatialAudioMetadataItems non è stato aperto per la scrittura con una chiamata a Open o l'oggetto è stato chiuso per la scrittura con una chiamata a Close.
SPTLAUD_MD_CLNT_E_FRAMEOFFSET_OUT_OF_RANGE
Il numero di elementi scritti nella sessione di scrittura è maggiore del valore specificato nel campo MaxMetadataItemCount nel campo SpatialAudioObjectRenderStreamForMetadataActivationParam passato in ISpatialAudioClient::ActivateSpatialAudioStream.

Il valore frameCount è maggiore del valore del parametro frameCount per ActivateSpatialAudioMetadataItems e la modalità overflow è stata impostata su SpatialAudioMetadataWriterOverflow_Fail.

E_INVALIDARG
Il valore di frameOffset non è maggiore del valore fornito nella chiamata precedente a WriteNextItem nella stessa sessione di scrittura.

Commenti

Prima di chiamare WriteNextItem, è necessario aprire ISpatialAudioMetadataWriter per la scrittura chiamando Open dopo la creazione dell'oggetto e dopo aver chiamato Close . Durante una sessione di scrittura demarcata dalle chiamate a Apri e Chiudi, il valore del parametro frameOffset deve essere maggiore del valore della chiamata precedente.

All'interno di una singola sessione di scrittura, non è necessario usare WriteNextItem per scrivere più elementi del valore fornito nel campo MaxMetadataItemCount nel campo SpatialAudioObjectRenderStreamForMetadataActivationParam passato a ISpatialAudioClient::ActivateSpatialAudioStream o si verificherà un errore di SPTLAUD_MD_CLNT_E_FRAMEOFFSET_OUT_OF_RANGE.

Se la modalità overflow è impostata su SpatialAudioMetadataWriterOverflow_Fail, il valore del parametro frameOffset deve essere minore del valore del parametro frameCount su ActivateSpatialAudioMetadataItems o si verificherà un errore SPTLAUD_MD_CLNT_E_FRAMEOFFSET_OUT_OF_RANGE.

Dopo aver chiamato WriteNextItem, chiamare WriteNextItemCommand per scrivere comandi di metadati e dati di valore per l'elemento.

Requisiti

   
Piattaforma di destinazione Windows
Intestazione spatialaudiometadata.h

Vedi anche

ISpatialAudioMetadataWriter