US 11,818,374 B2
System and method for synchronizing timing across multiple streams
Yasser F. Syed, La Crescenta, CA (US); and Danial Holden, Greenwood Village, CO (US)
Assigned to Comcast Cable Communications, LLC, Philadelphia, PA (US)
Filed by Comcast Cable Communications, LLC, Philadelphia, PA (US)
Filed on Jun. 4, 2021, as Appl. No. 17/338,817.
Application 15/713,150 is a division of application No. 15/149,381, filed on May 9, 2016, abandoned.
Application 17/338,817 is a continuation of application No. 16/843,040, filed on Apr. 8, 2020, granted, now 11,057,633.
Application 16/843,040 is a continuation of application No. 15/713,150, filed on Sep. 22, 2017, granted, now 10,652,562, issued on May 12, 2020.
Application 15/149,381 is a continuation of application No. 13/326,563, filed on Dec. 15, 2011, granted, now 9,380,327, issued on Jun. 28, 2016.
Prior Publication US 2022/0030261 A1, Jan. 27, 2022
Int. Cl. H04N 7/12 (2006.01); H04N 19/177 (2014.01); H04N 19/40 (2014.01); H04N 21/234 (2011.01); H04N 21/242 (2011.01); H04N 21/2343 (2011.01); H04N 19/103 (2014.01); H04N 19/184 (2014.01); H04N 19/115 (2014.01); H04N 19/156 (2014.01)
CPC H04N 19/40 (2014.11) [H04N 19/103 (2014.11); H04N 19/184 (2014.11); H04N 21/23424 (2013.01); H04N 21/23439 (2013.01); H04N 21/242 (2013.01); H04N 19/115 (2014.11); H04N 19/156 (2014.11)] 24 Claims
OG exemplary drawing
 
1. A method comprising:
receiving, by a first computing device, a plurality of streams for a content item comprising a plurality of segments, wherein:
each stream of the plurality of streams is encoded at a different bit rate and comprises, for each segment of the plurality of segments, a plurality of frames, and
one or more frames of the pluralities of frames are aligned in the plurality of streams based on correspondence to same segments of the plurality of segments;
sending, to a second computing device, a first plurality of frames received via a first stream of the plurality of streams and corresponding to a first segment of the plurality of segments;
selecting, based on determined support for higher quality frames, a second stream of the plurality of streams; and
sending, to the second computing device from the selected second stream, a second plurality of frames corresponding to a second segment of the plurality of segments.