Codec techniques for fast switching with intermediate sequence

US9900629B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9900629-B2
Application numberUS-201313800905-A
CountryUS
Kind codeB2
Filing dateMar 13, 2013
Priority dateMar 13, 2013
Publication dateFeb 20, 2018
Grant dateFeb 20, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A video streaming method for transitioning between multiple sequences of coded video data may include receiving and decoding transmission units from a first sequence of coded video data. In response to a request to transition to a second sequence of coded video data, the method may determine whether a time to transition to the second sequence of coded video data can be reduced by transitioning to the second sequence of coded video data via an intermediate sequence of coded video data. If the time can be reduced, the method may include receiving at least one transmission unit from an intermediate sequence of coded video data that corresponds to the request to transition, decoding the transmission unit from the intermediate sequence, and transitioning from the first sequence to the second sequence via the decoded transmission unit from the intermediate sequence.

First claim

Opening claim text (preview).

We claim: 1. A video streaming method, comprising: receiving, at a client device, transmission units from a first sequence of coded video data; decoding, at the client device, the transmission units from the first sequence; in response to a request at the client device to transition to a second sequence of coded video data, determining from a manifest file, at the client device, whether a time to transition to the second sequence of coded video data can be reduced at the client device by transitioning to the second sequence of coded video data via an intermediate sequence of coded video data; if it is determined by the client device that the time can be reduced: requesting, from the client device, at least one transmission unit from the intermediate sequence of coded video data that corresponds to the request to transition, receiving and decoding the at least one transmission unit from the intermediate sequence at the client device, and transitioning from the first sequence to the second sequence via the at least one decoded transmission unit from the intermediate sequence received at the client device; otherwise, if it is determined by the client device that the time cannot be reduced: requesting, from the client device, transmission units from the second sequence of coded video data; and receiving and decoding the requested transmission units from the second sequence of coded video data at the client device, where the determining is derived from data contained in the manifest file that is received from a source of the transmission units of the second sequence of coded video data that describes a correlation between the transmission units of the intermediate sequence and the transmission units of the second sequence. 2. The method of claim 1 , wherein the intermediate sequence of coded video data is coded at a lower bit rate than a bit rate of the second sequence of coded video data. 3. The method of claim 1 , wherein a duration of the transmission units in the intermediate sequence is smaller than a duration of the transmission units in the second sequence. 4. The method of claim 1 , wherein content of the first sequence of coded video data and the second sequence of coded video data are live broadcast. 5. The method of claim 1 , wherein the transition from the intermediate sequence to the second sequence is processed when a synchronization frame is encountered in the second sequence. 6. The method of claim 1 , wherein: the intermediate sequence is part of a plurality of staggered intermediate sequences of coded video data that include transmission units in each of the staggered sequences having different durations and the transmission units are staggered such that synchronization frames of the plurality of staggered sequences are staggered; and wherein the third intermediate sequence includes a synchronization frame that corresponds to the request to transition. 7. The method of claim 6 , wherein content of the first sequence of coded video data and the second sequence of coded video data are live broadcast. 8. The method of claim 6 , wherein the synchronization frames in each of the transmission units of the plurality of staggered sequences are located at the beginning of the transmission units. 9. The method of claim 6 , wherein the last frame of each of the transmission units of the plurality of staggered sequences is aligned with one of the synchronization frames of the second sequence. 10. The method of claim 1 , further comprising: in response to a request to fast forward or rewind the content of the first sequence: selecting at least one of a plurality of channels including reference frames, each of the channels including reference frames that are staggered from the reference frames in the other channels and at least one of the channels includes the reference frames at a frequency that is higher than a frequency of the reference frames in the other channels, and displaying the reference frames from the selected channels. 11. The method of claim 10 , wherein the channels are selected based on a speed of the fast forward or rewind request. 12. The method of claim 11 , wherein more channels are selected to provide additional reference frames for slower fast forward or rewind request and fewer channels are selected to provide fewer reference frames for faster fast forward or rewind request. 13. The method of claim 1 , further comprising: determining whether a time to transition to the second sequence of coded video data exceeds a predetermined transition time; and if the time to transition exceeds a predetermined transition time, slowing down playback of content of at least one of the first sequence of coded video data and the second sequence of coded video data. 14. The method of claim 13 , wherein the predetermined transition time is determined based on a time needed to buffer and decode the second sequence of coded video data at the time of the request to transition to the second sequence of coded video data. 15. The method of claim 1 , further comprising: determining whether a time to transition to the second sequence of coded video data via an animated transition exceeds a predetermined transition time; and if the time to transition exceeds a predetermined transition time, adjusting a speed of the animated transition between the first sequence of coded video data and the second sequence of coded video data. 16. The method of claim 15 , wherein the predetermined transition time is determined based on a time needed to buffer and decode the second sequence of coded video data at the time of the request to transition to the second sequence of coded video data. 17. The method of claim 15 , wherein the first sequence of coded video data includes video content having a first resolution, the second sequence of coded video data include video content having a second resolution, and the animated transition is adjusted to slow down the animated transition from the first resolution to the second resolution. 18. The method of claim 1 , where the determining is performed by a client device that performs the requesting, receiving and decoding steps. 19. A non-transitory computer-readable medium embodied with computer-executable instructions for causing a computer to execute instructions according to a method that comprises: receiving, at a client device, transmission units from a first sequence of coded video data; decoding, at the client device, the transmission units from the first sequence; in response to a request at the client device to transition to a second sequence of coded video data, determining from a manifest file, at the client device, whether a time to transition to the second sequence of coded video data can be reduced at the client device by transitioning to the second sequence of coded video data via a third intermediate sequence of coded video data; and if it is determined by the client device that the time can be reduced: requesting, from the client device, at least one transmission unit from the third intermediate sequence of coded video data that corresponds to the request to transition, receiving and decoding the at least one transmission unit from the third intermediate sequence at the client device, and transitioning from the first sequence to the second sequence via the at least one decoded transmission unit from the third intermediate sequence received at the client device; otherwise, if it is determined by the client device that the time cannot be reduced: requesting transmission un

Assignees

Inventors

Classifications

  • for generating different versions · CPC title

  • for performing aspect ratio conversion · CPC title

  • involving video buffer management, e.g. video decoder buffer or video display buffer · CPC title

  • Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network {(transmission of MPEG streams over ATM H04L12/5601)} · CPC title

  • involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9900629B2 cover?
A video streaming method for transitioning between multiple sequences of coded video data may include receiving and decoding transmission units from a first sequence of coded video data. In response to a request to transition to a second sequence of coded video data, the method may determine whether a time to transition to the second sequence of coded video data can be reduced by transitioning …
Who is the assignee on this patent?
Apple Inc
What technology area does this patent fall under?
Primary CPC classification H04N21/234372. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Feb 20 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).