Dial pulse and speech recognition provide caller input to an application. Like touch-tone input, recognition applications use the input queue to retrieve recognized data. The IRE_INPUT_DONE event indicates when something has been recognized or the recognition timed out. A separate recognition timer is available to support timeout on input.
Dial pulse and speech recognition differ from touch-tone input in that the application must start the recognizer each time input is to be collected from the caller. Also, after receiving IRE_INPUT_DONE, the recognizer is automatically turned off; the recognition request has been completed.
WholeWord speech recognition works closely with echo cancellation to support barge-in (recognition during prompting) and talkoff (prompt stops playing when speech is first heard). Indeed, recognition during prompting is not possible unless echo cancellation is used.
This section first introduces the functions, parameters and header files used with speech recognition. Then, the chantest application shows the use of speech recognition with echo cancellation to support barge-in. This modified version of chantest stills supports input via touch tones and automatically turns off the recognizer when touch-tone data is received.