DrmCreateContentMixed-Funktion (drmk.h)

Die DrmCreateContentMixed Funktion erstellt eine DRM-Inhalts-ID, um einen KS-Audiostream zu identifizieren, der gemischte Inhalte aus einer Reihe von Streams enthält.

Syntax

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

Parameter

[in] paContentId

Zeiger auf ein Array von DRM-Inhalts-IDs. Jedes Arrayelement ist vom Typ ULONG und enthält eine Inhalts-ID, die einen geschützten KS-Audiodatenstrom darstellt. Wenn cContentId null ist, kann paContentIDNULL sein. Eine Inhalts-ID von 0 (null) ist ein spezieller Wert, der einen Audiodatenstrom mit DRM-Standardinhaltsrechten darstellt (siehe DEFINE_DRMRIGHTS_DEFAULT).

[in] cContentId

Gibt die Anzahl der DRM-Inhalts-IDs im paContentId-Array an. Das Array kann 0 oder mehr Inhalts-IDs enthalten.

[out] pMixedContentId

Ausgabezeiger für die ID des zusammengesetzten Inhalts. Dieser Parameter verweist auf eine vom Aufrufer zugewiesene ULONG-Variable, in die die Funktion die neue Inhalts-ID für den zusammengesetzten KS-Audiodatenstrom schreibt. Wenn cContentId null ist, weist die Funktion der neuen Inhalts-ID DRM-Standardinhaltsrechte zu.

Rückgabewert

DrmCreateContentMixed gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich war. Andernfalls wird ein geeigneter Fehlercode zurückgegeben.

Hinweise

Ein KS-Audiofilter ruft die DrmCreateContentMixed Funktion auf, um eine DRM-Inhalts-ID für einen zusammengesetzten Stream abzurufen. Der Filter erzeugt diesen Stream, indem er die KS-Audiostreams mischt, deren Inhalts-IDs im paContentId-Array aufgeführt sind. Angesichts dieser Liste der Inhalts-IDs für die Streams an den Mixereingaben berechnet die Funktion die Inhaltsrechte des zusammengesetzten Datenstroms und weist diesem Stream eine neue Inhalts-ID zu.

Wenn der Aufrufer keine Inhalts-IDs angibt (d. h. wenn cContentId null ist), weist die Funktion der Inhalts-ID, die sie erstellt, standardinhaltliche Rechte zu, um den zusammengesetzten Stream zu identifizieren.

Nach dem Abrufen einer Inhalts-ID von DrmCreateContentMixedkann der Aufrufer die inhaltsbezogenen Rechte abrufen, die der Inhalts-ID zugewiesen sind, indem er DrmGetContentRights aufruft.

Nach einer Änderung der Inhaltsrechte einer der Komponenten eines zusammengesetzten Audiostreams muss der KS-Audiofilter, der den Stream mischt, aufrufen DrmCreateContentMixed , um eine neue Inhalts-ID für den zusammengesetzten Audiodatenstrom zu erhalten. DrmCreateContentMixed bestimmt die restriktivsten Inhaltsrechte, die den einzelnen Im paContentId-Array angegebenen Inhalts-IDs zugewiesen sind, und weist diese Rechte der neuen Inhalts-ID zu.

Nachdem ein KS-Audiofilter mit einer Inhalts-ID fertig gestellt wurde, die er mit DrmCreateContentMixederstellt hat, muss der Filter DrmDestroyContent aufrufen, um die Inhalts-ID zu löschen. Vor dem Löschen einer alten Inhalts-ID muss der KS-Audiofilter jedoch zunächst erfolgreich eine neue Inhalts-ID an alle Streams weiterleiten, an die er zuvor die alte Inhalts-ID weitergeleitet hat. Der KS-Audiofilter leitet eine Inhalts-ID weiter, indem eine DrmForwardContentToXxx-Funktion aufgerufen wird .

DrmCreateContentMixed führt die gleiche Funktion wie PcCreateContentMixed und IDrmPort::CreateContentMixed aus. Weitere Informationen finden Sie unter DRM-Funktionen und -Schnittstellen.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header drmk.h (drmk.h einschließen)
Bibliothek Drmk.lib
IRQL PASSIVE_LEVEL

Weitere Informationen

DEFINE_DRMRIGHTS_DEFAULT

DrmDestroyContent

DrmForwardContentToDeviceObject

DrmForwardContentToInterface

DrmGetContentRights

IDrmPort::CreateContentMixed

PcCreateContentMixed