Patent ID: 8806544

Claim:
A method of synchronizing application content interfaced through a device with television content interfaced through a television, the television being configured to emit television audio to a surrounding area when interfacing the television content, the device being remotely positioned within the surrounding area and configured to sample the television audio as emitted from the television, the television content being provided to the television from a television server, the application content being provided to the device from an application server, the method comprising: determining a television audio sample sampled by the device, the television audio sample reflective of audio associated with the television content as emitted from the television within the surrounding area; determining a device timecode for the television audio sample, the device timecode indicating a television sampling time at which the device sampled the television audio sample; determining a server audio sample matching the television audio sample, the server audio sample reflective of audio associated with the television content as transmitted from the television server for use with the television; determining a server timecode indicating a server sampling time at which the server audio sample was sampled; calculating a time offset between the device timecode and the server timecode; synchronizing application content interfaced through the device according to the time offset; determining output of the television content to be behind real time, and thereafter, re-synchronizing the application content interfaced through the device, including: comparing an additional television audio sample sampled with the device to one or more additional server audio samples sampled prior to sampling of the additional television audio sample; determining the one of the one or more additional server audio samples matching with the additional television audio sample; calculating an additional time offset corresponding with a timing difference between a device timecode of the additional television audio sample and a server timecode of the matching one of the one or more additional server audio samples; and re-synchronizing application content interfaced through the device based at least in part on the additional time offset.