Video streaming synchronization
AssigneePlayback Inc.
InventorsRobert Joshua Halperin, Ariel Samuel Borensztein, Thomas Anthony Berger
Life of this patent
Estimating the term…
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.
Claims20
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.
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.
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.
Dependencies are inferred from the claim text.