Interacting with users for hands-free operation
Last reviewed: 7/8/2022
HOW Article ID: H072217
The information in this article applies to:
- Talk&Listen 2
Summary
Applications interact with end users by talking and listening and offering hands-free operation.
More Information
Chant Developer Workbench 2022 includes Talk&Listen application helper to simplify the process of integrating speech synthesis and speech recognition for hands-free operation.
Sometimes applications need a simple way to synthesize and recognize. Chant Talk&Listen application helper enables applications to synthesize and recognize speech without having to worry about events, properties, and callback handlers.
// Instantiate TalkListen
NTalkListen _TalkListen = new NTalkListen();
if (_TalkListen != null)
{
// Set license properties
_TalkListen.SetCredentials("Credentials");
NSAPI5Synthesizer _Synthesizer = _TalkListen.CreateSAPI5Synthesizer();
if (_Synthesizer != null)
{
_Synthesizer.Talk("This is the easiest way to synthesize.");
}
NSAPI5Recognizer _Recognizer = _TalkListen.CreateSAPI5Recognizer();
if (_Recognizer != null)
{
string recognitionResults = _Recognizer.Listen();
}
}
Syntax Options
The Talk method has two optional parameters that may be used to control speech synthesis:
- text - (required) The text to synthesize.
- name - (optional) The speech synthesizer voice name.
- async - (optional) True or False for asynchronous synthesis. Note some synthesizers only perform asynchronous synthesis. The default is False.
The Listen method has three optional parameters that may be used to control speech recognition:
- timeout - (optional) The maximum time to listen in seconds. If the value is 0, listening occurs until speech is recognized.
- commands - (optional) A comma separated list of phrases to use for recognition.
- grammar - (optional) The file path of a speech recognition grammar to use for recognition.
- name - (optional) The speech recognizer name or language.
Development and Deployment
Talk&Listen applications require the Talk&Listen library and the applicable SpeechKit Speech API library:
- C++Builder, C++, and Delphi applications require the Talk&Listen library (CTalkListen.dll or CTalkListenX64.dll) and the applicable SpeechKit Speech API library in the same directory as the application .exe.
- Java applications require the talklisten.jar and chant.shared.jar in the target system Java JRE lib directory and/or ensure the classpath includes the path where the talklisten.jar and chant.shared.jar libraries are placed on the target system. The Talk&Listen library (JTalkListen.dll or JTalkListenX64.dll) and the applicable SpeechKit Speech API library must be in the target system Java JRE bin directory.
- C# and VB .NET applications require the assembly library (Chant.TalkListen.Windows) embedded in the application or located in the same directory as the application .exe. The Talk&Listen library (NTalkListen.dll or NTalkListenX64.dll) must be registered as a COM library on the target system and the applicable SpeechKit Speech API library in the same directory as the application .exe.
Speech API | SpeechKit Speech API class | SpeechKit Speech API library |
---|---|---|
Acapela TTS | xAcaTTSSynthesizer | CSpeechKit.AcaTTS.dll or CSpeechKitX64.AcaTTS.dll |
Cepstral Swift | xSwiftSynthesizer | CSpeechKit.Swift.dll or CSpeechKitX64.Swift.dll |
CereProc CereVoice | xCereVoiceSynthesizer | CSpeechKit.CereVoice.dll or CSpeechKitX64.CereVoice.dll |
Microsoft SAPI 5 | xSAPI5Recognizer or xSAPI5Synthesizer | CSpeechKit.SAPI5.dll or CSpeechKitX64.SAPI5.dll |
Microsoft Speech Platform | xMSPRecognizer or xMSPSynthesizer | CSpeechKit.MSP.dll or CSpeechKitX64.MSP.dll |
Microsoft WindowsMedia (WinRT C++) | xWindowsMediaRecognizer or xWindowsMediaSynthesizer | CSpeechKit.WinRT.dll or CSpeechKitX64.WinRT.dll |
Nuance Dragon NaturallySpeaking | xDgnRecognizer | CSpeechKit.Dgn.dll or CSpeechKitX64.Dgn.dll |
where x is C for C++Builder and C++; T for Delphi; J for Java; and N for .NET.