Partager via


Méthode ISpatialAudioObjectRenderStreamForMetadata ::ActivateSpatialAudioObjectForMetadataItems (spatialaudiometadata.h)

Activez un ISpatialAudioObjectForMetadataItems pour le rendu.

Syntaxe

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

Paramètres

[in] type

Type d’objet audio à activer. Pour les objets audio dynamiques, cette valeur doit être AudioObjectType_Dynamic. Pour les objets audio statiques, spécifiez l’une des valeurs de canal audio statique de l’énumération. La spécification de AudioObjectType_None génère un objet audio qui n’est pas spatialisé.

[out] audioObject

Reçoit un pointeur vers l’interface activée.

Valeur retournée

Si la méthode réussit, retourne S_OK. En cas d’échec, les codes de retour possibles incluent, sans s’y limiter, les valeurs indiquées dans le tableau suivant.

Code de retour Description
SPTLAUDCLNT_E_NO_MORE_OBJECTS
Le nombre maximal d’objets audio spatiaux simultanés a été dépassé. Appelez Release sur les objets audio inutilisés avant de tenter d’activer des objets supplémentaires.
SPTLAUDCLNT_E_STATIC_OBJECT_NOT_AVAILABLE
Le canal statique spécifié dans le paramètre type n’a pas été inclus dans le champ StaticObjectTypeMask du SpatialAudioObjectRenderStreamForMetadataActivationParams transmis à ISpatialAudioClient ::ActivateSpatialAudioStream.
SPTLAUDCLNT_E_OBJECT_ALREADY_ACTIVE
Un objet audio spatial a déjà été activé pour le canal statique spécifié dans le paramètre type .
E_POINTER
Le pointeur fourni n’est pas valide.
E_INVALIDARG
La valeur spécifiée dans le paramètre type n’est pas l’une des valeurs définies par l’énumération AudioObjectType .
SPTLAUDCLNT_E_DESTROYED
L’ISpatialAudioClient associé au flux audio spatial a été détruit.
AUDCLNT_E_DEVICE_INVALIDATED
Le périphérique de point de terminaison audio a été débranché, ou le matériel audio ou les ressources matérielles associées ont été reconfigurés, désactivés, supprimés ou autrement rendus indisponibles.
SPTLAUDCLNT_E_INTERNAL
Une erreur interne s'est produite.
AUDCLNT_E_UNSUPPORTED_FORMAT
Le média associé au flux audio spatial utilise un format non pris en charge.

Remarques

Un ISpatialAudioObjectForMetadataItems dynamique est un objet qui a été activé en définissant le paramètre de type sur la méthode ActivateSpatialAudioObjectForMetadataItems sur AudioObjectType_Dynamic. Le client a une limite du nombre maximal d’objets audio spatiaux dynamiques qui peuvent être activés à la fois. Une fois la limite atteinte, la tentative d’activation d’objets audio supplémentaires entraîne le renvoi d’une erreur SPTLAUDCLNT_E_NO_MORE_OBJECTS par cette méthode. Pour éviter cela, appelez Release sur chaque ISpatialAudioObjectForMetadataItems dynamique après qu’il n’est plus utilisé pour libérer la ressource afin qu’elle puisse être réaffectée. Consultez ISpatialAudioObjectBase ::IsActive et ISpatialAudioObjectBase ::SetEndOfStream pour plus d’informations sur la gestion de la durée de vie des objets audio spatiaux.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête spatialaudiometadata.h

Voir aussi

ISpatialAudioObjectForMetadataItems