Systems and Methods for Playing Back Alternative Streams of Protected Content Protected Using Common Cryptographic Information

US2016112382A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016112382-A1
Application numberUS-201514970412-A
CountryUS
Kind codeA1
Filing dateDec 15, 2015
Priority dateSep 1, 2011
Publication dateApr 21, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems and methods for performing adaptive bitrate streaming using alternative streams of protected content in accordance with embodiments of the invention are described. One embodiment of the invention includes a processor, and memory containing a client application. In addition, the client application configures the processor to: request a top level index file identifying a plurality of alternative streams of protected content, where each of the alternative streams of protected content are encrypted using common cryptographic information; obtain the common cryptographic information; request portions of content from at least the plurality of alternative streams of protected content; access the protected content using the common cryptographic information; and playback the content.

First claim

Opening claim text (preview).

What is claimed: 1 . A playback device, comprising: a processor; memory containing a client application; wherein the client application configures the processor to: register with a content distribution system in order to obtain cryptographic data bound to the playback device from the content distribution system; request adaptive bitrate streaming of protected video from the content distribution system using the bound cryptographic data; obtain a top level index file from the content distribution server, wherein the top level index file identifies a plurality of alternative streams of protected video that have been protected by a common set of frame keys generated by a source encoder, and wherein the top level index file comprises (i) an encrypted copy of a first key from the common set of frame keys and (ii) a set of DRM information that identifies protected portions of the alternative streams of protected video and frame keys to utilize in accessing the protected portions of the alternative streams; obtain a first portion of protected video from a given stream of protected video from the content distribution system, wherein the first portion of protected video is protected by the first key from the common set of frame keys; decrypt the encrypted copy of the first key using the bound cryptographic data; decrypt the first portion of protected video using the decrypted first key according to the obtained set of DRM information; playback the decrypted first portion of video from the given stream; obtain a second portion of protected video from the given stream of protected video from the content distribution system, wherein the second portion of protected video is protected by a second key from the common set of frame keys; obtain an encrypted copy of the second key from the common set of frame keys from the source encoder, wherein the encrypted copy of the second key has been generated by the source encoder; decrypt the encrypted copy of the second key using the bound cryptographic data; decrypt the second portion of protected video using the decrypted second key according to the obtained set of DRM information; and playback the decrypted second portion of video from the given stream. 2 . The playback device of claim 1 , wherein: the alternative streams of protected video are encoded at different maximum bitrates using different sets of encoding parameters; and the client application further configures the processor to decode the encoded frames of video prior to playback of the obtained portions of video. 3 . The playback device of claim 1 , wherein: the plurality of alternative streams of protected video are contained in container files that comprise at least one header that includes information that describes the encoding of the stream of protected video; and the top level index file identifies the location of the at least one header within each container file. 4 . The playback device of claim 3 , wherein: each container file containing one of the alternative streams of protected video further comprises an index; and the client application further configures the processor to: request at least a portion of an index from the given container file; identify the portion of the given container file containing a specific portion of video using the index; and request the identified portion of the given container file. 5 . The playback device of claim 3 , wherein the container files are Matroska container files. 6 . The playback device of claim 5 , wherein the common set of frame keys is stored in a common DRM Header element contained within a Tracks element within each of the Matroska container files containing the alternative streams of protected video. 7 . The playback device of claim 1 , wherein the common set of frame keys is part of a frame key table that is common to each of the plurality of alternative streams. 8 . The playback device of claim 1 , wherein the client application further configures the processor to securely receive a content key, and wherein the common set of frame key is encrypted. 9 . The playback device of claim 8 , wherein the client application further configures the processor to: obtain the content key that can be used to decrypt the encrypted common set of frame keys; and decrypt the common set of frame keys using the obtained content key. 10 . The playback device of claim 8 , wherein the client application configures the processor to obtain a common DRM Header element by requesting a Tracks element from a Matroska container file identified in the top level index file. 11 . The playback device of claim 5 , wherein: each Mastroska container file containing an alternative stream of protected video further comprises an index contained within a Cues element; and the client application further configures the processor to request a portion of video from one of the Matroska container files by configuring the processor to: request at least a portion of a Cues element from a Matroska container file containing one of the alternative streams of protected video; identify a portion of the Matroska container file containing a specific portion of video using at least one CueTrackPosition element within the Cues element; and request the portion of the Matroska container file identified by the at least one CueTrackPosition element. 12 . The playback device of claim 11 , wherein the index comprises a plurality of CueTrackPosition elements that identify the location of a plurality of Cluster elements within the Matroska container file. 13 . The playback device of claim 12 , wherein: each Cluster element contains a plurality of BlockGroup elements including encoded portions of video; a CueTrack Position element indexes each Cluster element; and each CueTrackPosition element includes the size of the Cluster element that it indexes. 14 . The playback device of claim 11 , wherein: each of the Matroska container files containing an alternative stream of protected video includes a set of BlockGroup elements that each contain a DRMInfo element and an encrypted frame of video, where the DRMInfo element is a part of the set of DRM information for each of the Matroska container files; and the client application further configures the processor to decrypt encrypted video frames of the obtained portions of video using the decrypted copy of the common set of frame keys by configuring the processor to: obtain a BlockGroup containing an encrypted frame of video; parse the BlockGroup element to obtain a DRMInfo element indicating at least a portion of the encrypted frame of video that is encrypted using a frame key from the common set of frame keys; decrypt the at least one encrypted portion of the encrypted frame of video using the identified frame key; and decode the frame of video.

Assignees

Inventors

Classifications

  • for authorisation, e.g. by transmitting a key {(wireless communications network key management H04W12/04; wireless communications network access security H04W12/08)} · CPC title

  • Generation of secret information including derivation or calculation of cryptographic keys or passwords · CPC title

  • involving video stream encryption · CPC title

  • including means for verifying the identity or authority of a user of the system {or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials} · CPC title

  • Digital right managament [DRM] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016112382A1 cover?
Systems and methods for performing adaptive bitrate streaming using alternative streams of protected content in accordance with embodiments of the invention are described. One embodiment of the invention includes a processor, and memory containing a client application. In addition, the client application configures the processor to: request a top level index file identifying a plurality of alte…
Who is the assignee on this patent?
Sonic Ip Inc
What technology area does this patent fall under?
Primary CPC classification H04N21/2347. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Apr 21 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).