IP Library › Granted Patent US 12,192,563
Granted Patent B2
US 12,192,563 · App. 17/937,651 · Granted Jan 7, 2025

Video streaming synchronization

Inventors: Robert Joshua Halperin (San Francisco, CA); Ariel Samuel Borensztein (Philadelphia, PA); Thomas Anthony Berger (Brooklyn, NY)
Assignee: PLAYBACK INC.
H04N21/43079H04N21/2187H04N21/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 12,192,563
App. No.
17/937,651
Granted
Jan 7, 2025
Kind
B2
Abstract

A method includes determining a first streamer from a plurality of streamers that are streaming a first video stream, receiving the first video stream from the determined first streamer, timestamping the first video stream, transmitting the timestamped first video stream to a plurality of devices, transmitting a timestamped second video stream generated at a host device to the plurality of devices, and causing, at each of the plurality of devices, synchronized display of the first and the second video streams based on the time stamps.

Claims (46)

1. A method, comprising:

determining by a video server, a first source from a plurality of sources for downloading a first video stream, the plurality of sources all configured to stream the same first video stream;

sending, by the video server, a request for the first video stream to the determined first source;

receiving, by the video server, the first video stream from the determined first source;

sending, by the video server, a request to a host device for a second video stream to be presented simultaneously with the first video stream at a plurality of devices;

receiving, by the video server, the second video stream;

timestamping the first video stream and the second video stream to enable synchronization of the first and second video stream at the plurality of devices; and

transmitting the timestamped first video stream and the timestamped second video stream to the plurality of devices;

wherein each of the plurality of devices is configured for synchronized display of the first and the second video streams based on the timestamps.

2. The method of claim 1 , wherein the timestamping the first video stream is based on a current time and the second video stream is timestamped using the current time.

3. The method of claim 1 , wherein the second video stream is timestamped to match timestamps of the first video stream.

4. The method of claim 1 , wherein the determining is based on historical reliability of the plurality of sources.

5. The method of claim 1 , wherein the determining is based on real time latency measurements of the plurality of sources.

6. The method of claim 1 , wherein the synchronized display includes displaying the second video stream overlaying the first video stream.

7. The method of claim 1 , further comprising transmitting a timestamped third video stream from one of the plurality of devices to the other plurality of devices and the host device and causing synchronized display of the third video stream on the other plurality of devices and the host device.

8. The method of claim 1 , wherein the receiving includes using a remote browser to access the first video stream from the determined source.

9. The method of claim 1 , wherein the first video stream includes a live event.

10. A non-transitory computer-readable storage medium, the computer-readable storage medium including instructions that when executed by a computer, cause the computer to:

determine, by a video server, a first source from a plurality of sources for downloading a first video stream, the plurality of sources all configured to stream the first video stream;

send, by the video server, a request for the first video stream to the determined first source;

receive, by the video server, the first video stream from the determined first source;

send, by the video server, a request to a host device for a second video stream to be presented simultaneously with the first video stream at a plurality of devices;

receive, by the video server, the second video stream;

timestamp the first video stream and the second video stream to enable synchronization of the first and second video stream at the plurality of devices; and

transmit the timestamped first video stream and the timestamped second video stream to the plurality of devices;

wherein each of the plurality of devices is configured for synchronized display of the first and the second video streams based on the timestamps.

11. A computing apparatus comprising:

a processor, and

a memory storing instructions that, when executed by the processor, configure the apparatus to:

determine, by a video server, a first source from a plurality of sources for downloading a first video stream, the plurality of sources all configured to stream the first video stream;

send, by the video server, a request for the first video stream to the determined first source;

receive, by the video server, the first video stream from the determined first source in response to the request;

sending, by the video server, a request to a host device for a second video stream to be presented simultaneously with the first video stream at a plurality of devices;

receiving, by the video server, the second video stream;

timestamp the first video stream and the second video stream to enable synchronization of the first and second video stream at the plurality of devices; and

transmit the timestamped first video stream and the timestamped second video stream to the plurality of devices;

wherein each of the plurality of devices is configured for synchronized display of the first and the second video streams based on the timestamps.

12. The computing apparatus of claim 11 , wherein the timestamping the first video stream is based on a current time and the second video stream is timestamped using the current time.

13. The computing apparatus of claim 11 , wherein the second video stream is timestamped to match timestamps of the first video stream.

14. The computing apparatus of claim 11 , wherein the determining is based on historical reliability of the plurality of sources.

15. The computing apparatus of claim 11 , wherein the determining is based on real time latency measurements of the plurality of sources.

16. The computing apparatus of claim 11 , wherein the synchronized display includes display the second video stream overlaying the first video stream.

17. The computing apparatus of claim 11 , wherein the memory storing instructions that, when executed by the processor, further configure the apparatus to transmit a third timestamped video stream from one of the plurality of devices to the other plurality of devices and the host device and causing synchronized display of the third video stream on the other plurality of devices and the host device.

18. The computing apparatus of claim 11 , wherein the receiving includes using a remote browser to access the first video stream from the determined source.

19. The computing apparatus of claim 11 , wherein the first video stream includes a live event.

20. The computing apparatus of claim 11 , wherein the memory storing instructions that, when executed by the processor, further configure the apparatus to waterfall the first and second video streams such that the second video stream has timestamps matching the first video stream.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2023
From: HALPERIN, ROBERT JOSHUA; BORENSZTEIN, ARIEL SAMUEL; BERGER, THOMAS ANTHONY
To: PLAYBACK INC.
Reel/Frame 065072/0731 →
Continuity (1)
Related Publication 20240121465A1 · Apr 11, 2024
References Cited (11)
US 10498794B1 · Keighran et al. · 2019 [cited by applicant]
US 20070269181A1 · Kikuchi · 2007 [cited by examiner]
US 20110321079A1 · Lankford · 2011 [cited by applicant]
US 20140082645A1 · Stern · 2014 [cited by examiner]
US 20140133836A1 · Burns · 2014 [cited by applicant]
US 20140267571A1 · Periyannan et al. · 2014 [cited by applicant]
US 20160080817A1 · Chai et al. · 2016 [cited by applicant]
US 20170251246A1 · Hua · 2017 [cited by applicant]
US 20180035136A1 · Crowe · 2018 [cited by examiner]
US 20190089996A1 · Surcouf · 2019 [cited by examiner]
US 20240114189A1 · Halperin et al. · 2024 [cited by applicant]