View a markdown version of this page

SPEKE API v2.0 - Verschlüsselungsvertrag - Secure Packager and Encoder Key Exchange API-Spezifikation

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

SPEKE API v2.0 - Verschlüsselungsvertrag

Der Verschlüsselungsvertrag definiert anhand der Eigenschaften der Tracks, welche Inhaltsschlüssel welche Tracks innerhalb eines bestimmten Streamsets schützen.

Die Verwendung mehrerer Inhaltsschlüssel für verschiedene Titel in einem Streamset ist zwar eine branchenweit empfohlene Praxis, aber nicht zwingend erforderlich, wird aber empfohlen — mindestens zwei verschiedene Inhaltsschlüssel, einen für Audiotracks und einen für Videotracks. Die Verwendung eines einzigen Inhaltsschlüssels zum Verschlüsseln mehrerer Titel ist möglich, muss aber in dem CPIX-Dokument, das vom Verschlüsseler an den Schlüsselanbieter gesendet wird, explizit signalisiert werden. Im Allgemeinen beschreibt der Verschlüsseler immer genau, wie viele Inhaltsschlüssel benötigt werden und wie sie zum Verschlüsseln der verschiedenen Medientracks verwendet werden.

Prinzipien

Der Verschlüsselungsvertrag befindet sich im <cpix:ContentKeyUsageRuleList> Abschnitt des CPIX-Dokuments. In diesem Abschnitt entspricht jeder im <cpix:ContentKeyList> Abschnitt definierte Inhaltsschlüssel einem bestimmten <cpix:ContentKeyUsageRule> Element, das Folgendes beinhalten muss:

  • ein ContentKeyUsageRule@intendedTrackType Attribut, das auf eine oder mehrere Unterkomponenten verweisen kann, getrennt durch das Pluszeichen, wenn mehrere Unterkomponenten verwendet werden. Der Wert von ContentKeyUsageRule@intendedTrackType muss in einem Verschlüsselungsvertrag eindeutig sein und kann nicht in mehreren ContentKeyUsageRule Elementen verwendet werden.

  • ein oder mehrere <cpix:AudioFilter> oder <cpix:VideoFilter> untergeordnete Elemente, abhängig vom Wert des ContentKeyUsageRule@intendedTrackType Attributs.

Für diese Beziehung gelten die folgenden Regeln:

  • Wenn alle Audio- und Videospuren des Streamsets mit einem eindeutigen Inhaltsschlüssel geschützt werden müssen, 'ALL' muss die Zeichenfolge als ContentKeyUsageRule@intendedTrackType Attributwert verwendet werden. Beispiel 1 zeigt einen solchen Anwendungsfall. In dieser Situation müssen <cpix:AudioFilter /> sowohl ein als auch ein <cpix:VideoFilter /> untergeordnetes Element ohne Attribut enthalten sein. Jede andere Kombination von <cpix:AudioFilter> and/or <cpix:VideoFilter> Elementen ist in diesem speziellen Kontext ungültig.

  • In allen anderen Anwendungsfällen kann der Wert des ContentKeyUsageRule@intendedTrackType Attributs frei definiert werden, und die Anzahl der <cpix:AudioFilter /> <cpix:VideoFilter /> untergeordneten Elemente muss der Anzahl der Unterkomponenten entsprechen, die durch das Pluszeichen aggregiert werden. Beispiele 2/3//4/56/7/9/10 veranschaulichen diese Anforderung, wenn eine einzelne Unterkomponente im Attributwert vorhanden ist. ContentKeyUsageRule@intendedTrackType Beispiel 8 veranschaulicht es, wenn mehrere Unterkomponenten verwendet werden: ContentKeyUsageRule@intendedTrackType="SD+HD" wird durch zwei verschiedene <cpix:VideoFilter> untergeordnete Elemente mit unterschiedlichen Attributwerten beschrieben, und ContentKeyUsageRule@intendedTrackType="HDR+HFR+UHD" wird durch drei verschiedene <cpix:VideoFilter> untergeordnete Elemente mit unterschiedlichen Attributwerten beschrieben.

Filter

CPIX definiert mehrere Filterelemente und Attribute, aber SPEKE unterstützt nur eine Teilmenge davon. Die folgende Tabelle fasst diese Unterschiede zusammen:

CPIX-Filtertyp Allgemeine SPEKE-Unterstützung Von SPEKE unterstützte Filterattribute Filterattribute werden von SPEKE nicht unterstützt

<cpix : >VideoFilter

Ja

minPixels, maxPixels, hdr, minFps, maxFps (optionale Attribute)

wcg

<cpix : >AudioFilter

Ja

minChannels, maxChannels (optionale Attribute)

<cpix : >KeyPeriodFilter

Ja

periodID (obligatorisches Attribut)

