IP Library › Granted Patent US 12,041,324
Granted Patent B2
US 12,041,324 · App. 18/336,887 · Granted Jul 16, 2024

Content synchronization using micro-seeking

Inventors: Matthew McDade Jackson (Denver, CO); Matthew Patrick Creehan (Littleton, CO)
Assignee: Comcast Cable Communications, LLC
H04N21/8547H04J3/0635H04L69/28
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 12,041,324
App. No.
18/336,887
Granted
Jul 16, 2024
Kind
B2
Abstract

Methods and systems are disclosed maintaining playback of content at a target or desired playback time. A playback device may be configured to compare a current playback time of a content asset to a target playback time of the content asset and to determine, for each comparison, whether a difference between the current playback time and the target playback time has reached a threshold. Based on determining that the difference between the current playback time and the target playback time has reached a threshold, the playback device may seek to the target playback time of the content asset. The playback device may be configured to repeatedly perform the comparing, determining and seeking operations in order to maintain the current playback time of the content within the threshold of the target playback time.

Claims (63)

1. A method comprising:

receiving a manifest indicating one or more timestamps associated with one or more content fragments, wherein each timestamp of the one or more timestamps indicates a target playback time of a corresponding content fragment of the one or more content fragments;

comparing, during playback of a first content fragment of the one or more content fragments, a current playback time of the first content fragment to a target playback time indicated by a timestamp of the one or more timestamps;

determining, based on the comparison, whether a difference between the current playback time and the target playback time has satisfied a threshold; and

adjusting, based on determining that the difference has satisfied the threshold, playback of content to advance to a second content fragment, of the one or more content fragments, corresponding to a location in the content that corresponds to the target playback time.

2. The method of claim 1 , wherein the current playback time of the first content fragment to the target playback time comprises comparing the timestamp with a network time protocol.

3. The method of claim 1 , wherein the timestamp is associated with at least one of:

a time at which the one or more content fragments were packaged,

a time at which the one or more content fragments were sent by a content provider, or

a time at which the one or more content fragments is scheduled to be output via a playback device.

4. The method of claim 1 , wherein a difference between the current playback time and the target playback time is based on insufficient bandwidth at a playback device.

5. The method of claim 1 , wherein the threshold is less than one hundred milliseconds.

6. The method of claim 1 , further comprising:

causing playback of the first content fragment at a location within the threshold of the target playback time of the content.

7. The method of claim 1 , wherein the first content fragment is stored in a buffer.

8. A device comprising:

one or more processors; and

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

receive a manifest indicating one or more timestamps associated with one or more content fragments, wherein each timestamp of the one or more timestamps indicates a target playback time of a corresponding content fragment of the one or more content fragments;

compare, during playback of a first content fragment of the one or more content fragments, a current playback time of the first content fragment to a target playback time indicated by a timestamp of the one or more timestamps;

determine, based on the comparison, whether a difference between the current playback time and the target playback time has satisfied a threshold; and

adjust, based on determining that the difference has satisfied the threshold, playback of content to advance to a second content fragment, of the one or more content fragments, corresponding to a location in the content that corresponds to the target playback time.

9. The device of claim 8 , wherein the current playback time of the first content fragment to the target playback time comprises comparing the timestamp with a network time protocol.

10. The device of claim 8 , wherein the timestamp is associated with at least one of:

a time at which the one or more content fragments were packaged,

a time at which the one or more content fragments were sent by a content provider, or

a time at which the one or more content fragments is scheduled to be output via a playback device.

11. The device of claim 8 , wherein a difference between the current playback time and the target playback time is based on insufficient bandwidth at a playback device.

12. The device of claim 8 , wherein the threshold is less than one hundred milliseconds.

13. The device of claim 8 , wherein the instructions, when executed by the one or more processors, further cause the device to:

causing playback of the first content fragment at a location within the threshold of the target playback time of the content.

14. The device of claim 8 , wherein the first content fragment is stored in a buffer.

15. A non-transitory computer-readable medium storing instructions that, when executed, cause:

receiving a manifest indicating one or more timestamps associated with one or more content fragments, wherein each timestamp of the one or more timestamps indicates a target playback time of a corresponding content fragment of the one or more content fragments;

comparing, during playback of a first content fragment of the one or more content fragments, a current playback time of the first content fragment to a target playback time indicated by a timestamp of the one or more timestamps;

determining, based on the comparison, whether a difference between the current playback time and the target playback time has satisfied a threshold; and

adjusting, based on determining that the difference has satisfied the threshold, playback of content to advance to a second content fragment, of the one or more content fragments, corresponding to a location in the content that corresponds to the target playback time.

16. The non-transitory computer-readable medium of claim 15 , wherein the current playback time of the first content fragment to the target playback time comprises comparing the timestamp with a network time protocol.

17. The non-transitory computer-readable medium of claim 15 , wherein the timestamp is associated with at least one of:

a time at which the one or more content fragments were packaged,

a time at which the one or more content fragments were sent by a content provider, or

a time at which the one or more content fragments is scheduled to be output via a playback device.

18. The non-transitory computer-readable medium of claim 15 , wherein a difference between the current playback time and the target playback time is based on insufficient bandwidth at a playback device.

19. The non-transitory computer-readable medium of claim 15 , wherein the instructions, when executed, further cause:

causing playback of the first content fragment at a location within the threshold of the target playback time of the content.

20. The non-transitory computer-readable medium of claim 15 , wherein the first content fragment is stored in a buffer.

21. A system comprising:

a first computing device configured to:

receive a manifest indicating one or more timestamps associated with one or more content fragments, wherein each timestamp of the one or more timestamps indicates a target playback time of a corresponding content fragment of the one or more content fragments,

compare, during playback of a first content fragment of the one or more content fragments, a current playback time of the first content fragment to a target playback time indicated by a timestamp of the one or more timestamps,

determine, based on the comparison, whether a difference between the current playback time and the target playback time has satisfied a threshold, and

adjust, based on determining that the difference has satisfied the threshold, playback of content to advance to a second content fragment, of the one or more content fragments, corresponding to a location in the content that corresponds to the target playback time; and

a second computing device configured to:

send the one or more content fragments.

22. The system of claim 21 , wherein the current playback time of the first content fragment to the target playback time comprises comparing the timestamp with a network time protocol.

23. The system of claim 21 , wherein the timestamp is associated with at least one of:

a time at which the one or more content fragments were packaged,

a time at which the one or more content fragments were sent by a content provider, or

a time at which the one or more content fragments is scheduled to be output via a playback device.

24. The system of claim 21 , wherein a difference between the current playback time and the target playback time is based on insufficient bandwidth at a playback device.

25. The system of claim 21 , wherein the instructions, when the first computing device is further configured to:

cause playback of the first content fragment at a location within the threshold of the target playback time of the content.

26. The system of claim 21 , wherein the first content fragment is stored in a buffer.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2023
From: JACKSON, MATTHEW MCDADE; CREEHAN, MATTHEW PATRICK
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 064462/0055 →
Continuity (3)
Continuation 17718074 · Apr 11, 2022
Continuation 16162805 · Oct 17, 2018
Related Publication 20240031660A1 · Jan 25, 2024
Cited By (1)
US 12,665,940