ISpatialAudioMetadataWriter::WriteNextItem 메서드(spatialaudiometadata.h)
지정된 오프셋에서 새 메타데이터 항목을 시작합니다.
구문
HRESULT WriteNextItem(
[in] UINT16 frameOffset
);
매개 변수
[in] frameOffset
ActivateSpatialAudioMetadataItems에 대한 frameCount 매개 변수로 지정된 범위 내 항목의 프레임 오프셋입니다.
반환 값
메서드가 성공하면 S_OK가 반환되고, 실패할 경우 가능한 반환 코드는 다음 표에 표시된 값을 포함하지만 이에 국한되지 않습니다.
반환 코드 | 설명 |
---|---|
|
ISpatialAudioMetadataItems가 Open 호출을 사용하여 쓰기 위해 열리지 않았거나 닫기 호출로 쓰기 위해 개체가 닫혔습니다. |
|
쓰기 세션에서 작성된 항목 수가 ISpatialAudioClient::ActivateSpatialAudioStream에 전달된 SpatialAudioObjectRenderStreamForMetadataActivationParam의 MaxMetadataItemCount 필드에 제공된 값보다 큽니다.
frameCount 값이 activateSpatialAudioMetadataItems에 대한 frameCount 매개 변수 값보다 크며 오버플로 모드가 SpatialAudioMetadataWriterOverflow_Fail 설정되었습니다. |
|
frameOffset의 값은 동일한 쓰기 세션 내에서 WriteNextItem에 대한 이전 호출에서 제공된 값보다 크지 않습니다. |
설명
WriteNextItem을 호출하기 전에 개체를 만든 후 Close가 호출된 후Open을 호출하여 쓰기를 위해 ISpatialAudioMetadataWriter를 열어야 합니다. Open 및 Close 호출로 구분된 쓰기 세션 중에 frameOffset 매개 변수의 값은 이전 호출의 값보다 커야 합니다.
단일 쓰기 세션 내에서 WriteNextItem을 사용하여 ISpatialAudioClient::ActivateSpatialAudioStream에 전달된 SpatialAudioObjectRenderStreamForMetadataActivationParam의 MaxMetadataItemCount 필드에 제공된 값보다 많은 항목을 작성하면 안 됩니다. 그렇지 않으면 SPTLAUD_MD_CLNT_E_FRAMEOFFSET_OUT_OF_RANGE 오류가 발생합니다.
오버플로 모드가 SpatialAudioMetadataWriterOverflow_Fail 설정된 경우 frameOffset 매개 변수의 값이 activateSpatialAudioMetadataItems에 대한 frameCount 매개 변수 값보다 작아야 합니다. 그렇지 않으면 SPTLAUD_MD_CLNT_E_FRAMEOFFSET_OUT_OF_RANGE 오류가 발생합니다.
WriteNextItem을 호출한 후 WriteNextItemCommand를 호출하여 항목에 대한 메타데이터 명령 및 값 데이터를 작성합니다.
요구 사항
대상 플랫폼 | Windows |
헤더 | spatialaudiometadata.h |