IP Library Granted Patent US 12,389,050
Granted Patent B2
US 12,389,050 · App. 18/601,941 · Granted Aug 12, 2025

Anchors for live streams

Inventors: Justin Lewis (Marina del Rey, CA); Scott Davies (Santa Monica, CA)
Assignee: Google LLC
H04N21/2187H04L65/60H04L65/612H04L67/01H04L67/60H04N21/23424H04N21/26258H04N21/8455
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,389,050
App. No.
18/601,941
Granted
Aug 12, 2025
Kind
B2
Abstract

An application on a viewer client device receives a user input to access a live stream, sends a request to access the live stream, presents information allowing a user to indicate a first anchor of a plurality of anchors of the live stream, the first anchor corresponding to a timestamp for starting a portion of the live stream, receives user input identifying the live stream and user input indicating the first anchor of the live stream, and displays the live stream beginning at the timestamp corresponding to the first anchor of the live stream.

Claims (53)

1. A computer-implemented method comprising:

receiving, by an application on a viewer client device, a user input to access a live stream;

sending, by the application on the viewer client device, a request to access the live stream;

presenting, by the application on the viewer client device, information allowing a user to indicate a first anchor of a plurality of anchors of the live stream, the first anchor corresponding to a timestamp for starting a portion of the live stream;

receiving user input identifying the live stream and user input indicating the first anchor of the live stream; and

displaying, by the application on the viewer client device, the live stream beginning at the timestamp corresponding to the first anchor of the live stream.

2. The computer-implemented method of claim 1 , wherein the sent request to access the live stream is one of a join request or a rejoin request based on whether the viewer client device previously accessed the live stream over a threshold amount of time.

3. The computer-implemented method of claim 1 , wherein the sent request to access the live stream is a join request, and wherein the first anchor corresponds to a timestamp of the live stream that is nearest to a timestamp associated with the join request to access the live stream.

4. The computer-implemented method of claim 1 , further comprising:

receiving a content item to be presented to a user on the viewer client device;

identifying a departure time interval of the live stream associated with the content item;

displaying the received content item in place of the live stream responsive to expiration of the departure time interval; and

storing a departure timestamp of the live stream corresponding to when the received content item was displayed in place of the live stream.

5. The computer-implemented method of claim 4 , wherein the request to access the live stream is a rejoin request and is sent responsive to having finished displaying the received content item to the user.

6. The computer-implemented method of claim 4 , wherein the sent request to access the live stream is a rejoin request, and wherein the first anchor corresponds to a timestamp nearest to the departure timestamp of the live stream.

7. The computer-implemented method of claim 1 further comprising:

providing an indication that the live stream is currently in a semi-live state; and

providing a selectable indication that, when selected, transitions the live stream in the semi-live state to a live segment of the live stream.

8. A non-transitory computer-readable medium comprising instructions, which when executed by a processor of a viewer client device, causes the processor to perform operations comprising:

receiving, by an application on the viewer client device, a user input to access a live stream;

sending, by the application on the viewer client device, a request to access the live stream;

presenting, by the application on the viewer client device, information allowing a user to indicate a first anchor of a plurality of anchors of the live stream, the first anchor corresponding to a timestamp for starting a portion of the live stream;

receiving user input identifying the live stream and user input indicating the first anchor of the live stream; and

displaying, by the application on the viewer client device, the live stream beginning at the timestamp corresponding to the first anchor of the live stream.

9. The non-transitory computer-readable medium of claim 8 , wherein the sent request to access the live stream is one of a join request or a rejoin request based on whether the viewer client device previously accessed the live stream over a threshold amount of time.

10. The non-transitory computer-readable medium of claim 8 , wherein the sent request to access the live stream is a join request, and wherein the first anchor corresponds to a timestamp of the live stream that is nearest to a timestamp associated with the join request to access the live stream.

11. The non-transitory computer-readable medium of claim 8 , the operations further comprising:

receiving a content item to be presented to a user on the viewer client device;

identifying a departure time interval of the live stream associated with the content item;

displaying the received content item in place of the live stream responsive to expiration of the departure time interval; and

storing a departure timestamp of the live stream corresponding to when the received content item was displayed in place of the live stream.

12. The non-transitory computer-readable medium of claim 11 , wherein the request to access the live stream is a rejoin request and is sent responsive to having finished displaying the received content item to the user.

13. The non-transitory computer-readable medium of claim 11 , wherein the sent request to access the live stream is a rejoin request, and wherein the first anchor corresponds to a timestamp nearest to the departure timestamp of the live stream.

14. The non-transitory computer-readable medium of claim 11 , the operations further comprising:

providing an indication that the live stream is currently in a semi-live state; and

providing a selectable indication that, when selected, transitions the live stream in the semi-live state to a live segment of the live stream.

15. A system comprising:

a memory; and

a processor, coupled to the memory, to perform operations comprising:

receiving, by an application on a viewer client device, a user input to access a live stream;

