IP Library › Granted Patent US 12,190,891
Granted Patent B2
US 12,190,891 · App. 18/431,608 · Granted Jan 7, 2025

Adaptive management of casting requests and/or user inputs at a rechargeable device

Inventors: Andrei Pascovici (Bellevue, WA); Victor Lin (Fremont, CA); Jianghai Zhu (Santa Clara, CA); Paul Gyugyi (Sunnyvale, CA); Shlomi Regev (Mountain View, CA)
Assignee: GOOGLE LLC
G10L17/10G10L15/26G10L25/78G10L2025/783
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 12,190,891
App. No.
18/431,608
Granted
Jan 7, 2025
Kind
B2
Abstract

Implementations set forth herein relate to management of casting requests and user inputs at a rechargeable device, which provides access to an automated assistant and is capable of rendering data that is cast from a separate device. Casting requests can be handled by the rechargeable device despite a device SoC of the rechargeable device operating in a sleep mode. Furthermore, spoken utterances provided by a user for invoking the automated assistant can also be adaptively managed by the rechargeable device in order mitigate idle power consumption by the device SoC. Such spoken utterances can be initially processed by a digital signal processor (DSP), and, based on one or more features (e.g., voice characteristic, conformity to a particular invocation phrase, etc.) of the spoken utterance, the device SoC can be initialized for an amount of time that is selected based on the features of the spoken utterance.

Claims (65)

1. A method, comprising:

determining, by a processor of a computing device, that an input to a microphone of the computing device at least partially corresponds to an invocation phrase for invoking an automated assistant that is accessible via the computing device;

causing, by the processor and based on the input to the microphone, another processor of the computing device to transition from a sleep mode into an operating mode;

subsequent to the other processor transitioning from the sleep mode into the operating mode:

generating, by the other processor, first data that characterizes an audio output provided by the computing device via one or more speakers that are in communication with the computing device,

wherein the first data includes first time data that characterizes a time at which the other processor generated the first data;

determining, by the processor, that another input has been provided to the microphone of the computing device;

generating, by the processor, second data that characterizes the other input to the microphone of the computing device,

wherein the second data includes second time data that characterizes another time at which the processor generated the second data;

determining, by the other processor, a time offset between the time at which the other processor generated the first data and the other time at which the processor generated the second data;

processing, by the other processor, the second data using the time offset in furtherance of removing one or more features of the audio output provided by the one or more speakers;

determining, by the other processor and based on processing the second data using the time offset, whether the other input to the microphone corresponds to a spoken utterance to invoke the automated assistant that is accessible via the computing device; and

when the other input to the microphone is determined to correspond to the spoken utterance to invoke the automated assistant:

causing, by the other processor, the automated assistant to provide responsive output via an interface that is in communication with the computing device.

2. The method of claim 1 , wherein processing the second data using the time offset in furtherance of removing one or more features of the audio output includes performing an acoustic echo cancellation (AEC) process using the second data and the audio data.

3. The method of claim 1 , wherein the time offset corresponds to a difference in clock operating characteristics of a clock of the processor and another clock of the other processor.

4. The method of claim 3 , wherein the time offset is based on a difference between:

a first clock value determined using the clock, and

a second clock value determined using the other clock.

5. The method of claim 4 , wherein the first clock value and the second clock value are determined when the other processor is in the operating mode.

6. The method of claim 4 , wherein the time offset is determined by multiplying a ratio of differences between clock values by a time value corresponding to the other time.

7. The method of claim 1 , wherein the computing device includes one or more batteries that provide power to the processor and to the other processor when the other processor is operating according to the operating mode.

8. The method of claim 1 , wherein the processor is a digital signal processor (DSP) and the other processor is a device system on a chip (SoC).

9. A portable computing device, comprising:

one or more speakers;

a microphone;

a first processor operable to:

determine that an input to the microphone of the computing device at least partially corresponds to an invocation phrase for invoking an automated assistant that is accessible via the computing device;

cause, based on the input to the microphone, a second processor of the computing device to transition from a sleep mode into an operating mode;

a second processor operable to, subsequent to transitioning from the sleep mode into the operating mode:

generate first data that characterizes an audio output provided by the computing device via one or more speakers that are in communication with the computing device,

wherein the first data includes first time data that characterizes a time at which the other processor generated the first data;

the first processor further operable to:

determine that another input has been provided to the microphone of the computing device;

generate second data that characterizes the other input to the microphone of the computing device,

wherein the second data includes second time data that characterizes another time at which the processor generated the second data;

the second processor further operable to, subsequent to transitioning from the sleep mode into the operating mode:

determine a time offset between the time at which the second processor generated the first data and the other time at which the first processor generated the second data;

process the second data using the time offset in furtherance of removing one or more features of the audio output provided by the one or more speakers;

determine, based on processing the second data using the time offset, whether the other input to the microphone corresponds to a spoken utterance to invoke the automated assistant that is accessible via the computing device; and

when the other input to the microphone is determined to correspond to the spoken utterance to invoke the automated assistant:

