Condividi tramite


Metodo IDrmPort::CreateContentMixed (portcls.h)

Il metodo CreateContentMixed calcola i diritti di contenuto DRM per un flusso composito contenente contenuto misto da un certo numero di flussi audio KS. Si noti che questo metodo è identico nell'operazione alla funzione DrmCreateContentMixed e le definizioni dei parametri e il valore restituito sono identici.

Sintassi

NTSTATUS CreateContentMixed(
  PULONG paContentId,
  ULONG  cContentId,
  PULONG pMixedContentId
);

Parametri

paContentId

Puntatore a una matrice di ID contenuto DRM. Ogni elemento della matrice è di tipo ULONG e contiene un ID contenuto che rappresenta un flusso audio KS protetto. Se cContentId è zero, paContentID può essere NULL. Un ID contenuto pari a zero è un valore speciale che rappresenta un flusso audio con diritti di contenuto DRM predefiniti (vedere DEFINE_DRMRIGHTS_DEFAULT).

cContentId

Specifica il numero di ID contenuto DRM nella matrice paContentId. La matrice può contenere zero o più ID contenuto.

pMixedContentId

Puntatore di output per l'ID contenuto composito. Questo parametro punta a una variabile ULONG allocata dal chiamante in cui la funzione scrive il nuovo ID contenuto per il flusso audio KS composito. Se cContentId è zero, la funzione assegna i diritti di contenuto DRM predefiniti al nuovo ID contenuto.

Valore restituito

Questo metodo restituisce NTSTATUS: STATUS_SUCCESS se la chiamata ha avuto esito positivo. In caso contrario, restituisce un codice di errore appropriato.

Commenti

Un filtro audio KS chiama la funzione DrmCreateContentMixed per ottenere un ID contenuto DRM per un flusso composito. Il filtro produce questo flusso combinando i flussi audio KS i cui ID contenuto sono elencati nella matrice paContentId. Dato questo elenco di ID contenuto per i flussi negli input mixer, la funzione calcola i diritti di contenuto del flusso composito e assegna un nuovo ID contenuto a tale flusso.

Se il chiamante non specifica alcun ID contenuto, ovvero se cContentId è zero, la funzione assegna i diritti di contenuto predefiniti all'ID contenuto creato per identificare il flusso composito.

Dopo aver ottenuto un ID contenuto da DrmCreateContentMixed, il chiamante può ottenere i diritti di contenuto assegnati all'ID contenuto chiamando DrmGetContentRights.

Dopo una modifica ai diritti di contenuto di uno dei componenti di un flusso audio composito, il filtro audio KS che combina il flusso deve chiamare DrmCreateContentMixed per ottenere un nuovo ID contenuto per il flusso audio composito. DrmCreateContentMixed determina i diritti di contenuto più restrittivi assegnati ai singoli ID contenuto specificati nella matrice paContentId e assegna questi diritti al nuovo ID contenuto.

Al termine di un filtro audio KS usando un ID contenuto creato con DrmCreateContentMixed, il filtro deve chiamare DrmDestroyContent per eliminare l'ID contenuto. Tuttavia, prima di eliminare un ID contenuto precedente, il filtro audio KS deve prima inoltrare correttamente un nuovo ID contenuto a tutti i flussi a cui in precedenza ha inoltrato l'ID contenuto precedente. Il filtro audio KS inoltra un ID contenuto chiamando una funzione DrmForwardContentToXxx.

DrmCreateContentMixed esegue la stessa funzione di PcCreateContentMixed e IDrmPort::CreateContentMixed.

Requisiti

Requisito Valore
Intestazione portcls.h

Vedi anche

IDrmPort