<cpix : >BitrateFilter

Nein

N/A

N/A

<cpix : >LabelFilter

Nein

N/A

N/A

Gemäß der CPIX-Spezifikation für ist [MinPixels VideoFilter, MaxPixels] ein allumfassender Bereich in beiden Dimensionen, während (minFps, maxFps] nur für die MaxFps-Dimension inklusiv ist. Denn [minChannels AudioFilter, maxChannels] ist ein inklusiver Bereich in beiden Dimensionen.

Problematische Situationen

Es gibt Situationen, in denen die im Verschlüsselungsvertrag bereitgestellten Informationen teilweise, mehrdeutig oder falsch sein können. In diesen Fällen ist es wichtig, dass sich der Verschlüsseler und der Schlüsselanbieter angemessen verhalten und einen angemessenen Schutz der Inhalte gewährleisten. Die folgende Tabelle zeigt das empfohlene Verhalten in diesen Situationen:

In dieser Situation Der Verschlüsseler... should/shall Der Schlüsselanbieter... should/shall

Für einen oder mehrere Tracks im Streamset gilt keine Regel (siehe Beispiel 3 unten)

Der Verschlüsseler sollte seine Konfiguration (außerhalb der CPIX-Payload) überprüfen und sicherstellen, dass die betreffenden Tracks nicht verschlüsselt werden müssen. Wenn dies nicht der Erwartung entspricht, sollte der Verschlüsseler einen Fehler ausgeben und die Verarbeitung beenden.

Nicht relevant: Der Schlüsselanbieter hat keine Kenntnis von der Streamset-Struktur.

Mehrere Regeln überschneiden sich und schlagen mehrere Inhaltsschlüssel vor, um einen bestimmten Titel zu verschlüsseln

Der Verschlüsseler sollte den zuletzt ContentKeyUsageRule erfolgreich ausgewerteten Code in der Reihenfolge des Dokuments anwenden.

Nicht relevant: Der Schlüsselanbieter hat keine Kenntnis von der Streamset-Struktur.

Der Verschlüsselungsvertrag ändert sich in einem einzigen SPEKE-Zyklus request/response

Der Verschlüsseler löst eine Ausnahme aus und stoppt die Verarbeitung, da der Schlüsselanbieter nicht für die Festlegung des Verschlüsselungsvertrags verantwortlich ist.

Um zu verhindern, dass diese Situation von vornherein eintritt, darf der Schlüsselanbieter einen Verschlüsselungsvertrag, der in der CPIX-Payload der SPEKE-Anfrage eingegangen ist, nicht ändern.

Falsch formatierter Verschlüsselungsvertrag: Ausnahme bei der intendedTrackType/Filters Kardinalitätsbeschränkung, nicht unterstützte Filter oder Attribute

Der Verschlüsseler löst eine Ausnahme aus, stoppt die Verarbeitung und sendet die SPEKE-Anfrage nicht an den Schlüsselanbieter, da dies höchstwahrscheinlich zu einem fehlerhaften Inhaltsschutz führen oder einige Titel ungeschützt lassen würde.

Der Schlüsselanbieter löst eine Ausnahme aus und gibt den Fehler „Falscher Verschlüsselungsvertrag“ zurück.

Gut ausgearbeiteter Verschlüsselungsvertrag, der jedoch gegen die DRM-Sicherheitsvorschriften verstößt. So wird beispielsweise ein einziger Inhaltsschlüssel angefordert, um sowohl Audio- als auch UHD-Videospuren zu schützen

Wenn der Verschlüsseler Kenntnis von den DRM-Sicherheitsstufen hat, sollte er eine Ausnahme auslösen, die Verarbeitung beenden und die SPEKE-Anfrage nicht an den Schlüsselanbieter senden, da dies höchstwahrscheinlich zu einem fehlerhaften Inhaltsschutz führen würde.

Der Schlüsselanbieter löst eine Ausnahme aus und gibt die Fehlermeldung „Angeforderter CPIX-Verschlüsselungsvertrag wird nicht unterstützt“ zurück.

Fehlender Verschlüsselungsvertrag

Der Verschlüsseler darf keine CPIX-Dokumente senden, die keines oder VideoFilter -Elements enthalten. AudioFilter

Der Schlüsselanbieter löst eine Ausnahme aus und gibt den Fehler „Fehlender CPIX-Verschlüsselungsvertrag“ zurück.

Beispiele für Verschlüsselungsverträge

Beispiel 1: Ein Inhaltsschlüssel für alle Audio- und Videospuren

<cpix:ContentKeyUsageRuleList> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="ALL"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter /> <cpix:VideoFilter /> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>

Beispiel 2: Ein Inhaltsschlüssel für alle Videospuren, ein Inhaltsschlüssel für alle Audiospuren

