Patent ID: 8312173

Claim:
An apparatus for synchronizing a function on a plurality of devices, the apparatus comprising: a memory comprising an event, the event comprising a reference to the function and a desired event time (DET); one or more processors in communication with the memory and configured to, for each of the devices: send content comprising the function and the event to the device; receive a timepacket comprising a start time t 1 sent at the start time t 1 from the device; add to the each timepacket a system time t 2 ; and send a return timepacket comprising return time t 2 to the device; whereby the device: receives the return timepacket at a receipt time t 3 ; determines a roundtrip time (RTT=t 3 −t 1 ) and calculate a server difference (SD=t 2 +(RTT/2)−t 3 ); receives, at an event receipt time t 4 , the event; calculates a delay (D=DET−(t 4 +SD)); and exhibits the function at a synchronized event time (SDET=t 4 +D).