Systems and methods for protecting alternative streams in adaptive bitrate streaming systems
First Claim
Patent Images
1. A source encoder, comprising:
- a processor;
non-volatile storage containing an encoding application for encoding and protecting frames of video to create a plurality of alternative streams of protected content;
wherein the encoding application configures the processor to;
receive a source content;
obtain a common set of frame keys comprising a plurality of frame keys;
encode the source content as a plurality of streams including a plurality of alternative streams of content, wherein each alternative stream of content comprises a plurality of encoded video frames;
encrypt portions of several encoded video frames from each alternative stream of content using keys from the same common set of frame keys;
after encrypting the portions of encoded video frames, write the encoded video frames of each alternative stream of protected content to a separate container file from a plurality of container files and, for each encoded video frame with an encrypted portion that is written to a given container file, write a DRM information to the given container file that identifies (i) an encrypted portion of the encoded video frame and (ii) a frame key from the common set of frame keys that can be utilized by a playback device to access the encrypted portion of the encoded video frame; and
store an encrypted copy of the common set of frame keys in each container file, wherein each encrypted copy of the common set of frame keys has been encrypted with at least one encryption key.
5 Assignments
0 Petitions
Accused Products
Abstract
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 includes a processor, and non-volatile storage containing an encoding application. In addition, the encoding application configures the processor to: receive source content; obtain common cryptographic information; encode the source content as a plurality of streams including a plurality of alternative streams of content; and protect the plurality of alternative streams of content using the common cryptographic information.
269 Citations
38 Claims
-
1. A source encoder, comprising:
-
a processor; non-volatile storage containing an encoding application for encoding and protecting frames of video to create a plurality of alternative streams of protected content; wherein the encoding application configures the processor to; receive a source content; obtain a common set of frame keys comprising a plurality of frame keys; encode the source content as a plurality of streams including a plurality of alternative streams of content, wherein each alternative stream of content comprises a plurality of encoded video frames; encrypt portions of several encoded video frames from each alternative stream of content using keys from the same common set of frame keys; after encrypting the portions of encoded video frames, write the encoded video frames of each alternative stream of protected content to a separate container file from a plurality of container files and, for each encoded video frame with an encrypted portion that is written to a given container file, write a DRM information to the given container file that identifies (i) an encrypted portion of the encoded video frame and (ii) a frame key from the common set of frame keys that can be utilized by a playback device to access the encrypted portion of the encoded video frame; and store an encrypted copy of the common set of frame keys in each container file, wherein each encrypted copy of the common set of frame keys has been encrypted with at least one encryption key. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of encoding and protecting source content as a plurality of alternative streams of protected content, comprising:
-
receiving a source content using a source encoder; obtaining a common set of frame keys comprising a plurality of frame keys using the source encoder; encoding the source content as a plurality of streams including a plurality of alternative streams of content using the source encoder, wherein each alternative stream of content comprises a plurality of encoded video frames; encrypting portions of several encoded video frames from each alternative stream of content using keys from the same common set of frame keys and the source encoder; after encrypting the portions of encoded video frames, writing the encoded video frames of each given alternative stream of protected content to a separate container file from a plurality of container files using the source encoder and, for each encoded video frame with an encrypted portion that is written to a given container file, writing a DRM information to the given container file that identifies (i) an encrypted portion of the encoded video frame and (ii) a frame key from the common set of frame keys that can be utilized by a playback device to access the encrypted portion of the encoded video frame; and storing an encrypted copy of the common set of frame keys in each container file using the source encoder, wherein each encrypted copy of the common set of frame keys has been encrypted with at least one encryption key. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory machine readable medium containing processor instructions, where execution of the instructions by a processor causes the processor to perform a process comprising:
-
receiving a source content; obtaining a common set of frame keys comprising a plurality of frame keys; encoding the source content as a plurality of streams including a plurality of alternative streams of content, wherein each alternative stream of content comprises a plurality of encoded video frames; encrypting portions of several encoded video frames from each alternative stream of content using keys from the same common set of frame keys; after encrypting the portions of encoded video frames, writing the encoded video frames of each given alternative stream of protected content to a separate container file and, for each encoded video frame with an encrypted portion that is written to a given container file, writing a DRM information to the given container file that identifies an encrypted portion of the encoded video frame and a frame key from the common set of frame keys that can be utilized by a playback device to access the encrypted portion of the encoded video frame; and storing an encrypted copy of the common set of frame keys in each container file, wherein each encrypted copy of the common set of frame keys has been encrypted with at least one encryption key.
-
-
18. A content distribution system, comprising:
-
a DRM server; a content distribution server; a source encoder configured to; receive source content; obtain a common set of frame keys comprising a plurality of frame keys from the DRM server; encode the source content as a plurality of streams including a plurality of alternative streams of content associated with a title, wherein each alternative stream of content comprises a plurality of encoded video frames; encrypt portions of several encoded video frames from each alternative stream of content using keys from the same common set of frame keys; after encrypting the portions of encoded video frames, write the encoded video frames of each alternative stream of protected content to a separate container file from a plurality of container files and, for each encoded video frame with an encrypted portion that is written to a given container file, write a DRM information to the given container file that identifies (i) an encrypted portion of the encoded video frame and (ii) a frame key from the common set of frame keys that can be utilized by a playback device to access the encrypted portion of the encoded video frame; store an encrypted copy of the common set of frame keys in each container file, wherein each encrypted copy of the common set of frame keys has been encrypted with at least one encryption key; provide the plurality of container files containing the plurality of alternative streams of protected content associated with the title to the content distribution server; wherein the DRM server is configured to; receive a request for access to the alternative streams of protected content associated with the title from a playback device; securely provide a copy of the at least one encryption key used to encrypt the common set of frame keys to the playback device; and wherein the content distribution server is configured to grant the playback device access to the alternative streams of protected content associated with the title. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A method of distributing content encoded as a plurality of alternative streams of protected content, the method comprising:
-
receiving a source content using a source encoder; obtaining a common set of frame keys from a DRM server using the source encoder, wherein the common set of frame keys comprises a plurality of frame keys; encoding the source content as a plurality of streams including a plurality of alternative streams of content using the source encoder, wherein each alternative stream of content comprises a plurality of encoded video frames; encrypting portions of several encoded video frames from each alternative stream of content using keys from the same common set of frame keys and the source encoder; after encrypting the portions of encoded video frames, writing the encoded video frames of each given alternative stream of protected content to a separate container file from a plurality of container files using the source encoder and, for each encoded video frame with an encrypted portion that is written to a given container file, writing a DRM information to the given container file that identifies (i) an encrypted portion of the encoded video frame and (ii) a frame key from the common set of frame keys that can be utilized by a playback device to access the encrypted portion of the encoded video frame; storing an encrypted copy of the common set of frame keys in each container file using the source encoder, wherein each encrypted copy of the common set of frame keys has been encrypted with at least one encryption key; providing the plurality of container files containing the plurality of alternative streams of protected content to a content distribution server; receiving a request for access to the alternative streams of protected content from a playback device using the DRM server, wherein the plurality of alternative streams of protected content are associated with a title; securely providing to the playback device at least one encryption key using the DRM server, where the at least one encryption keys is used to access the encrypted common cryptographic information; and granting the playback device access to the alternative streams of protected content using the content distribution server. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
Specification