<cpix:ContentKeyUsageRuleList> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="VIDEO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter /> </cpix:ContentKeyUsageRule> <cpix:ContentKeyUsageRule kid="53abdba2-f210-43cb-bc90-f18f9a890a02" intendedTrackType="AUDIO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter /> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>

Beispiel 3: Ein Inhaltsschlüssel für alle Videospuren, unverschlüsselte Audiospuren

<cpix:ContentKeyUsageRuleList> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="VIDEO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter /> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>

Beispiel 4: mehrere Inhaltsschlüssel für verschiedene Videospuren (SD/HD), ein Inhaltsschlüssel für alle Audiospuren

<cpix:ContentKeyUsageRuleList> <!-- Rule for SD video tracks (up to 1024x576) --> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="SD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter maxPixels="589824" /> </cpix:ContentKeyUsageRule> <!-- Rule for HD video tracks (more than 1024x576) --> <cpix:ContentKeyUsageRule kid="37e3de05-9a3b-4c69-8970-63c17a95e0b7" intendedTrackType="HD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="589825" /> </cpix:ContentKeyUsageRule> <!-- Rule for all audio tracks --> <cpix:ContentKeyUsageRule kid="53abdba2-f210-43cb-bc90-f18f9a890a02" intendedTrackType="AUDIO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter /> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>

Beispiel 5: mehrere Inhaltsschlüssel für verschiedene Videospuren (SD/HD/UHD), ein Inhaltsschlüssel für alle Audiospuren

<cpix:ContentKeyUsageRuleList> <!-- Rule for SD video tracks (up to 1024x576) --> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="SD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter maxPixels="589824" /> </cpix:ContentKeyUsageRule> <!-- Rule for HD video tracks (more than 1024x576, up to 1920x1080) --> <cpix:ContentKeyUsageRule kid="37e3de05-9a3b-4c69-8970-63c17a95e0b7" intendedTrackType="HD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="589825" maxPixels="2073600" /> </cpix:ContentKeyUsageRule> <!-- Rule for UHD video tracks (more than 1920x1080) --> <cpix:ContentKeyUsageRule kid="75c6fa78-8b5d-6d75-9653-26f41b78d1a3" intendedTrackType="UHD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="2073601" /> </cpix:ContentKeyUsageRule> <!-- Rule for all audio tracks --> <cpix:ContentKeyUsageRule kid="53abdba2-f210-43cb-bc90-f18f9a890a02" intendedTrackType="AUDIO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter /> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>

Beispiel 6: mehrere Inhaltsschlüssel für verschiedene Videospuren (SD/HD/UHD1/UHD2), ein Inhaltsschlüssel für alle Audiospuren

<cpix:ContentKeyUsageRuleList> <!-- Rule for SD video tracks (up to 1024x576) --> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="SD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter maxPixels="589824" /> </cpix:ContentKeyUsageRule> <!-- Rule for HD video tracks (more than 1024x576, up to 1920x1080) --> <cpix:ContentKeyUsageRule kid="37e3de05-9a3b-4c69-8970-63c17a95e0b7" intendedTrackType="HD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="589825" maxPixels="2073600" /> </cpix:ContentKeyUsageRule> <!-- Rule for UHD1 video tracks (more than 1920x1080, up to 4096x2160) --> <cpix:ContentKeyUsageRule kid="75c6fa78-8b5d-6d75-9653-26f41b78d1a3" intendedTrackType="UHD1"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="2073601" maxPixels="8847360" /> </cpix:ContentKeyUsageRule> <!-- Rule for UHD2 video tracks (more than 4096x2160) --> <cpix:ContentKeyUsageRule kid="63d2ec36-6b7c-9f34-4546-97d01f36f7c5" intendedTrackType="UHD2"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="8847361" /> </cpix:ContentKeyUsageRule> <!-- Rule for all audio tracks --> <cpix:ContentKeyUsageRule kid="53abdba2-f210-43cb-bc90-f18f9a890a02" intendedTrackType="AUDIO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter /> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>

Beispiel 7: mehrere Inhaltsschlüssel für verschiedene Videospuren (SD/HD1/HD2/UHD1/UHD2), ein Inhaltsschlüssel für alle Audiospuren