sending, by the application on the viewer client device, a request to access the live stream;

presenting, by the application on the viewer client device, information allowing a user to indicate a first anchor of a plurality of anchors of the live stream, the first anchor corresponding to a timestamp for starting a portion of the live stream;

receiving user input identifying the live stream and user input indicating the first anchor of the live stream; and

displaying, by the application on the viewer client device, the live stream beginning at the timestamp corresponding to the first anchor of the live stream.

16. The system of claim 15 , wherein the sent request to access the live stream is one of a join request or a rejoin request based on whether the viewer client device previously accessed the live stream over a threshold amount of time.

17. The system of claim 15 , wherein the sent request to access the live stream is a join request, and wherein the first anchor corresponds to a timestamp of the live stream that is nearest to a timestamp associated with the join request to access the live stream.

18. The system of claim 15 , the operations further comprising:

receiving a content item to be presented to a user on the viewer client device;

identifying a departure time interval of the live stream associated with the content item;

displaying the received content item in place of the live stream responsive to expiration of the departure time interval; and

storing a departure timestamp of the live stream corresponding to when the received content item was displayed in place of the live stream.

19. The system of claim 18 , wherein the request to access the live stream is a rejoin request and is sent responsive to having finished displaying the received content item to the user.

20. The system of claim 18 , wherein the sent request to access the live stream is a rejoin request, and wherein the first anchor corresponds to a timestamp nearest to the departure timestamp of the live stream.

Assignments (2)
CHANGE OF NAME Recorded May 8, 2024
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 067354/0946 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 1, 2024
From: LEWIS, JUSTIN; DAVIES, SCOTT
To: GOOGLE INC.
Reel/Frame 067286/0553 →
Continuity (4)
Continuation 17392154 · Aug 2, 2021
Continuation 16872351 · May 11, 2020
Continuation 15339874 · Oct 31, 2016
Related Publication 20240214438A1 · Jun 27, 2024
References Cited (37)
US 8185926B1 · Oz et al. · 2012 [cited by applicant]
US 9178928B2 · Choi et al. · 2015 [cited by applicant]
US 9185321B1 · Laframboise · 2015 [cited by examiner]
US 10652294B2 · Lewis et al. · 2020 [cited by applicant]
US 11082468B2 · Lewis · 2021 [cited by examiner]
US 11930062B2 · Lewis · 2024 [cited by examiner]
US 20060143669A1 · Cohen · 2006 [cited by applicant]
US 20080049704A1 · Witteman et al. · 2008 [cited by applicant]
US 20080051029A1 · Witteman et al. · 2008 [cited by applicant]
US 20110093885A1 · Ravula · 2011 [cited by applicant]
US 20110268427A1 · Brelay · 2011 [cited by examiner]
US 20110271001A1 · Brelay · 2011 [cited by examiner]
US 20110271092A1 · Brelay · 2011 [cited by examiner]
US 20120173749A1 · Shah · 2012 [cited by applicant]
US 20120282951A1 · Nguyen et al. · 2012 [cited by applicant]
US 20130024901A1 · Sharif-Ahmadi et al. · 2013 [cited by applicant]
US 20130064287A1 · Karlsson et al. · 2013 [cited by applicant]
US 20140053205A1 · Sirpal · 2014 [cited by examiner]
US 20150208103A1 · Guntur et al. · 2015 [cited by applicant]
US 20150295969A1 · Eguchi et al. · 2015 [cited by applicant]
US 20150326945A1 · Johnson et al. · 2015 [cited by applicant]
US 20160188997A1 · Desnoyer et al. · 2016 [cited by applicant]
US 20160219094A1 · Ye et al. · 2016 [cited by applicant]
US 20160255131A1 · Bulava et al. · 2016 [cited by applicant]
US 20160277802A1 · Bernstein et al. · 2016 [cited by applicant]
US 20160359940A1 · Chen et al. · 2016 [cited by applicant]
CN 102640512A · 2012 [cited by applicant]
CN 105191337A · 2015 [cited by applicant]
EP 1675399A2 · 2006 [cited by applicant]
EP 2475146A1 · 2012 [cited by applicant]
EP 2640084A2 · 2013 [cited by applicant]
EP 2775731A1 · 2014 [cited by applicant]
Extended European Search Report for European Application No. 22204588.2, mailed Feb. 23, 2023, 9 Pages. [cited by applicant]
International Search Report and Written Opinion for International Application No. PCT/US2017/054159, mailed Jan. 3, 2018, 10 Pages. [cited by applicant]
Office Action for Chinese Patent Application No. 201780067750.2, mailed Nov. 4, 2020, 26 Pages. [cited by applicant]
Office Action for Chinese Patent Application No. 202210662897.9, mailed Dec. 14, 2022, 21 pages. [cited by applicant]
Office Action for Chinese Patent Application No. CN202210662483, mailed Dec. 27, 2023, 14 Pages. [cited by applicant]