Claims
- 1. A method for synchronizing the rendering of content at a plurality of devices, the content having a rendering time, the method comprising:
designating one of the devices as a master device and the other devices as slave devices; sending to each device content to be rendered at that device synchronized with the content sent to the other devices; sending from the master device to the slave devices an indication of when the master device renders content corresponding to a rendering time; and after receiving the indication at a slave device, adjusting based on the received indication the rendering of the content at the slave device to account for variation between when the master device and the slave device render content that should be rendered at the same time.
- 2. The method of claim 1 wherein the indication sent from the master device to the slave devices includes a master device time at which the master device renders content corresponding to a rendering time.
- 3. The method of claim 2 wherein the indication sent from the master device to the slave devices includes the corresponding rendering time.
- 4. The method of claim 2 wherein the corresponding rendering time is a default rendering time.
- 5. The method of claim 2 wherein the corresponding rendering time is time zero.
- 6. The method of claim 2 wherein the adjusting includes:
calculating a difference between the master device time and a slave device time that correspond to the rendering time.
- 7. The method of claim 2 wherein the adjusting includes:
calculating a difference between a master rendering time and a slave rendering time that correspond to the same master and slave device times.
- 8. The method of claim 2 wherein the adjusting includes:
adjusting a device time so that the master device time and the slave device time are in the same time domain; calculating a master start time for the master device from the master device time that is in the same time domain as the slave device time and a master rendering time; calculating a slave start time for the slave device from the slave device time that is in the same time domain as the master device time and a slave rendering time; and calculating the difference between the slave start time and the master start time.
- 9. The method of claim 1 wherein the sending of the indication from the master device to the slave devices occurs at various times so that the slave devices can adjust the rendering of the content as appropriate.
- 10 The method of claim 1 wherein the adjusting accounts for variations in the time domain of the master device and the slave device.
- 11. The method of claim 1 wherein the content is sent from a single source to the master device and the slave devices.
- 12. The method of claim 1 wherein the content is sent from different sources to the master device and the slave devices.
- 13. The method of claim 12 including receiving a rendering time adjustment that indicates a difference in a master rendering time and a slave rendering time of content that is to be synchronized.
- 14. The method of claim 13 wherein a user specifies the rendering time adjustment.
- 15. The method of claim 14 wherein the user specifies the rendering time adjustment by indicating the amount of time the master device and the slave device are out of synchronization.
- 16. A method for synchronizing rendering of content at devices, each device having a device time and a rendering time, the device time of a device being in a time domain of the device, the method comprising:
designating one of the devices as a master device and the one or more other devices as slave devices; sending to each device content to be rendered at that device synchronized with the content sent to the other devices; sending from the master device to the one or more slave devices a master device time corresponding to a master rendering time of the master device; and upon receiving the sent master device time at a slave device, adjusting the rendering of the content at the slave device to account for a difference in a slave rendering time and a master rendering time calculated based on the master device time adjusted for a difference in time domains of the slave device and the master device.
- 17. The method of claim 16 wherein the difference in a slave rendering time and a master rendering time is calculated by:
converting the master device time to a time frame of the slave device; calculating a master start time for the master device from the converted master device time and the master rendering time; calculating a slave start time for the slave device from the slave device time and the slave rendering time; and calculating the difference between the slave start time and the master start time.
- 18. The method of claim 16 wherein the sending from the master device to the slave devices the master device time and the master rendering time occurs at various times so that the slave devices can adjust the rendering of the content as appropriate.
- 19. The method of claim 16 wherein the content is sent from different sources to the master device and the slave devices.
- 20. The method of claim 19 including receiving a rendering time adjustment that indicates a difference in a master rendering time and a slave rendering time of content that is to be synchronized.
- 21. The method of claim 20 wherein a user specifies the rendering time adjustment.
- 22. The method of claim 21 wherein the user specifies the rendering time adjustment by indicating the amount of time the master device and the slave device are out of synchronization.
- 23. A method for synchronizing rendering of content at devices, each device having a device time and a rendering time, the device time of a device being in a time domain of the device, the method comprising:
designating one of the devices as a master device and the one or more other devices as slave devices; and for each slave device,
calculating a difference in a master rendering time of the master device and slave rendering time of the slave device based on a master device time adjusted for a difference in time domains of the slave device and the master device; and rendering content at the slave device to account for the calculated difference.
- 24. The method of claim 23 including sending a master device time and a corresponding master rendering time to each slave device for use in calculating the difference.
- 25. The method of claim 24 wherein the master device sends the master device time and the corresponding master rendering time to the slave devices.
- 26. The method of claim 24 wherein each slave device converts the master device time to its time domain.
- 27. The method of claim 24 wherein the master device converts the master device time to the time domain of a slave device before sending it.
- 28. A method for tracking variation in time domains of devices, the method comprising:
broadcasting a time domain message from each of the devices to the other devices, the time domain message including a sent time of the broadcasting device and received times at which the broadcasting device received time domain messages broadcast by the other devices; and upon receiving the time domain message at a device, determining a variation in time domain between the broadcasting device and the device based on the sent time of the device of the time domain message whose received time is in the received time domain message, the received time in the received time domain message, the sent time in the received time domain message, and the received time when the device received the received time domain message.
- 29. The method of claim 28 wherein the determining includes taking the average of the difference between the received time in the received time domain message and the sent time of the device of the time domain message whose received time is in the received time domain message and the difference between the sent time in the received time domain message and the received time when the device received the received time domain message.
- 30. The method of claim 28 wherein the determining includes smoothing the variation based on time domain messages previously broadcast by the broadcasting device.
- 31. A method for tracking variation in time domains of devices, the method comprising:
broadcasting from each of the devices messages that include a sent time of the message and for each of a plurality of devices, an indication of latency between broadcasting by the device and receiving by the broadcasting device of a message; and after receiving the message at a device, determining a variation in time domains of the broadcasting device and the receiving device based on the indication of the latency in the received message and latency between the sending by the broadcasting device and the receiving by the receiving device of the broadcast message.
CROSS REFERENCE TO RELATED APPLICATION
[0001] This application claims the benefit of U.S. Provisional Application No. 60/341,574 filed Dec. 17, 2001, which is incorporated herein by reference in its entirety.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60341574 |
Dec 2001 |
US |