IP Library › Granted Patent US 10,652,562
Granted Patent B2
US 10,652,562 · App. 15/713,150 · Granted May 12, 2020

System and method for synchronizing timing across multiple streams

Inventors: Yasser F. Syed (La Crescenta, CA); Danial Holden (Greenwood Village, CO)
Assignee: Comcast Cable Communications, LLC
H04N19/40H04N19/103H04N19/184H04N21/23424H04N21/23439H04N21/242H04N19/115H04N19/156
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,652,562
App. No.
15/713,150
Granted
May 12, 2020
Kind
B2
Abstract

Systems and methods of adaptive streaming are discussed. Transcoded copies of a source stream may be aligned with one another such that the independently specified portions of each transcoded stream occur at the same locations within the content. These transcoded copies may be produced by one or more transcoders, whose outputs are synchronized by a delay adjuster. A fragmenter may use the synchronized and aligned streams to efficiently produce fragments suitable for use in adaptive streaming.

Claims (48)

1. A method comprising:

receiving, by a computing device, a video stream and a control signal, the control signal indicating a plurality of frame positions in the video stream;

determining, based on the control signal, a position of a first frame, in the video stream, that is to be encoded as an intra-coded frame;

determining a first set of frames in the video stream, the first set of frames beginning with the first frame;

encoding the first set of frames to generate a first encoded video at a first bit rate; and

encoding the first set of frames to generate a second encoded video at a second bit rate, wherein:

a first plurality of intra-coded frames in the first encoded video is aligned with a corresponding first plurality of intra-coded frames in the second encoded video, and

at least one intra-coded frame in the first encoded video is aligned with a corresponding non-intra-coded frame in the second encoded video.

2. The method of claim 1 , further comprising determining additional sets of frames in the video stream, each set of frames of the additional sets of frames beginning with a different frame in the video stream that is to be encoded as an intra-coded frame.

3. The method of claim 2 , wherein each set of frames of the additional sets of frames comprises a same number of frames.

4. The method of claim 2 , wherein each set of frames of the additional sets of frames comprises a different number of frames.

5. The method of claim 2 , further comprising:

encoding, using the first bit rate, each set of frames of the additional sets of frames to generate the first encoded video; and

encoding, using the second bit rate, each set of frames of the additional sets of frames to generate the second encoded video.

6. The method of claim 2 , wherein each set of frames of the additional sets of frames begins at a location of a first frame of the video stream that occurs after a preset interval.

7. The method of claim 2 , further comprising:

fragmenting the first encoded video into one or more fragments, wherein each fragment begins at a first frame of the additional sets of frames.

8. The method of claim 1 , wherein the video stream comprises a first plurality of intra-coded frames, and the first encoded video comprises a subset of the first plurality of intra-coded frames.

9. An apparatus comprising:

one or more processors; and

memory storing instructions that, when executed by one or more processors, cause the one or more processors to:

receive a video stream and a control signal, the control signal indicating a plurality of frame positions in the video stream;

determine, based on the control signal, a position of a first frame in the video stream that is to be encoded as an intra-coded frame;

determine a first set of frames in the video stream, the first set of frames beginning with the first frame;

encode the first set of frames to generate a first encoded video at a first bit rate; and

encode the first set of frames to generate a second encoded video at a second bit rate,

wherein:

a first plurality of intra-coded frames in the first encoded video is aligned with a corresponding first plurality of intra-coded frames in the second encoded video, and

at least one intra-coded frame in the first encoded video is aligned with a corresponding non-intra-coded frame in the second encoded video.

10. The apparatus of claim 9 , wherein the video stream comprises a first plurality of intra-coded frames, and the first encoded video comprises a subset of the first plurality of intra-coded frames.

11. The apparatus of claim 10 , the memory further storing instructions that, when executed by the one or more processors, cause the one or more processors to determine, based on the control signal, additional sets of frames in the video stream, each set of frames of the additional sets of frames beginning with a different frame in the video stream that is to be encoded as an intra-coded frame.

12. The apparatus of claim 11 , wherein each set of frames of the additional sets of frames comprises a same number of frames.

13. The apparatus of claim 11 , wherein each set of frames of the additional sets of frames comprises a different number of frames.

14. The apparatus of claim 12 , the memory further storing instructions that, when executed by the one or more processors, cause the one or more processors to:

encode each set of frames of the additional sets of frames to generate the first encoded video using the first bit rate; and

encode each set of frames of the additional sets of frames to generate the second encoded video using the second bit rate.

15. The apparatus of claim 11 , wherein each set of frames of the additional sets of frames begins at a location of a first frame of the video stream that occurs after a preset interval.

16. A method comprising:

receiving a video and a control signal, the control signal indicating a plurality of frame positions in the video;

determining, based on the control signal, a set of frames, in the video to be encoded at different bitrates;

encoding, using a first bit rate, the set of frames to generate a first encoded video stream; and

encoding, using a second bit rate, the set of frames to generate a second encoded video stream,

wherein the first encoded video stream and the second encoded video stream comprise a plurality of aligned intra-coded frames, and

wherein the second encoded video stream comprises a different quantity of intra-coded frames than the first encoded video stream.

17. The method of claim 16 , wherein each set of frames of a plurality of sets of frames in the video comprises a same number of frames.

18. The method of claim 16 , wherein each set of frames of a plurality of sets of frames in the video comprises a different number of frames.

19. The method of claim 17 , wherein a first set of frames of the plurality of sets of frames comprises multiple intra-coded frames.

20. The method of claim 17 , wherein a first set of frames of the plurality sets of frames comprises a single intra-coded frame and one or more predictive-coded frames.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2017
From: SYED, YASSER; HOLDEN, DANIAL
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 043709/0339 →
Continuity (3)
Division 15149381 · May 9, 2016
Continuation 13326563 · Dec 15, 2011
Related Publication 20180014025A1 · Jan 11, 2018