Função DrmCreateContentMixed (drmk.h)
A função DrmCreateContentMixed
cria uma ID de conteúdo drm para identificar um fluxo de áudio KS que contém conteúdo misto de vários fluxos.
Sintaxe
NTSTATUS DrmCreateContentMixed(
[in] PULONG paContentId,
[in] ULONG cContentId,
[out] PULONG pMixedContentId
);
Parâmetros
[in] paContentId
Ponteiro para uma matriz de IDs de conteúdo drm. Cada elemento de matriz é do tipo ULONG e contém uma ID de conteúdo que representa um fluxo de áudio KS protegido. Se cContentId for zero, paContentID poderá ser NULL. Uma ID de conteúdo igual a zero é um valor especial que representa um fluxo de áudio com direitos de conteúdo drm padrão (consulte DEFINE_DRMRIGHTS_DEFAULT).
[in] cContentId
Especifica o número de IDs de conteúdo drm na matriz de paContentId. A matriz pode conter zero ou mais IDs de conteúdo.
[out] pMixedContentId
Ponteiro de saída para a ID de conteúdo composto. Esse parâmetro aponta para uma variável ULONG alocada por chamador na qual a função grava a nova ID de conteúdo para o fluxo de áudio KS composto. Se cContentId for zero, a função atribuirá direitos de conteúdo DRM padrão à nova ID de conteúdo.
Valor de retorno
DrmCreateContentMixed
retornará STATUS_SUCCESS se a chamada tiver sido bem-sucedida. Caso contrário, ele retornará um código de erro apropriado.
Observações
Um filtro de áudio KS chama a função DrmCreateContentMixed
para obter uma ID de conteúdo drm para um fluxo composto. O filtro produz esse fluxo misturando os fluxos de áudio KS cujas IDs de conteúdo estão listadas na matriz paContentId. Dada essa lista de IDs de conteúdo para os fluxos nas entradas do mixer, a função calcula os direitos de conteúdo do fluxo composto e atribui uma nova ID de conteúdo a esse fluxo.
Se o chamador não especificar IDs de conteúdo (ou seja, se cContentId for zero), a função atribuirá direitos de conteúdo padrão à ID de conteúdo que ele cria para identificar o fluxo composto.
Depois de obter uma ID de conteúdo de DrmCreateContentMixed
, o chamador pode obter os direitos de conteúdo atribuídos à ID de conteúdo chamando DrmGetContentRights.
Após uma alteração nos direitos de conteúdo de qualquer um dos componentes de um fluxo de áudio composto, o filtro de áudio KS que mistura o fluxo deve chamar DrmCreateContentMixed
para obter uma nova ID de conteúdo para o fluxo de áudio composto.
DrmCreateContentMixed
determina o mais restritivo dos direitos de conteúdo atribuídos às IDs de conteúdo individuais especificadas na matriz paContentId e atribui esses direitos à nova ID de conteúdo.
Depois que um filtro de áudio KS for concluído usando uma ID de conteúdo que ele criou usando DrmCreateContentMixed
, o filtro deverá chamar DrmDestroyContent para excluir a ID de conteúdo. No entanto, antes de excluir uma ID de conteúdo antiga, o filtro de áudio KS deve primeiro encaminhar com êxito uma nova ID de conteúdo para todos os fluxos para os quais ele encaminhou anteriormente a ID de conteúdo antiga. O filtro de áudio KS encaminha uma ID de conteúdo chamando uma função DrmForwardContentToxxx.
DrmCreateContentMixed
executa a mesma função que PcCreateContentMixed e IDrmPort::CreateContentMixed. Para obter mais informações, consulte de funções e interfaces do DRM.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
cabeçalho | drmk.h (inclua Drmk.h) |
biblioteca | Drmk.lib |
IRQL | PASSIVE_LEVEL |