METHOD AND INFRASTRUCTURE FOR SYNCHRONIZED STREAMING OF CONTENT
Systems and methods for synchronizing the playback of network media across multiple content playback devices, termed herein as “playback devices”, “clients”, or “client devices”. In one implementation, client devices are controlled to parse and buffer media content separately. Once all clients are ready, a controller may cause the client devices to start in a synchronized fashion based on signals sent by the controller. The controller adjusts the timing of the signal so that the outputs are displayed in synchronization on each client device. In other implementations, device lag times may be measured. In still other implementations, a master device may synchronize playback of media content on slave devices. In yet other implementations, devices may buffer and join playback of media content occurring on other devices. In further implementations, the systems and methods may be expanded to include steps of processing authentication for service providers prior to arranging synchronized playback.
1 . A method of synchronizing playback of IPTV content between a first content playback device and a second content playback device, comprising: a. playing back a content item on a first content playback device; b. buffering but not playing back the content item on a second content playback device, the buffering but not playing back occurring at least until the buffer includes a portion of the content item currently being played back on the first content playback device; and c. sending a signal to begin playback of the content item on the second content playback device, such that the playback of the content item on the first and second content playback devices is synchronized.
2 . The method of claim 1 , wherein the first and second content playback devices are in data communication with a controller, and further comprising: a. sending data about a device lag time associated with the second content playback device to the controller; and b. sending a signal to the second content playback device to begin playback of the partially buffered content item, the time of the sending a signal based on the device lag time.
3 . The method of claim 1 , wherein the buffering is in response to a request from the second content playback device to join the playback of the content item.
4 . A non-transitory computer-readable medium, comprising instructions for causing a computing device to implement the method of claim 1 .
5 . A method of determining a device lag time, comprising:
a. generating a test signal;
b. sending the test signal to initiate a signal indicating that rendering of a content item should begin;
c. detecting the rendering of the content item; and
d. measuring a time between the sending and the detecting to calculate a device lag time.
6 . The method of claim 5 , further comprising sending the device lag time to a controller.
7 . The method of claim 5 , wherein the rendering of a content item causes a change in brightness or volume.
8 . The method of claim 5 , wherein the detecting includes detecting with a microphone or an optical sensor.
9 . A non-transitory computer-readable medium, comprising instructions for causing a computing device to implement the method of claim 5 .
10 . A method of playback of at least a portion of a content item on a second content playback device based on a presence of the content item at a first content playback device, comprising:
a. at least partially receiving a content item on a first content playback device;
b. transmitting at least a portion of the received content item to a second content playback device; and
c. encoding or encrypting the content item by the first content playback device prior to the transmitting.
11 . The method of claim 10 , wherein the first content playback device generates a portion of the content item using a tuner.
12 . The method of claim 10 , wherein the first content playback device has received a portion of the content item from another content playback device.
13 . The method of claim 10 , further comprising controlling operation of the first content playback device using the second content playback device.
14 . The method of claim 10 , wherein the transmitting is performed immediately upon the receiving.
15 . The method of claim 10 , further comprising receiving device or network lag information at the first content playback device, and wherein the transmitting is performed following a time differential based on the received device or network lag information.
16 . The method of claim 10 , wherein the transmitting is performed while the first content playback device is playing back the content item, playing back another content item, or not playing a content item.
17 . The method of claim 16 , wherein the transmitting is performed while the first content playback device is playing back the content item, and wherein the transmitting is performed such that the second content playback device plays back the content item in synchronization with the first content playback device.
18 . The method of claim 10 , wherein multiple second content playback devices are in data communication with the first content playback device, and further comprising selecting a second content playback device to receive the content item prior to the transmitting.
19 . The method of claim 10 , wherein a plurality of second content playback devices are in data communication with the first content playback device, and further comprising transmitting the content item to the plurality of second content playback devices.
20 . The method of claim 10 , wherein a plurality of second content playback devices are in data communication with the first content playback device, and further comprising transmitting the content item using a multicasting method to the plurality of second content playback devices.
21 . The method of claim 10 , wherein a plurality of second content playback devices are in data communication with the first content playback device, and further comprising:
a. at least partially receiving another content item on the first content playback device; and
b. transmitting at least a portion of the received content item to one content playback device of the plurality and transmitting at least a portion of the received another content item to another content playback device of the plurality.
22 . A non-transitory computer-readable medium, comprising instructions for causing a computing device to implement the method of claim 10 .