cause the automated assistant to provide responsive output via an interface that is in communication with the computing device.

10. The portable computing device of claim 9 , wherein in processing the second data using the time offset in furtherance of removing one or more features of the audio output the second processor is to perform an acoustic echo cancellation (AEC) process using the second data and the audio data.

11. The portable computing device of claim 9 , wherein the time offset corresponds to a difference in clock operating characteristics of a first clock of the first processor and a second clock of the second processor.

12. The portable computing device of claim 11 , wherein the time offset is based on a difference between:

a first clock value determined using the first clock, and

a second clock value determined using the second clock.

13. The portable computing device of claim 12 , wherein the first clock value and the second clock value are determined when the second processor is in the operating mode.

14. The portable computing device of claim 12 , wherein the time offset is determined by multiplying a ratio of differences between clock values by a time value corresponding to the other time.

15. The portable computing device of claim 9 , further comprising one or more batteries that provide power to the first processor and to the second processor when the second processor is operating according to the operating mode.

16. The portable computing device of claim 9 , wherein the first processor is a digital signal processor (DSP) and the second processor is a device system on a chip (SoC).

17. One or more non-transitory computer-readable storage media comprising instructions, which, when executed cause:

determining, by a processor of a computing device, that an input to a microphone of the computing device at least partially corresponds to an invocation phrase for invoking an automated assistant that is accessible via the computing device;

causing, by the processor and based on the input to the microphone, another processor of the computing device to transition from a sleep mode into an operating mode;

subsequent to the other processor transitioning from the sleep mode into the operating mode:

generating, by the other processor, first data that characterizes an audio output provided by the computing device via one or more speakers that are in communication with the computing device,

wherein the first data includes first time data that characterizes a time at which the other processor generated the first data;

determining, by the processor, that another input has been provided to the microphone of the computing device;

generating, by the processor, second data that characterizes the other input to the microphone of the computing device,

wherein the second data includes second time data that characterizes another time at which the processor generated the second data;

determining, by the other processor, a time offset between the time at which the other processor generated the first data and the other time at which the processor generated the second data;

processing, by the other processor, the second data using the time offset in furtherance of removing one or more features of the audio output provided by the one or more speakers;

determining, by the other processor and based on processing the second data using the time offset, whether the other input to the microphone corresponds to a spoken utterance to invoke the automated assistant that is accessible via the computing device;

and when the other input to the microphone is determined to correspond to the spoken utterance to invoke the automated assistant:

