Partager via


Fonction DrmCreateContentMixed (drmk.h)

La DrmCreateContentMixed fonction crée un ID de contenu DRM pour identifier un flux audio KS contenant du contenu mixte à partir d’un certain nombre de flux.

Syntaxe

NTSTATUS DrmCreateContentMixed(
  [in]  PULONG paContentId,
  [in]  ULONG  cContentId,
  [out] PULONG pMixedContentId
);

Paramètres

[in] paContentId

Pointeur vers un tableau d’ID de contenu DRM. Chaque élément de tableau est de type ULONG et contient un ID de contenu qui représente un flux audio KS protégé. Si cContentId est égal à zéro, paContentID peut être NULL. Un ID de contenu égal à zéro est une valeur spéciale qui représente un flux audio avec des droits de contenu DRM par défaut (voir DEFINE_DRMRIGHTS_DEFAULT).

[in] cContentId

Spécifie le nombre d’ID de contenu DRM dans le tableau paContentId . Le tableau peut contenir zéro ou plusieurs ID de contenu.

[out] pMixedContentId

Pointeur de sortie pour l’ID de contenu composite. Ce paramètre pointe vers une variable ULONG allouée à l’appelant dans laquelle la fonction écrit le nouvel ID de contenu pour le flux audio KS composite. Si cContentId est égal à zéro, la fonction affecte des droits de contenu DRM par défaut au nouvel ID de contenu.

Valeur retournée

DrmCreateContentMixed retourne STATUS_SUCCESS si l’appel a réussi. Sinon, elle retourne un code d’erreur approprié.

Remarques

Un filtre audio KS appelle la DrmCreateContentMixed fonction pour obtenir un ID de contenu DRM pour un flux composite. Le filtre produit ce flux en mixant les flux audio KS dont les ID de contenu sont répertoriés dans le tableau paContentId . Compte tenu de cette liste d’ID de contenu pour les flux au niveau des entrées du mélangeur, la fonction calcule les droits de contenu du flux composite et affecte un nouvel ID de contenu à ce flux.

Si l’appelant ne spécifie aucun ID de contenu (autrement dit, si cContentId est égal à zéro), la fonction attribue des droits de contenu par défaut à l’ID de contenu qu’elle crée pour identifier le flux composite.

Après avoir obtenu un ID de contenu à partir de DrmCreateContentMixed, l’appelant peut obtenir les droits de contenu attribués à l’ID de contenu en appelant DrmGetContentRights.

Après une modification des droits de contenu de l’un des composants d’un flux audio composite, le filtre audio KS qui mixe le flux doit appeler DrmCreateContentMixed pour obtenir un nouvel ID de contenu pour le flux audio composite. DrmCreateContentMixed détermine les droits de contenu les plus restrictifs qui sont attribués aux ID de contenu individuels spécifiés dans le tableau paContentId et attribue ces droits au nouvel ID de contenu.

Une fois qu’un filtre audio KS a terminé d’utiliser un ID de contenu qu’il a créé à l’aide DrmCreateContentMixedde , le filtre doit appeler DrmDestroyContent pour supprimer l’ID de contenu. Toutefois, avant de supprimer un ancien ID de contenu, le filtre audio KS doit d’abord transférer correctement un nouvel ID de contenu à tous les flux vers lesquels il a précédemment transféré l’ancien ID de contenu. Le filtre audio KS transfère un ID de contenu en appelant une fonction DrmForwardContentToXxx .

DrmCreateContentMixed exécute la même fonction que PcCreateContentMixed et IDrmPort ::CreateContentMixed. Pour plus d’informations, consultez Fonctions et interfaces DRM.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête drmk.h (inclure Drmk.h)
Bibliothèque Drmk.lib
IRQL PASSIVE_LEVEL

Voir aussi

DEFINE_DRMRIGHTS_DEFAULT

DrmDestroyContent

DrmForwardContentToDeviceObject

DrmForwardContentToInterface

DrmGetContentRights

IDrmPort ::CreateContentMixed

PcCreateContentMixed