Patent ID: 8918541
Filing Date: 2014-12-23
Classification: G06F,G10H,G11B

Abstract:
1. A method for providing synchronous delivery and playback of three or more electronic audio or video files from multiple clients, having differing arrival latencies, from clients from multiple locations communicating through the Internet, during an on-line session, the synchronous delivery and playback method comprising: a. creating a session server having a list of Network Time Protocol (NTP) servers, passing the list to each client through the Internet so that each client will acquire that client's own time reference; b. enabling a client application to provide authorization so that the client application enables each client to connect each client to each other client and to the session server, each client utilizing a formalized Internet time standard, said Internet time standard being the NTP, each client having an NTP clock which is shared with all clients; c. starting the NTP clock, the NTP clock synchronized to the time stamp of its chosen NTP server and given to all clients, providing a timing adjustor for adjusting each client's NTP timestamp in the client application of all clients, enabling the NTP timestamp adjustor of each client to acquire the NTP timestamp from all clients, in the session and the session server, enabling the session server to calculate the distance of each client and synch any NTP timestamp of all clients, so that streams of the clients will be offset until each stream of a client is in synch with the stream of the furthest client; d. constantly adjusting the NTP timestamp to change in the network conditions, and providing a file calibrator in each client application, said file calibrator having a buffer, a mixer, and the NTP timestamp, said buffer having a method for analyzing the difference in arrival latencies of streams by all clients, and a method for synchronizing the streams, by which the arrival latency of any client's stream may be increased so that all streams by all clients arrive at the same time, and said mixer returns each stream to all clients, and said adjusted NTP timestamp from all clients being the timing method of each stream; e. providing respective receivers at each client and at the session server receiving packets of information from each client, each receiver decoding the NTP timestamp from each client and comparing it with an NTP timestamp of the formalized Internet time standard, keeping a record for each client of the difference in time of the time stream from the formalized Internet time standard, the stream with the highest difference designated as the delay reference stream and the NTP timestamp from the delay reference stream is used as a reference time delayed NTP timestamp; and f. once the delayed reference stream has been determined, its data is immediately decoded and rendered to the client having the delayed reference stream, other incoming streams are then decoded and then paused until their NTP timestamp agrees with the delayed NTP timestamp and only then are they rendered to the client having that respective stream so that all incoming streams are in sync with the delayed NTP timestamp and are therefore in unison with one another.