Integration of embedded and network speech recognizers
First Claim
1. A computer-implemented method comprising:
- receiving audio data corresponding to a user utterance;
providing the audio data to a remote speech recognizer and, in response, obtaining several search results that are identified as a result of a search of a remote database using at least a portion of a remotely-generated transcription of the user utterance as a query, the remotely-generated transcription of the user utterance being generated by the remote speech recognizer;
obtaining a locally-generated transcription of the user utterance and a speech recognition confidence value associated with the locally-generated transcription of the user utterance, the locally-generated transcription of the user utterance and the confidence value being generated by a local speech recognizer;
in response to determining that the speech recognition confidence value generated by the local speech recognizer fails to meet a threshold value;
bypassing performing a search of a local database using at least a portion of the locally-generated transcription as a query,providing one or more of the search results that are identified as a result of the search of the remote database for output,receiving data indicative of a selection of a particular search result from among the provided search results that are identified as a result of the search of the remote database, andstoring the locally-generated transcription of the user utterance, generated by the local speech recognizer, in association with data identifying the particular search result;
receiving, after storing the locally-generated transcription of the user utterance, second audio data corresponding to a second user utterance;
obtaining a locally-generated transcription of the second user utterance, the locally-generated transcription of the second user utterance being generated by the local speech recognizer;
determining that the locally-generated transcription of the second user utterance matches the stored locally-generated transcription of the user utterance;
providing the second audio data to the remote speech recognizer after determining that the locally-generated transcription of the second user utterance matches the stored locally-generated transcription of the user utterance and, in response, obtaining several additional search results that are identified as a result of a search of the remote database using at least a portion of a remotely-generated transcription of the second user utterance as a query, the remotely-generated transcription of the second user utterance being generated by the remote speech recognizer; and
providing the particular search result and the several additional search results that are identified as a result of the search of the remote database for output, based on the data identifying the particular search result that is stored in association with the locally-generated transcription of the user utterance.
2 Assignments
0 Petitions
Accused Products
Abstract
A method, computer program product, and system are provided for performing a voice command on a client device. The method can include translating, using a first speech recognizer located on the client device, an audio stream of a voice command to a first machine-readable voice command and generating a first query result using the first machine-readable voice command to query a client database. In addition, the audio stream can be transmitted to a remote server device that translates the audio stream to a second machine-readable voice command using a second speech recognizer. Further, the method can include receiving a second query result from the remote server device, where the second query result is generated by the remote server device using the second machine-readable voice command and displaying the first query result and the second query result on the client device.
-
Citations
12 Claims
-
1. A computer-implemented method comprising:
-
receiving audio data corresponding to a user utterance; providing the audio data to a remote speech recognizer and, in response, obtaining several search results that are identified as a result of a search of a remote database using at least a portion of a remotely-generated transcription of the user utterance as a query, the remotely-generated transcription of the user utterance being generated by the remote speech recognizer; obtaining a locally-generated transcription of the user utterance and a speech recognition confidence value associated with the locally-generated transcription of the user utterance, the locally-generated transcription of the user utterance and the confidence value being generated by a local speech recognizer; in response to determining that the speech recognition confidence value generated by the local speech recognizer fails to meet a threshold value; bypassing performing a search of a local database using at least a portion of the locally-generated transcription as a query, providing one or more of the search results that are identified as a result of the search of the remote database for output, receiving data indicative of a selection of a particular search result from among the provided search results that are identified as a result of the search of the remote database, and storing the locally-generated transcription of the user utterance, generated by the local speech recognizer, in association with data identifying the particular search result; receiving, after storing the locally-generated transcription of the user utterance, second audio data corresponding to a second user utterance; obtaining a locally-generated transcription of the second user utterance, the locally-generated transcription of the second user utterance being generated by the local speech recognizer; determining that the locally-generated transcription of the second user utterance matches the stored locally-generated transcription of the user utterance; providing the second audio data to the remote speech recognizer after determining that the locally-generated transcription of the second user utterance matches the stored locally-generated transcription of the user utterance and, in response, obtaining several additional search results that are identified as a result of a search of the remote database using at least a portion of a remotely-generated transcription of the second user utterance as a query, the remotely-generated transcription of the second user utterance being generated by the remote speech recognizer; and providing the particular search result and the several additional search results that are identified as a result of the search of the remote database for output, based on the data identifying the particular search result that is stored in association with the locally-generated transcription of the user utterance. - View Dependent Claims (2, 3, 4)
-
-
5. A system comprising:
-
one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising; receiving audio data corresponding to a user utterance; providing the audio data to a remote speech recognizer and, in response, obtaining several search results that are identified as a result of a search of a remote database using at least a portion of a remotely-generated transcription of the user utterance as a query, the remotely-generated transcription of the user utterance being generated by the remote speech recognizer; obtaining a locally-generated transcription of the user utterance and a speech recognition confidence value associated with the locally-generated transcription of the user utterance, the locally-generated transcription of the user utterance and the confidence value being generated by a local speech recognizer; in response to determining that the speech recognition confidence value generated by the local speech recognizer fails to meet a threshold value; bypassing performing a search of a local database using at least a portion of the locally-generated transcription as a query, providing one or more of the search results that are identified as a result of the search of the remote database for output, receiving data indicative of a selection of a particular search result from among the provided search results that are identified as a result of the search of the remote database, and storing the locally-generated transcription of the user utterance, generated by the local speech recognizer, in association with data identifying the particular search result; receiving, after storing the locally-generated transcription of the user utterance, second audio data corresponding to a second user utterance; obtaining a locally-generated transcription of the second user utterance, the locally-generated transcription of the second user utterance being generated by the local speech recognizer; determining that the locally-generated transcription of the second user utterance matches the stored locally-generated transcription of the user utterance; providing the second audio data to the remote speech recognizer after determining that the locally-generated transcription of the second user utterance matches the stored locally-generated transcription of the user utterance and, in response, obtaining several additional search results that are identified as a result of a search of the remote database using at least a portion of a remotely-generated transcription of the second user utterance as a query, the remotely-generated transcription of the second user utterance being generated by the remote speech recognizer; and providing the particular search result and the several additional search results that are identified as a result of the search of the remote database for output, based on the data identifying the particular search result that is stored in association with the locally-generated transcription of the user utterance. - View Dependent Claims (6, 7, 8)
-
-
9. A computer-readable storage device storing software comprising instructions executable by one or more computers which, upon such execution, cause the one or more computers to perform operations comprising:
-
receiving audio data corresponding to a user utterance; providing the audio data to a remote speech recognizer and, in response, obtaining several search results that are identified as a result of a search of a remote database using at least a portion of a remotely-generated transcription of the user utterance as a query, the remotely-generated transcription of the user utterance being generated by the remote speech recognizer; obtaining a locally-generated transcription of the user utterance and a speech recognition confidence value associated with the locally-generated transcription of the user utterance, the locally-generated transcription of the user utterance and the confidence value being generated by a local speech recognizer; in response to determining that the speech recognition confidence value generated by the local speech recognizer fails to meet a threshold value; bypassing performing a search of a local database using at least a portion of the locally-generated transcription as a query, providing one or more of the search results that are identified as a result of the search of the remote database for output, receiving data indicative of a selection of a particular search result from among the provided search results that are identified as a result of the search of the remote database, and storing the locally-generated transcription of the user utterance, generated by the local speech recognizer, in association with data identifying the particular search result; receiving, after storing the locally-generated transcription of the user utterance, second audio data corresponding to a second user utterance; obtaining a locally-generated transcription of the second user utterance, the locally-generated transcription of the second user utterance being generated by the local speech recognizer; determining that the locally-generated transcription of the second user utterance matches the stored locally-generated transcription of the user utterance; providing the second audio data to the remote speech recognizer after determining that the locally-generated transcription of the second user utterance matches the stored locally-generated transcription of the user utterance and, in response, obtaining several additional search results that are identified as a result of a search of the remote database using at least a portion of a remotely-generated transcription of the second user utterance as a query, the remotely-generated transcription of the second user utterance being generated by the remote speech recognizer; and providing the particular search result and the several additional search results that are identified as a result of the search of the remote database for output, based on the data identifying the particular search result that is stored in association with the locally-generated transcription of the user utterance. - View Dependent Claims (10, 11, 12)
-
Specification