Méthode ISpatialAudioObjectRenderStreamForMetadata ::ActivateSpatialAudioObjectForMetadataCommands (spatialaudiometadata.h)
Activez un ISpatialAudioObjectForMetadataCommands pour le rendu.
Syntaxe
HRESULT ActivateSpatialAudioObjectForMetadataCommands(
[in] AudioObjectType type,
[out] ISpatialAudioObjectForMetadataCommands **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 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 |
---|---|
|
Le nombre maximal d’objets audio spatiaux simultanés a été dépassé. Appelez Release sur les objets audio inutilisés avant d’essayer d’activer des objets supplémentaires. |
|
Le canal statique spécifié dans le paramètre type n’a pas été inclus dans le champ StaticObjectTypeMask de SpatialAudioObjectRenderStreamForMetadataActivationParams transmis dans ISpatialAudioClient ::ActivateSpatialAudioStream. |
|
Un objet audio spatial a déjà été activé pour le canal statique spécifié dans le paramètre type . |
|
Le pointeur fourni n’est pas valide. |
|
La valeur spécifiée dans le paramètre de type n’est pas l’une des valeurs définies par l’énumération AudioObjectType . |
|
L’ISpatialAudioClient associé au flux audio spatial a été détruit. |
|
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 indisponibles. |
|
Une erreur interne s'est produite. |
|
Le média associé au flux audio spatial utilise un format non pris en charge. |
Remarques
Un ISpatialAudioObjectForMetadataCommands dynamique a été activé en définissant le paramètre type sur la méthode ActivateSpatialAudioObjectForMetadataCommands pour 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 retour d’une erreur de SPTLAUDCLNT_E_NO_MORE_OBJECTS. Pour éviter cela, appelez Release sur chaque ISpatialAudioObjectForMetadataCommands dynamique une fois 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 |