ISpatialAudioObjectRenderStreamForMetadata::BeginUpdatingAudioObjects method
Puts the system into the state where audio object data can be submitted for processing and the ISpatialAudioObjectRenderStreamForMetadata state can be modified.
HRESULT BeginUpdatingAudioObjects(
[out] UINT32 *availableDynamicObjectCount,
[out] UINT32 *frameCountPerBuffer
);
availableDynamicObjectCount [out]
The number of dynamic audio objects that are available to be rendered for the current processing pass. All allocated static audio objects can be rendered in every pass. For information on audio object types, see AudioObjectType.frameCountPerBuffer [out]
The size, in audio frames, of the buffer returned by ISpatialAudioObjectForMetadataCommands::GetBuffer or ISpatialAudioObjectForMetadataItems::GetBuffer.
If the method succeeds, it returns S_OK. If it fails, possible return codes include, but are not limited to, the values shown in the following table.
Return code | Description |
---|---|
SPTLAUDCLNT_E_OUT_OF_ORDER | BeginUpdatingAudioObjects was called twice without a matching call to EndUpdatingAudioObjects between the two calls. |
This method must be called each time the event passed in the SpatialAudioObjectRenderStreamForMetadataActivationParams to ISpatialAudioClient::ActivateSpatialAudioStream is signaled, even if there no audio object data to submit.
For each BeginUpdatingAudioObjects call, there should be a corresponding call to EndUpdatingAudioObjects call. If BeginUpdatingAudioObjects is called twice without a call EndUpdatingAudioObjects between them, the second call to BeginUpdatingAudioObjects will return SPTLAUDCLNT_E_OUT_OF_ORDER.
Header |
Spatialaudioclient.h |