US 12,407,906 B2
Network video streaming with trick play based on separate trick play files
Abhishek Shivadas, San Diego, CA (US); and Stephen R. Bramwell, San Diego, CA (US)
Assigned to DIVX, LLC, San Diego, CA (US)
Filed by DIVX, LLC, San Diego, CA (US)
Filed on Oct. 7, 2022, as Appl. No. 17/938,773.
Application 17/938,773 is a continuation of application No. 16/665,652, filed on Oct. 28, 2019, granted, now 11,470,405.
Application 16/665,652 is a continuation of application No. 15/651,817, filed on Jul. 17, 2017, granted, now 10,462,537, issued on Oct. 29, 2019.
Application 15/651,817 is a continuation of application No. 14/810,345, filed on Jul. 27, 2015, granted, now 9,712,890, issued on Jul. 18, 2017.
Application 14/810,345 is a continuation of application No. 13/905,852, filed on May 30, 2013, granted, now 9,094,737, issued on Jul. 28, 2015.
Prior Publication US 2023/0179837 A1, Jun. 8, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. H04N 21/845 (2011.01); H04L 65/70 (2022.01); H04N 19/98 (2014.01); H04N 21/2343 (2011.01); H04N 21/2387 (2011.01); H04N 21/262 (2011.01); H04N 21/472 (2011.01); H04N 21/6587 (2011.01); H04N 21/854 (2011.01)
CPC H04N 21/8455 (2013.01) [H04L 65/70 (2022.05); H04N 19/98 (2014.11); H04N 21/234345 (2013.01); H04N 21/234381 (2013.01); H04N 21/23439 (2013.01); H04N 21/2387 (2013.01); H04N 21/26258 (2013.01); H04N 21/47217 (2013.01); H04N 21/6587 (2013.01); H04N 21/8456 (2013.01); H04N 21/85406 (2013.01)] 14 Claims
OG exemplary drawing
 
1. A playback device, 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 normal playback of content by performing the steps of:
receiving a playlist identifying a plurality of streams of content having different encoding bitrates for adaptive bitrate streaming, wherein the playlist comprises Uniform Resource Locators (URLs) of container files for the plurality of streams;
performing adaptive bitrate streaming by switching between the plurality of streams in the received playlist, where performing adaptive bitrate streaming further comprises:
downloading at least a portion of at least one file from one of the plurality of streams using at least one of the URLs from the playlist; and
playing back video from the at least a portion of the at least one downloaded file;
wherein the application is further for causing the set of one or more processors to perform trick play playback of content by performing the steps of:
requesting a separate trick play playlist;
receiving the trick play playlist comprising at least one URL for at least one trick play file from at least one trick play stream;
downloading at least a portion of the at least one trick play file from the at least one trick play stream using the at least one URL from the trick play playlist, wherein the at least a portion of the at least one trick play file includes only key-frames in a time-ordered sequence; and
playing back video from the key-frames from the at least a portion of the at least one downloaded trick play file.