IP Library › Granted Patent US 11,482,224
Granted Patent B2
US 11,482,224 · App. 16/879,549 · Granted Oct 25, 2022

Command keywords with input detection windowing

Inventors: Connor Kristopher Smith (New Hudson, MI); Matthew David Anderson (Santa Barbara, CA)
Assignee: Sonos, Inc.
G10L15/22G10L15/083G10L2015/088G10L2015/223
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 11,482,224
App. No.
16/879,549
Filed
May 20, 2020
Granted
Oct 25, 2022
Kind
B2
Examiner
HAN, QI
Art Unit
2659
USPC
704/275
Abstract

A device, such as Network Microphone Device or a playback device, receives an indication of a track change associated with a playback queue output by a media playback system. In response, an input detection window is opened for a given time period. During the given time period the device is arranged to receive an input sound data stream representing sound detected by a microphone. The input sound data stream is analyzed for a plurality of command keywords and/or a wake-word for a Voice Assistant Service (VAS) and, based on the analysis, it is determined that the input sound data stream includes voice input data comprising a command keyword or a wake-word for a VAS. In response, the device takes appropriate action such as causing the media playback system to perform a command corresponding to the command keyword or sending at least part of the input sound data stream to the VAS.

Claims (72)

1. A playback device forming part of a media playback system, the playback device comprising:

at least one microphone configured to detect sound;

at least one speaker;

at least one processor; and

data storage having instructions stored thereon that are executed by the at least one processor to cause the playback device to perform functions comprising:

determining a track change associated with a playback queue output by the media playback system;

responsive to the track change, opening an input detection window for a given time period;

wherein during the given time period the at least one processor is arranged to perform functions comprising:

receiving, by the at least one processor, an input sound data stream from the at least one microphone, wherein the input sound data stream represents sound detected by the at least one microphone;

analyzing the input sound data stream by the at least one processor for a plurality of command keywords supported by the playback device;

determining, based on the analysis, that the input sound data stream includes voice input data comprising a command keyword; wherein the command keyword is one of the plurality of command keywords supported by the playback device; and

responsive to the determining that the input sound data stream includes voice input data comprising a command keyword, causing the media playback system to perform a command corresponding to the command keyword;

storing historical data in the data storage, the historical data including the identified track changes and any associated commands; and

analyzing the historical data to adjust the given time period associated with the input detention window.

2. The playback device according to claim 1 , wherein analyzing the historical data comprises:

determining a frequency of the associated commands and a time period, relative to a time of the received indication, during which the associated playback commands were received by the media playback system; and

setting the given time period based on the frequency and the time period.

3. The playback device according to claim 1 , wherein the given time period is associated with a user account of the media playback system.

4. The playback device according to claim 1 , wherein outside of the input detection window, the input sound data stream is not analyzed.

5. The playback device according to claim 1 , further comprising:

a network interface, and

the instructions stored on the data storage that are executed by the at least one processor further cause the playback device to perform functions comprising:

transmitting, via the network interface and during the input detection window, at least part of the input sound data stream to a remote server for analysis;

receiving data including a remote command from the remote server, the remote command being supported by the playback device; and

causing the media playback system to perform the remote command.

6. The playback device according to claim 1 , wherein the analyzing the input data stream comprises determining a command keyword by at least one of:

natural language processing to determine an intent, based on an analysis of the command keyword in the input sound data stream; and

pattern-matching based on a predefined library of keywords and associated command keywords.

7. A method to be performed by a playback device forming part of a media playback system and comprising at least one microphone configured to detect sound, the method comprising:

determining a track change associated with a playback queue output by the media playback system; and

responsive to the track change, opening, an input detection window for a given time period;

during the given time period:

receiving an input sound data stream representing the sound detected by the at least one microphone;

analyzing the input sound data stream for a plurality of command keywords supported by the playback device;

determining based on the analysis, that the input sound data stream includes voice input data comprising a command keyword; wherein the command keyword is one of the plurality of command keywords supported by the playback device; and

responsive to the determining that the input sound data stream includes voice input data comprising a command keyword, causing the media playback system to perform a command corresponding to the command keyword;

storing historical data in the data storage, the historical data including determined track changes and any associated commands; and

analyzing the historical data to adjust the given time period associated with input detection window.

8. The method according to claim 7 , wherein analyzing the historical data comprises:

determining a frequency of the associated commands and a time period, relative to a time of the received indication, during which the associated commands were received by the media playback system; and

setting the given time period based on the frequency and the time period.

9. The method according to claim 7 , wherein the given time period is associated with a user account of the media playback system.

10. The method according to claim 7 , wherein outside of the input detection window, the input sound data stream is not analyzed.

11. The method according to claim 7 , wherein the playback device comprises a network interface, and the method further comprises:

transmitting, via the network interface and during the input detection window, at least part of the input sound data stream to an external device for analysis;

receiving data including an external command from the external device, the external command being supported by the playback device; and

causing the media playback system to perform the external command.

12. The method according to claim 7 , wherein the analyzing the input data stream comprises determining a command keyword by at least one of:

natural language processing to determine an intent, based on an analysis of the command keyword in the input sound data stream; and

pattern-matching based on a predefined library of keywords and associated command keywords.

13. A non-transitory computer-readable medium having instructions stored thereon that are executable by one or more processors to cause a playback device to perform functions, the playback device forming part of a media playback system and comprising at least one microphone configured to detect sound, the functions comprising:

determining a track change associated with a playback queue output by the media playback system; and

responsive to the track change, opening an input detection window for a given time period;

during the given time period:

receiving an input sound data stream representing the sound detected by the at least one microphone;

analyzing the input sound data stream for a plurality of command keywords supported by the playback device;

determining based on the analysis, that the input sound data stream includes voice input data comprising a command keyword; wherein the command keyword is one of the plurality of command keywords supported by the playback device; and

responsive to the determining that the input sound data stream includes voice input data comprising a command keyword, causing the media playback system to perform a command corresponding to the command keyword;

storing historical data in the data storage, the historical data including determined track changes and any associated commands; and

analyzing the historical data to adjust the given time period associated with input detection window.

14. The computer-readable medium according to claim 13 , wherein analyzing the historical data comprises:

determining a frequency of the associated commands and a time period, relative to a time of the received indication, during which the associated commands were received by the media playback system; and

setting the given time period based on the frequency and the time period.

15. The computer-readable medium according to claim 13 , wherein the given time period is associated with a user account of the media playback system.

16. The computer-readable medium according to claim 13 , wherein outside of the input detection window, the input sound data stream is not analyzed.

17. The computer-readable medium according to claim 13 , wherein the playback device comprises a network interface, and the functions further comprise:

transmitting, via the network interface and during the input detection window, at least part of the input sound data stream to an external device for analysis;

receiving data including an external command from the external device, the external command being supported by the playback device; and

causing the media playback system to perform the external command.

18. The computer-readable medium according to claim 13 , wherein the analyzing the input data stream comprises determining a command keyword by at least one of:

natural language processing to determine an intent, based on an analysis of the command keyword in the input sound data stream; and

pattern-matching based on a predefined library of keywords and associated command keywords.

Assignments (2)
SECURITY INTEREST Recorded Jan 30, 2026
From: SONOS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 074533/0615 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2020
From: SMITH, CONNOR KRISTOPHER; ANDERSON, MATTHEW DAVID
To: SONOS, INC.
Reel/Frame 052735/0244 →
Continuity (1)
Related Publication 20210366476A1 · Nov 25, 2021
Cited By (4)
US 12,244,754 US 12,418,570 US 12,437,755 US 12,744,843