<cpix:ContentKeyUsageRuleList> <!-- Rule for SD video tracks (up to 1024x576) --> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="SD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter maxPixels="589824" /> </cpix:ContentKeyUsageRule> <!-- Rule for HD1 video tracks (more than 1024x576, up to 1280x720) --> <cpix:ContentKeyUsageRule kid="37e3de05-9a3b-4c69-8970-63c17a95e0b7" intendedTrackType="HD1"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="589825" maxPixels="921600" /> </cpix:ContentKeyUsageRule> <!-- Rule for HD2 video tracks (more than 1280x720, up to 1920x1080) --> <cpix:ContentKeyUsageRule kid="cda406d8-9d87-4f76-92da-31110e756176" intendedTrackType="HD2"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="921601" maxPixels="2073600" /> </cpix:ContentKeyUsageRule> <!-- Rule for UHD1 video tracks (more than 1920x1080, up to 4096x2160) --> <cpix:ContentKeyUsageRule kid="75c6fa78-8b5d-6d75-9653-26f41b78d1a3" intendedTrackType="UHD1"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="2073601" maxPixels="8847360" /> </cpix:ContentKeyUsageRule> <!-- Rule for UHD2 video tracks (more than 4096x2160) --> <cpix:ContentKeyUsageRule kid="63d2ec36-6b7c-9f34-4546-97d01f36f7c5" intendedTrackType="UHD2"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter minPixels="8847361" /> </cpix:ContentKeyUsageRule> <!-- Rule for all audio tracks --> <cpix:ContentKeyUsageRule kid="53abdba2-f210-43cb-bc90-f18f9a890a02" intendedTrackType="AUDIO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter /> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>

Beispiel 8: mehrere Inhaltsschlüssel für verschiedene Videospuren (basierend auf mehreren Attributtypen), ein Inhaltsschlüssel für alle Audiospuren

<cpix:ContentKeyUsageRuleList> <!-- Rule for SD and HD video tracks--> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="SD+HD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter maxPixels="442368" maxFps="30" hdr="false"/> <cpix:VideoFilter minPixels="442369" maxPixels="2073600" maxFps="30" hdr="false"/> </cpix:ContentKeyUsageRule> <!-- Rule for HDR, HFR and UHD video tracks--> <cpix:ContentKeyUsageRule kid="37e3de05-9a3b-4c69-8970-63c17a95e0b7" intendedTrackType="HDR+HFR+UHD"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter hdr="true" /> <cpix:VideoFilter minFps="30" /> <cpix:VideoFilter minPixels="20736001" /> </cpix:ContentKeyUsageRule> <!-- Rule for all audio tracks--> <cpix:ContentKeyUsageRule kid="53abdba2-f210-43cb-bc90-f18f9a890a02" intendedTrackType="AUDIO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter /> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>

Beispiel 9: ein Inhaltsschlüssel für alle Videospuren, mehrere Inhaltsschlüssel für Stereo- und Mehrkanal-Audiospuren

<cpix:ContentKeyUsageRuleList> <!-- Rule for video tracks--> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="VIDEO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter /> </cpix:ContentKeyUsageRule> <!-- Rule for stereo audio tracks--> <cpix:ContentKeyUsageRule kid="53abdba2-f210-43cb-bc90-f18f9a890a02" intendedTrackType="STEREO_AUDIO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter maxChannels="2"/> </cpix:ContentKeyUsageRule> <!-- Rule for multichannel audio tracks--> <cpix:ContentKeyUsageRule kid="7ae8e96f-309e-42c3-a510-24023d923373" intendedTrackType="MULTICHANNEL_AUDIO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <AudioFilter minChannels="3"/> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>

Beispiel 10: Ein Inhaltsschlüssel für alle Videospuren, mehrere Inhaltsschlüssel für Stereo und zwei Arten von Mehrkanal-Audiospuren

<cpix:ContentKeyUsageRuleList> <!-- Rule for video tracks--> <cpix:ContentKeyUsageRule kid="98ee5596-cd3e-a20d-163a-e382420c6eff" intendedTrackType="VIDEO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:VideoFilter /> </cpix:ContentKeyUsageRule> <!-- Rule for stereo audio tracks--> <cpix:ContentKeyUsageRule kid="53abdba2-f210-43cb-bc90-f18f9a890a02" intendedTrackType="STEREO_AUDIO"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter maxChannels="2"/> </cpix:ContentKeyUsageRule> <!-- Rule for multichannel audio tracks (3 to 6 channels)--> <cpix:ContentKeyUsageRule kid="7ae8e96f-309e-42c3-a510-24023d923373" intendedTrackType="MULTICHANNEL_AUDIO_3_6"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter minChannels="3" maxChannels="6"/> </cpix:ContentKeyUsageRule> <!-- Rule for multichannel audio tracks (7 channels and more)--> <cpix:ContentKeyUsageRule kid="81eb3761-55ff-4d22-a31d-94f01bbfd8ba" intendedTrackType="MULTICHANNEL_AUDIO_7"> <cpix:KeyPeriodFilter periodId="keyPeriod_0909829f-40ff-4625-90fa-75da3e53278f"/> <cpix:AudioFilter minChannels="7"/> </cpix:ContentKeyUsageRule> </cpix:ContentKeyUsageRuleList>