共用方式為


ISpatialAudioObjectRenderStreamForMetadata::ActivateSpatialAudioObjectForMetadataItems 方法 (spatialaudiometadata.h)

啟動 ISpatialAudioObjectForMetadataItems 以進行轉譯。

語法

HRESULT ActivateSpatialAudioObjectForMetadataItems(
  [in]  AudioObjectType                     type,
  [out] ISpatialAudioObjectForMetadataItems **audioObject
);

參數

[in] type

要啟動的音訊物件類型。 對於動態音頻物件,此值必須 AudioObjectType_Dynamic。 針對靜態音頻物件,請從 列舉指定其中一個靜態音訊通道值。 指定 AudioObjectType_None 會產生未空間化的音頻物件。

[out] audioObject

接收啟動介面的指標。

傳回值

如果方法成功,它會傳回 S_OK。 如果失敗,可能的傳回碼包括但不限於下表所示的值。

傳回碼 Description
SPTLAUDCLNT_E_NO_MORE_OBJECTS
已超過同時空間音訊對象的數目上限。 在嘗試啟動其他物件之前,先在未使用的音頻對象上呼叫 Release
SPTLAUDCLNT_E_STATIC_OBJECT_NOT_AVAILABLE
類型參數中指定的靜態通道未包含在傳遞至 ISpatialAudioClient::ActivateSpatialAudioStreamSpatialAudioObjectRenderStreamForMetadataActivationParams 字段中。
SPTLAUDCLNT_E_OBJECT_ALREADY_ACTIVE
已針對 類型 參數中指定的靜態通道啟用空間音訊物件。
E_POINTER
提供的指標無效。
E_INVALIDARG
type 參數中指定的值不是 AudioObjectType 列舉所定義的其中一個值。
SPTLAUDCLNT_E_DESTROYED
與空間音頻數據流相關聯的 ISpatialAudioClient 已終結。
AUDCLNT_E_DEVICE_INVALIDATED
音訊端點裝置已解除叢集,或音訊硬體或相關聯的硬體資源已重新設定、停用、移除或無法使用。
SPTLAUDCLNT_E_INTERNAL
發生內部錯誤。
AUDCLNT_E_UNSUPPORTED_FORMAT
與空間音訊數據流相關聯的媒體會使用不支援的格式。

備註

動態 ISpatialAudioObjectForMetadataItems 是藉由將 type 參數設定為 ActivateSpatialAudioObjectForMetadataItems 方法來啟動的動態 ISpatialAudioObjectForMetadataItems 方法AudioObjectType_Dynamic。 用戶端有一次可以啟動之動態空間音頻物件數目上限的限制。 達到限制之後,嘗試啟動其他音訊物件會導致此方法傳回SPTLAUDCLNT_E_NO_MORE_OBJECTS錯誤。 若要避免這種情況,請在不再用來釋放資源之後,在每個動態ISpatialAudioObjectForMetadataItems 上呼叫 Release,以便重新配置資源。 如需管理空間音訊物件存留期的詳細資訊,請參閱 ISpatialAudioObjectBase::IsActiveISpatialAudioObjectBase::SetEndOfStream

規格需求

需求
目標平台 Windows
標頭 spatialaudiometadata.h

另請參閱

ISpatialAudioObjectForMetadataItems