IP Library › Granted Patent US 10,958,301
Granted Patent B2
US 10,958,301 · App. 16/133,811 · Granted Mar 23, 2021

Audio synchronization of a dumb speaker and a smart speaker using a spread code

Inventors: Robert Caston Curtis (Los Gatos, CA); Mark Ely (Los Gatos, CA); Brian Thoft Moth Møller (Hojbjerg, DK)
Assignee: Roku, Inc.
H04B1/7087G06F3/165H04N5/073H04N5/607H04R1/028
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,958,301
App. No.
16/133,811
Granted
Mar 23, 2021
Kind
B2
Abstract

Disclosed herein are system, apparatus, article of manufacture, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, for synchronizing playback of audiovisual content with a dumb speaker. In some embodiments, a display device transmits a spread spectrum signal to a dumb speaker over a data channel using a spread spectrum code. The display device then receives the spread spectrum signal from the dumb speaker over an audio data channel. The display device despreads the spread spectrum signal based on the spreading code. The display device determines a time of receipt of the spread spectrum signal. The display device calculates an audiovisual output path delay for the dumb speaker based on the time of receipt and a time of transmission. The display device then synchronizes the playback of the audiovisual content at the dumb speaker and a smart speaker based on the audiovisual output path delay.

Claims (47)

1. A computer implemented method for synchronizing playback of audiovisual content, comprising:

transmitting, by at least one processor at a first electronic device, a spread spectrum signal to a second electronic device over a data channel at a time of transmission, wherein the spread spectrum signal is based on a spreading code;

receiving, at a microphone of the first electronic device, the spread spectrum signal played back auditorily by the second electronic device;

despreading, by the at least one processor, the spread spectrum signal from the second electronic device based on the spreading code;

determining, by the at least one processor, a time of receipt of the spread spectrum signal from the second electronic device based on the despreaded spread spectrum signal;

calculating, by the at least one processor, an audiovisual output path delay for the second electronic device based on the time of receipt of the spread spectrum signal and the time of transmission of the spread spectrum signal, wherein the audiovisual output path delay for the second electronic device comprises a time delay between receiving the spread spectrum signal at the second electronic device and the spread spectrum signal being played back auditorily by the second electronic device; and

synchronizing, by the at least one processor, the playback of the audiovisual content at the second electronic device and a third electronic device based on the audiovisual output path delay for the second electronic device.

2. The method of claim 1 , wherein the data channel comprises an audio jack channel, a Radio Corporation of America (RCA) channel, an optical channel, or a High-Definition Multimedia Interface (HDMI) channel.

3. The method of claim 1 , the despreading further comprising:

despreading the spread spectrum signal from the second electronic device based on a reference point associated with the spreading code.

4. The method of claim 3 , the despreading further comprising:

selecting a sliding window into the spreading code based on the reference point; and

despreading the spread spectrum signal from the second electronic device based on the sliding window.

5. The method of claim 1 , wherein the third electronic device changes an amount of the audiovisual content to a buffer based on the audiovisual output path delay for the second electronic device.

6. The method of claim 1 , wherein the third electronic device updates a playback offset for the audiovisual content based on the audiovisual output path delay for the second electronic device.

7. The method of claim 1 , wherein the second electronic device comprises a dumb speaker and the first electronic device comprises a smart speaker.

8. A system, comprising:

a memory; and

at least one processor coupled to the memory and configured to:

transmit a spread spectrum signal to a first electronic device over a data channel at a time of transmission, wherein the spread spectrum signal is based on a spreading code;

receive, at a microphone of the system, the spread spectrum signal played back auditorily by the first electronic device;

despread the spread spectrum signal from the first electronic device based on the spreading code;

determine a time of receipt of the spread spectrum signal from the first electronic device based on the despreaded spread spectrum signal;

calculate an audiovisual output path delay for the first electronic device based on the time of receipt of the spread spectrum signal and the time of transmission of the spread spectrum signal, wherein the audiovisual output path delay for the first electronic device comprises a time delay between receiving the spread spectrum signal at the first electronic device and the spread spectrum signal being played back auditorily by the first electronic device; and

synchronize playback of audiovisual content at the first electronic device and a second electronic device based on the audiovisual output path delay for the first electronic device.

9. The system of claim 8 , wherein the data channel comprises an audio jack channel, a Radio Corporation of America (RCA) channel, an optical channel, or a High-Definition Multimedia Interface (HDMI) channel.

10. The system of claim 8 , wherein to despread, the at least one processor is further configured to:

despread the spread spectrum signal from the first electronic device based on a reference point associated with the spreading code.

11. The system of claim 10 , wherein to despread, the at least one processor is further configured to:

select a sliding window into the spreading code based on the reference point; and

despread the spread spectrum signal from the first electronic device based on the sliding window.

12. The system of claim 8 , wherein the second electronic device is configured to change an amount of the audiovisual content to a buffer based on the audiovisual output path delay for the first electronic device.

13. The system of claim 8 , wherein the second electronic device is configured to change a playback offset for the audiovisual content based on the audiovisual output path delay for the first electronic device.

14. The system of claim 8 , wherein the first electronic device comprises a dumb speaker and the system comprises a smart speaker.

15. A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations comprising:

transmitting a spread spectrum signal to a first electronic device over a data channel at a time of transmission, wherein the spread spectrum signal is based on a spreading code;

receiving, at a microphone of the computing device, the spread spectrum signal played back auditorily by the first electronic device;

despreading the spread spectrum signal from the first electronic device based on the spreading code;

determining a time of receipt of the spread spectrum signal from the first electronic device based on the despreaded spread spectrum signal;

calculating an audiovisual output path delay for the first electronic device based on the time of receipt of the spread spectrum signal and the time of transmission of the spread spectrum signal, wherein the audiovisual output path delay for the first electronic device comprises a time delay between receiving the spread spectrum signal at the first electronic device and the spread spectrum signal being played back auditorily by the first electronic device; and

synchronizing playback of audiovisual content at the first electronic device and a second electronic device based on the audiovisual output path delay for the first electronic device.

16. The non-transitory computer-readable medium of claim 15 , wherein the data channel comprises an audio jack channel, a Radio Corporation of America (RCA) channel, an optical channel, or a High-Definition Multimedia Interface (HDMI) channel.

17. The non-transitory computer-readable medium of claim 15 , the despreading comprising:

despreading the spread spectrum signal from the first electronic device based on a reference point associated with the spreading code.

18. The non-transitory computer-readable medium of claim 15 , wherein the second electronic device changes an amount of the audiovisual content to a buffer based on the audiovisual output path delay for the first electronic device.

19. The non-transitory computer-readable medium of claim 15 , wherein the second electronic device changes a playback offset for the audiovisual content based on the audiovisual output path delay for the first electronic device.

20. The non-transitory computer-readable medium of claim 15 , wherein the first electronic device comprises a dumb speaker and the at least one computing device comprises a smart speaker.

Assignments (4)
SECURITY INTEREST Recorded Sep 18, 2024
From: ROKU, INC.
To: CITIBANK, N.A.
Reel/Frame 068982/0377 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT (REEL/FRAME 048385/0375) Recorded Feb 22, 2023
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROKU, INC.
Reel/Frame 062826/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2019
From: CURTIS, ROBERT CASTON; ELY, MARK; MØLLER, BRIAN THOFT MOTH
To: ROKU, INC.
Reel/Frame 050221/0842 →
PATENT SECURITY AGREEMENT Recorded Feb 20, 2019
From: ROKU, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 048385/0375 →
Continuity (1)
Related Publication 20200091958A1 · Mar 19, 2020
Cited By (1)
US 12,348,943