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.
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.