Поделиться через


Метод ISpatialAudioMetadataWriter::WriteNextItem (spatialaudiometadata.h)

Запускает новый элемент метаданных с указанным смещением.

Синтаксис

HRESULT WriteNextItem(
  [in] UINT16 frameOffset
);

Параметры

[in] frameOffset

Смещение кадра элемента в диапазоне, указанном параметром frameCount , в ActivateSpatialAudioMetadataItems.

Возвращаемое значение

Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возможные коды возврата включают, помимо прочего, значения, показанные в следующей таблице.

Код возврата Описание
SPTLAUD_MD_CLNT_E_NO_ITEMS_OPEN
ISpatialAudioMetadataItems не был открыт для записи с помощью вызова Open или объект был закрыт для записи с помощью вызова Close.
SPTLAUD_MD_CLNT_E_FRAMEOFFSET_OUT_OF_RANGE
Количество элементов, записанных в сеансе записи, превышает значение, указанное в поле MaxMetadataItemCount в spatialAudioObjectRenderStreamForMetadataActivationParam , переданном в ISpatialAudioClient::ActivateSpatialAudioStream.

Значение frameCount больше значения параметра frameCount для ActivateSpatialAudioMetadataItems , а для режима переполнения задано значение SpatialAudioMetadataWriterOverflow_Fail.

E_INVALIDARG
Значение frameOffset не больше значения, указанного в предыдущем вызове WriteNextItem в том же сеансе записи.

Комментарии

Перед вызовом WriteNextItem необходимо открыть ISpatialAudioMetadataWriter для записи, вызвав Open после создания объекта и после вызова Close . Во время сеанса записи, размеченного вызовами Open и Close, значение параметра frameOffset должно быть больше значения в предыдущем вызове.

В рамках одного сеанса записи нельзя использовать WriteNextItem для записи большего количества элементов, чем значение, указанное в поле MaxMetadataItemCount в SpatialAudioObjectRenderStreamForMetadataActivationParam , переданном в ISpatialAudioClient::ActivateSpatialAudioStream , иначе возникнет ошибка SPTLAUD_MD_CLNT_E_FRAMEOFFSET_OUT_OF_RANGE.

Если для режима переполнения задано значение SpatialAudioMetadataWriterOverflow_Fail, значение параметра frameOffset должно быть меньше значения параметра frameCountдля ActivateSpatialAudioMetadataItems , иначе возникнет ошибка SPTLAUD_MD_CLNT_E_FRAMEOFFSET_OUT_OF_RANGE.

После вызова WriteNextItem вызовите WriteNextItemCommand , чтобы записать команды метаданных и данные значений для элемента.

Требования

   
Целевая платформа Windows
Header spatialaudiometadata.h

См. также раздел

ISpatialAudioMetadataWriter