US 11,757,965 B2
Low latency streaming media
Roger N. Pantos, Scotts Valley, CA (US)
Assigned to APPLE INC., Cupertino, CA (US)
Filed by Apple Inc., Cupertino, CA (US)
Filed on Jan. 30, 2020, as Appl. No. 16/776,824.
Claims priority of provisional application 62/810,075, filed on Feb. 25, 2019.
Claims priority of provisional application 62/807,329, filed on Feb. 19, 2019.
Prior Publication US 2020/0267198 A1, Aug. 20, 2020
Int. Cl. H04L 65/75 (2022.01); H04N 21/24 (2011.01); H04N 21/462 (2011.01); H04N 21/442 (2011.01); H04N 21/2187 (2011.01); H04N 21/262 (2011.01); H04N 21/643 (2011.01); H04L 65/65 (2022.01); H04L 65/70 (2022.01); H04L 65/612 (2022.01)
CPC H04L 65/75 (2022.05) [H04L 65/612 (2022.05); H04L 65/65 (2022.05); H04L 65/70 (2022.05); H04N 21/2187 (2013.01); H04N 21/2402 (2013.01); H04N 21/26258 (2013.01); H04N 21/44209 (2013.01); H04N 21/4621 (2013.01); H04N 21/643 (2013.01)] 21 Claims
OG exemplary drawing
 
1. A non-transitory machine readable medium storing executable program instructions which when executed by a data processing system cause the data processing system to perform a method comprising:
receiving, at a client device from one or more server devices, a tag that indicates the one or more server devices support blocking reload;
monitoring a bandwidth of a connection used for receiving a first rendition of a streaming media provided through an HTTP compliant protocol;
determining whether to switch to a second rendition of the streaming media based on the monitored bandwidth;
requesting a first playlist for the second rendition in response to determining to switch to the second rendition;
examining, in the first playlist, one or more playlist annotations that specify whether a media segment includes one or more independent frames that can be decoded into a full image frame without using any prior frames;
skipping, prior to beginning downloads of media segments of the second rendition, a download of one or more of the media segments in the first playlist, that do not include one or more independent frames based on the one or more playlist annotations that indicate whether a respective one of the media segments includes the one or more independent frames; and
beginning downloads of the media segments in the second rendition with a first media segment that includes the one or more independent frames based on the one or more playlist annotations; and
while performing a quick tune-in to a near live point,
skipping, based on one or more rendition reports, to a last media segment in the first playlist that contains the one or more independent frames wherein the last media segment in the first playlist that contains the one or more independent frames is followed by one or more additional media segments in the first playlist that do not contain the one or more independent frames, without downloading skipped media segments.