Zero latency digital assistant
First Claim
1. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a first processor and a second processor of an electronic device with a microphone, cause the device to:
- capture first audio input from the microphone, wherein the audio input includes speech from a user of the electronic device;
write, using the first processor, data representing the first audio input to a memory buffer, wherein the data includes at least a first portion of data representing at least a portion of the speech from a user of the electronic device;
while capturing audio input using the microphone and after writing the first portion of data to the memory buffer, receive a user input, wherein the user input is distinct from the first portion of audio data;
determine, using the first processor, whether the user input meets predetermined criteria;
in accordance with a determination that the user input meets the criteria, identify, using the second processor, a computing task based on at least the first portion of data wherein identifying the computing task includes identifying, based on at least the first portion of data, a user intent corresponding to the computing task; and
in accordance with a determination that the user input has not met the criteria, forgo identifying the task.
0 Assignments
0 Petitions
Accused Products
Abstract
An electronic device can implement a zero-latency digital assistant by capturing audio input from a microphone and using a first processor to write audio data representing the captured audio input to a memory buffer. In response to detecting a user input while capturing the audio input, the device can determine whether the user input meets a predetermined criteria. If the user input meets the criteria, the device can use a second processor to identify and execute a task based on at least a portion of the contents of the memory buffer.
3215 Citations
57 Claims
-
1. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a first processor and a second processor of an electronic device with a microphone, cause the device to:
-
capture first audio input from the microphone, wherein the audio input includes speech from a user of the electronic device; write, using the first processor, data representing the first audio input to a memory buffer, wherein the data includes at least a first portion of data representing at least a portion of the speech from a user of the electronic device; while capturing audio input using the microphone and after writing the first portion of data to the memory buffer, receive a user input, wherein the user input is distinct from the first portion of audio data; determine, using the first processor, whether the user input meets predetermined criteria; in accordance with a determination that the user input meets the criteria, identify, using the second processor, a computing task based on at least the first portion of data wherein identifying the computing task includes identifying, based on at least the first portion of data, a user intent corresponding to the computing task; and in accordance with a determination that the user input has not met the criteria, forgo identifying the task. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method, comprising:
at an electronic device including a microphone, a first processor, and a second processor; capturing first audio input from the microphone, wherein the audio input includes speech from a user of the electronic device; writing, using the first processor, data representing the first audio input to a memory buffer, wherein the data includes at least a first portion of data representing at least a portion of the speech from a user of the electronic device; while capturing the audio input using the microphone and after writing the first portion of data to the memory buffer, receive a user input, wherein the user input is distinct from the first portion of audio data; determining, using the first processor, whether the user input meets predetermined criteria; in accordance with a determination that the user input meets the criteria, identifying, using the second processor, a computing task based on at least the first portion of data, wherein identifying the computing task includes identifying, based on at least the first portion of data, a user intent corresponding to the computing task; and in accordance with a determination that the user input has not met the criteria, forgoing identifying the task. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
39. An electronic device, comprising:
-
a microphone; two or more processors; a memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the two or more processors, the one or more programs including instructions for; capturing first audio input from the microphone, wherein the audio input includes speech from a user of the electronic device; writing, using a first processor, data representing the first audio input to a memory buffer in the memory, wherein the data includes at least a first portion of data representing at least a portion of the speech from a user of the electronic device; while capturing audio input using the microphone and after writing the first portion of data to the memory buffer, receive a user input, wherein the user input is distinct from the first portion of audio data; determining, using the first processor, whether the user input meets predetermined criteria; in accordance with a determination that the user input meets the criteria, identifying, using a second processor, a computing task based on at least the first portion of data, wherein identifying the computing task includes identifying, based on at least the first portion of data, a user intent corresponding to the computing task; and in accordance with a determination that the user input has not met the criteria, forgoing identifying the task. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57)
-
Specification