Systems and methods for synchronizing remote media streams
AssigneeTogetherSound LLC
InventorsBrian Shaw, Steve Melnick
Life of this patent
Estimating the term…
Abstract
The present disclosure describes systems and methods for dynamic synchronization of media streams from remote users. A latency matrix between all participants is generated and participants within acceptable synchronization windows are grouped together. Earlier media streams are buffered and started in synchronization with later streams locally at each client device. To provide an improved experience for earlier or lower-latency clients, additional media streams may be generated (e.g. synthesized, played back from recordings, or dynamically generated based on locally input media). Accordingly, each user is provided with a collaborative experience in substantial synchronization.
Claims25
A method for dynamically synchronizing remote media streams, comprising:
- receiving, by a first computing device from each of a plurality of additional computing devices, a corresponding plurality of measurements of communications latency between the additional computing device and each other additional computing device;
- determining, by the first computing device for each additional computing device, a local time offset for playback of media streams based on the received plurality of measurements of communications latency;
- and
- directing, by the first computing device, each additional computing device to play media streams received from other additional computing devices based on its corresponding local time offset.
A system for dynamically synchronizing remote media streams, comprising:
- a first computing device comprising one or more processors and one or more network interfaces in communication with one or more additional computing devices via one or more network connections;
- wherein the one or more processors are configured to:
- receive, from each of a plurality of additional computing devices, a corresponding plurality of measurements of communications latency between the additional computing device and each other additional computing device,
- determine, for each additional computing device, a local time offset for playback of media streams based on the received plurality of measurements, and
- direct each additional computing device to play media streams received from other additional computing devices based on its corresponding local time offset.
A method for dynamically synchronizing remote media streams, comprising:
- measuring, by a first computing device, a communications latency between the first computing device and each of a plurality of additional computing devices;
- providing, by the first computing device, the measurements to a second computing device;
- receiving, by the first computing device from the second computing device, a local time offset based on the provided measurements and communications latency measurements provided by each of the plurality of additional computing devices;
- receiving, by the first computing device from an additional computing device, a media stream;
- and
- playing, by the first computing device, the media stream at a time based on the local time offset.
Dependencies are inferred from the claim text.