IP Library Granted Patent US 11,770,588
Granted Patent B2
US 11,770,588 · App. 17/114,027 · Granted Sep 26, 2023

Systems and methods for dynamically syncing from time-shifted frame to live stream of content

Inventors: Vaibhav Gupta (Karnataka, IN); Ashish Gupta (Karnataka, IN); Rohit Dhiman (Uttarakhand, IN)
Assignee: ROVI GUIDES, INC.
H04N21/47217H04N21/2187H04N21/4302H04N21/8456
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 11,770,588
App. No.
17/114,027
Filed
Dec 7, 2020
Granted
Sep 26, 2023
Kind
B2
Art Unit
2426
USPC
725/88
Abstract

Systems and methods for dynamically skipping a presentation of a portion of frames to catch up to live based on a user selection is disclosed herein. For example, a streaming application generates a content item for live streaming where the content item comprises a plurality of frames. In response to determining that playing of the content item lags behind the live streaming of the content item, the streaming application presents a selectable option for a user input where the option comprises (a) catch up to live in a particular time period. In response to receiving the user input via a corresponding option to (a) catch up to live in the particular time period, the streaming application skips a presentation of a portion of the plurality of frames, such that the playing of the content item catches up to live in the particular time period.

Claims (68)

1. A method comprising:

generating a content item for live streaming, the content item comprising a plurality of frames;

in response to determining that playing of the content item lags behind the live streaming of the content item, generating for display a user interface element comprising an option to catch up to live, and selection of a time period after which to catch up to live;

in response to receiving user input via the user interface element to catch up to live, and the selection of the time period after which to catch up to live:

skipping presentation of a portion of the plurality of frames, such that the playing of the content item catches up to live in the time period selected via the user interface element.

2. The method of claim 1 , wherein the option comprises:

catch up to live immediately, wherein the method further comprises:

in response to receiving user input via a corresponding option to catch up to live immediately:

presenting a frame corresponding to the live streaming of the content item, such that the playing of the content item catches up to live immediately.

3. The method of claim 1 , wherein the option comprises: stop the live streaming, wherein the method further comprises:

in response to receiving user input via a corresponding option to stop the live streaming:

presenting a corresponding frame of when determining that the playing of the content item lags behind the live streaming, such that the playing of the content item does not match the live streaming of the content item.

4. The method of claim 1 , further comprising:

receiving a manifest of the content item, wherein the manifest identifies the plurality of frames of the content item;

wherein for each respective frame of the content item, the manifest comprises:

(a) a respective Uniform Resource Locator (URL);

(b) a respective hash code; and

(c) a respective timestamp.

5. The method of claim 1 , further comprising:

determining, based on user profile data, user preference information for skipping presentation of the portion of the plurality of frames; and

presenting a corresponding frame based on the user preference information.

6. The method of claim 4 , further comprising:

identifying a first frame of the content item as a last played frame of the content item;

identifying a second frame of the content item that follows the first frame of the plurality of frames; and

identifying a third frame of the content item that is currently being presented that is different from the second frame.

7. The method of claim 6 , wherein determining that the playing of the content item lags behind the live streaming of the content item comprises:

determining that the third frame does not match the second frame.

8. The method of claim 7 , wherein determining that the third frame does not match the second frame comprises:

determining a respective hash code for the second frame based on the manifest;

calculating a respective hash code based on a respective timestamp of the third frame; and

determining that the respective hash code for the second frame does not correspond to the calculated hash code of the third frame.

9. The method of claim 5 , wherein presenting a corresponding frame based on the user preference information is performed without receiving user input specifying the option.

10. A system comprising:

control circuitry configured to:

generate a content item for live streaming, the content item comprising a plurality of frames;

user interface circuitry configured to:

in response to determining that playing of the content item lags behind the live streaming of the content item, generate for display a user interface element comprising an option to catch up to live, and selection of a time period after which to catch up to live;

wherein the control circuitry is further configured to:

in response to receiving user input via the user interface element to catch up to live, and the selection of the time period after which to catch up to live:

skip presentation of a portion of the plurality of frames, such that the playing of the content item catches up to live in the time period selected via the user interface element.

11. The system of claim 10 , wherein the option comprises:

catch up to live immediately, wherein the user interface circuitry is further configured to:

in response to receiving user input via a corresponding option to catch up to live immediately:

present a frame corresponding to the live streaming of the content item, such that the playing of the content item catches up to live immediately.

12. The system of claim 10 , wherein the option comprises:

stop the live streaming, wherein the user interface circuitry is further configured to:

in response to receiving user input via a corresponding option to stop the live streaming:

present a corresponding frame of when determining that the playing of the content item lags behind the live streaming, such that the playing of the content item does not match the live streaming of the content item.

13. The system of claim 10 , wherein the control circuitry is further configured to:

receive a manifest of the content item, wherein the manifest identifies the plurality of frames of the content item;

wherein for each respective frame of the content item, the manifest comprises:

(a) a respective Uniform Resource Locator (URL);

(b) a respective hash code; and

(c) a respective timestamp.

14. The system of claim 10 , wherein the control circuitry is further configured to:

determine, based on user profile data, user preference information for skipping presentation of the portion of the plurality of frames; and

present a corresponding frame based on the user preference information.

15. The system of claim 13 , wherein the control circuitry is further configured to:

identify a first frame of the content item as a last played frame of the content item;

identify a second frame of the content item that follows the first frame of the plurality of frames; and

identify a third frame of the content item that is currently being presented that is different from the second frame.

16. The system of claim 15 , wherein the control circuitry, wherein determining that the playing of the content item lags behind the live streaming of the content item, is further configured to:

determine that the third frame does not match the second frame.

17. The system of claim 16 , wherein the control circuitry, wherein determining that the third frame does not match the second frame, is further configured to:

determine a respective hash code for the second frame based on the manifest;

calculate a respective hash code based on a respective timestamp of the third frame; and

determine that the respective hash code for the second frame does not correspond to the calculated hash code of the third frame.

18. The system of claim 14 , wherein presenting a corresponding frame based on the user preference information is performed without receiving a user input specifying the option.

Assignments (3)
CHANGE OF NAME Recorded Oct 4, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069113/0323 →
SECURITY INTEREST Recorded May 3, 2023
From: ADEIA GUIDES INC.; ADEIA IMAGING LLC; ADEIA MEDIA HOLDINGS LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR ADVANCED TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC; ADEIA SOLUTIONS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 063529/0272 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 6, 2021
From: GUPTA, VAIBHAV; GUPTA, ASHISH; DHIMAN, ROHIT
To: ROVI GUIDES, INC.
Reel/Frame 056761/0861 →
Continuity (1)
Related Publication 20220182724A1 · Jun 9, 2022
Cited By (2)
US 12,587,716 US 12,677,041