| CPC H04N 21/2347 (2013.01) [H04L 9/0819 (2013.01); H04L 9/0822 (2013.01); H04L 9/0861 (2013.01); H04L 9/14 (2013.01); H04L 9/32 (2013.01); H04L 63/0428 (2013.01); H04N 21/2541 (2013.01); H04N 21/4408 (2013.01); H04N 21/4627 (2013.01); H04N 21/6334 (2013.01); H04N 21/64715 (2013.01); H04L 2209/603 (2013.01)] | 36 Claims |

|
1. A playback device for playing protected video from a plurality of alternative streams, comprising:
a set of one or more processors; and
a non-volatile storage containing an application for causing the set of one or more processors to perform the steps of:
obtaining a top level index identifying a plurality of alternative streams of protected video, wherein each of the alternative streams of protected video includes partially encrypted encoded video frame data,
wherein the partially encrypted encoded video frame data contains encrypted portions and unencrypted portions of data;
obtaining common cryptographic information, where each of the plurality of alternative streams of protected video is protected using the common cryptographic information;
obtaining a container index that provides byte ranges for portions of a container file that contains one of the plurality of alternative streams of protected video;
requesting portions of the container file based on the provided byte ranges;
locating, within the requested portions of the container file, encryption information that identifies the size and location of encrypted portions of partially encrypted encoded video frame data that is also contained within the requested portions of the container file;
decrypting each encrypted portion of the partially encrypted encoded video frame data identified using the located encryption information, where the decryption process utilizes the common cryptographic information;
decoding the decrypted encoded video frame data and unencrypted encoded video frame data to obtain decoded frames of video; and
playing back the decoded frames of video.
|