Distributed speech recognition using one way communication
AssigneeMultimodal Technologies, LLC
InventorsEric Carraux, Detlef Koll
Life of this patent
Estimating the term…
Abstract
A speech recognition client sends a speech stream and control stream in parallel to a server-side speech recognizer over a network. The network may be an unreliable, low-latency network. The server-side speech recognizer recognizes the speech stream continuously. The speech recognition client receives recognition results from the server-side recognizer in response to requests from the client. The client may remotely reconfigure the state of the server-side recognizer during recognition if a first speech recognition result satisfies a predetermined criterion specified by the control stream.
Claims21
A computer-implemented method comprising:
- (A) at a client, transmitting a speech stream and a control stream to a speech recognition server using a Hypertext Transfer Protocol (HTTP) having a first timeout period;
- (B) at the speech recognition server, using an automatic speech recognition engine to initiate recognition of the speech stream;
- (C) at the client, transmitting a first request for a speech recognition result to the server using HTTP;
- and
- (D) at the server, transmitting a notification to the client indicating that no speech recognition results have become available within a second timeout period that differs from the first timeout period;
- and
- (E) at the client, in response to receiving the notification, transmitting a second request for the speech recognition result to the server using HTTP.
A system comprising a client device and a speech recognition server:
- wherein the client device comprises:
- means for transmitting a speech stream and a control stream to a speech recognition server using a Hypertext Transfer Protocol (HTTP) having a first timeout period;
- means for transmitting a first request for a speech recognition result to the server using HTTP;
- and
- wherein the speech recognition server comprises:
- means for using an automatic speech recognition engine to initiate recognition of the speech stream;
- means for transmitting a notification to the client indicating that no speech recognition results have become available within a second timeout period that differs from the first timeout period;
- and
- wherein the client further comprises means, responsive to receipt of the notification, for transmitting a second request for the speech recognition result to the server using HTTP.
A computer-implemented method performed by a client device, the method comprising:
- (A) transmitting a speech stream and a control stream to a speech recognition server using a Hypertext Transfer Protocol (HTTP) having a first timeout period;
- (B) transmitting a first request for a speech recognition result to a server using HTTP at a first time;
- (C) receiving, at a second time that differs from the first time by less than the first timeout period, a notification from the server indicating that no speech recognition results are available;
- and
- (D) in response to receiving the notification, transmitting a second request for the speech recognition result to the server using HTTP.
An apparatus comprising:
- means for transmitting a speech stream and a control stream to a speech recognition server using a Hypertext Transfer Protocol (HTTP) having a first timeout period;
- means for transmitting a first request for a speech recognition result to a server using HTTP at a first time;
- means for receiving, at a second time that differs from the first time by less than the first timeout period, a notification from the server indicating that no speech recognition results are available;
- and
- means for transmitting a second request for the speech recognition result to the server using HTTP in response to receiving the notification.
A computer-implemented method performed by a server, the method comprising:
- (A) receiving a speech stream and a control stream from a client using a Hypertext Transfer Protocol (HTTP) having a first timeout period;
- (B) using an automatic speech recognition engine to initiate recognition of the speech stream;
- (C) receiving a first request for a speech recognition result from the client using HTTP;
- and
- (D) transmitting a notification to the client indicating that no speech recognition results have become available within a second timeout period that differs from the first timeout period.
An apparatus comprising:
- means for receiving a speech stream and a control stream from a client using a Hypertext Transfer Protocol (HTTP) having a first timeout period;
- means for using an automatic speech recognition engine to initiate recognition of the speech stream;
- means for receiving a first request for a speech recognition result from the client using HTTP;
- and
- means for transmitting a notification to the client indicating that no speech recognition results have become available within a second timeout period that differs from the first timeout period.
A computer-implemented method comprising:
- (A) at a speech recognition server:
- (A)(1) receiving a speech stream and a control stream from a client;
- (A)(2) using an automatic speech recognition engine to recognize a first portion of the speech stream and thereby to produce a first speech recognition result;
- (B) at the speech recognition server, if the first speech recognition result satisfies a first predetermined criterion specified by the control stream, then waiting until the speech recognition engine has been reconfigured before continuing to (C);
- and
- (C) at the speech recognition server, using the automatic speech recognition engine to recognize a second portion of the speech stream and thereby to produce a second speech recognition result.
An apparatus comprising:
- first reception means for receiving a speech stream and a control stream from a client;
- first portion recognition means for using an automatic speech recognition engine to recognize a first portion of the speech stream and thereby to produce a first speech recognition result;
- waiting means for waiting until the speech recognition engine has been reconfigured before activating the second portion recognition means if the first speech recognition result satisfies a first predetermined criterion specified by the control stream;
- and
- second portion recognition means for using the automatic speech recognition engine to recognize a second portion of the speech stream and thereby to produce a second speech recognition result.
Dependencies are inferred from the claim text.