causing, by the other processor, the automated assistant to provide responsive output via an interface that is in communication with the computing device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2024
From: PASCOVICI, ANDREI; LIN, VICTOR; ZHU, JIANGHAI; GYUGYI, PAUL; REGEV, SHLOMI
To: GOOGLE LLC
Reel/Frame 066922/0938 →
Continuity (3)
Continuation 17473067 · Sep 13, 2021
Continuation 16606471
Related Publication 20240177716A1 · May 30, 2024
References Cited (83)
US 5983186A · Miyazawa et al. · 1999 [cited by applicant]
US 7877401B1 · Hostetter · 2011 [cited by applicant]
US 8385971B2 · Rhoads · 2013 [cited by applicant]
US 9734822B1 · Sundaram et al. · 2017 [cited by applicant]
US 9906375B1 · Roquemore, III · 2018 [cited by applicant]
US 10419931B1 · Sohail · 2019 [cited by applicant]
US 10649727B1 · Douglas · 2020 [cited by examiner]
US 10878812B1 · Helwani · 2020 [cited by examiner]
US 10964319B2 · Park et al. · 2021 [cited by applicant]
US 11043086B1 · Daoura · 2021 [cited by examiner]
US 11120804B2 · Pascovici et al. · 2021 [cited by applicant]
US 20130223635A1 · Singer et al. · 2013 [cited by applicant]
US 20130289994A1 · Newman et al. · 2013 [cited by applicant]
US 20140075348A1 · Sathish · 2014 [cited by applicant]
US 20140122078A1 · Joshi et al. · 2014 [cited by applicant]
US 20140214958A1 · Cheshire · 2014 [cited by applicant]
US 20140244269A1 · Tokutake · 2014 [cited by applicant]
US 20140257821A1 · Adams et al. · 2014 [cited by applicant]
US 20140359034A1 · Hernandez · 2014 [cited by examiner]
US 20150373505A1 · Hsieh · 2015 [cited by applicant]
US 20160077792A1 · Bansal · 2016 [cited by examiner]
US 20160099940A1 · Enke · 2016 [cited by applicant]
US 20160148615A1 · Lee · 2016 [cited by applicant]
US 20160162227A1 · Kato · 2016 [cited by applicant]
US 20160205730A1 · Harbers · 2016 [cited by applicant]
US 20170251503A1 · Bao · 2017 [cited by applicant]
US 20180032711A1 · Zhang et al. · 2018 [cited by applicant]
US 20180077642A1 · Mandiganal · 2018 [cited by applicant]
US 20180108351A1 · Beckhardt et al. · 2018 [cited by applicant]
US 20180152827A1 · Perez · 2018 [cited by applicant]
US 20180233150A1 · Gruenstein et al. · 2018 [cited by applicant]
US 20180253281A1 · Jarvis · 2018 [cited by examiner]
US 20180286403A1 · Gruber · 2018 [cited by applicant]
US 20180294983A1 · Mani · 2018 [cited by applicant]
US 20180324703A1 · Knudson et al. · 2018 [cited by applicant]
US 20180330727A1 · Tuli · 2018 [cited by applicant]
US 20180366117A1 · Carreras · 2018 [cited by applicant]
US 20190013021A1 · Chang · 2019 [cited by examiner]
US 20190043507A1 · Huang et al. · 2019 [cited by applicant]
US 20190073999A1 · Premont et al. · 2019 [cited by applicant]
US 20190102379A1 · First · 2019 [cited by examiner]
US 20190182204A1 · Kachalia · 2019 [cited by applicant]
US 20190208062A1 · Shaffer · 2019 [cited by examiner]
US 20190320978A1 · Lee et al. · 2019 [cited by applicant]
US 20200051554A1 · Kim · 2020 [cited by examiner]
US 20200089517A1 · Paul · 2020 [cited by applicant]
US 20200105256A1 · Fainberg et al. · 2020 [cited by applicant]
US 20200128114A1 · Kloberdans · 2020 [cited by applicant]
US 20200186378A1 · Six et al. · 2020 [cited by applicant]
US 20200279558A1 · Li et al. · 2020 [cited by applicant]
US 20200342880A1 · Pascovici et al. · 2020 [cited by applicant]
US 20210407518A1 · Pascovici et al. · 2021 [cited by applicant]
JP H05323993 · 1993 [cited by applicant]
JP H0962293 · 1997 [cited by applicant]
JP H11296194 · 1999 [cited by applicant]
JP 2011049721 · 2011 [cited by applicant]
JP 2016536648 · 2016 [cited by applicant]
JP 2019015952 · 2019 [cited by applicant]
JP 2019040602 · 2019 [cited by applicant]
KR 20160014357 · 2016 [cited by applicant]
KR 20160100765 · 2016 [cited by applicant]
WO 2013163113 · 2013 [cited by applicant]
WO 2018119138 · 2018 [cited by applicant]
WO 2018135753 · 2018 [cited by applicant]
WO 2018151772 · 2018 [cited by applicant]
WO 2018188587 · 2018 [cited by applicant]
WO 2020204907 · 2020 [cited by applicant]
Korean Patent Office; Decision of Rejection issued in Application No. KR10-2021-7024198; 12 pages; dated Feb. 18, 2024. [cited by applicant]
European Patent Office; Intention to Grant issued in Application No. 23166189.3; 55 pages; dated Feb. 26, 2024. [cited by applicant]
China National Intellectual Property Administration; Notice of Grant issued in Application No. 201980091798.6; 4 pages; dated Apr. 4, 2024. [cited by applicant]
Korean Patent Office; Decision of Rejection issued in Application No. KR10-2021-7024198; 9 pages; dated Oct. 10, 2023. [cited by applicant]
Korean Patent Office; Office Action issued in Application No. KR10-2021-7024198; 35 pages; dated May 24, 2023. [cited by applicant]
European Patent Office; Communication issued in Application No. 23166189.3; 5 pages; dated Aug. 4, 2023. [cited by applicant]
European Patent Office; Communication under Rule 71(3) EPC issued in Application No. 19717686.0; 63 pages; dated Dec. 1, 2022. [cited by applicant]
Japanese Patent Office; Notice of Allowance issued in Application No. 2021-542498, 3 pages, dated Apr. 25, 2022. [cited by applicant]
European Patent Office; Communication Pursuant to Article 94(3) EPC issued in Application No. 19717686.0; 4 pages; dated Mar. 24, 2021. [cited by applicant]
European Patent Office; Invitation to Pay Additional Fees in Application No. PCT/US2019/025256; 15 pages; dated Jul. 11, 2019. [cited by applicant]
International Search Report and Written Opinion issued in Application No. PCT/US2019/025256 dated Jun. 9, 2019 (20 Pages) 2019. [cited by applicant]
European Patent Office; International Search Report and Written Opinion issued in Application No. PCT/US2019/025256; 20 pages; dated Sep. 6, 2019. [cited by applicant]
Japanese Patent Office; Notice of Allowance issued in Application No. 2022-084509, 3 pages, dated Jun. 9, 2023. [cited by applicant]
European Patent Office; Communication pursuant to Article 94(3) issued in Application No. 23166189.3; 6 pages; dated Dec. 18, 2023. [cited by applicant]
Japanese Patent Office; Notice of Refusal issued in Application No. 2023-117719; 8 pages; dated Oct. 28, 2024. [cited by applicant]
European Patent Office; Communication issued in Application No. 24187779.4; 13 pages; dated Oct. 4, 2024. [cited by applicant]