Cisco Unified Application Environment Developer Forums

« Back to Etch

Voice Recognition

Combination View Flat View Tree View
Threads [ Previous | Next ]
Voice Recognition
etch failure ulaw voice recognition
Answer
7/15/09 12:27 PM
Hi
 
I am trying to use etch to carry out some simple voice recognition. However my code always returns "Failure" when calling server.voiceRecognition().
 
Here's my demo code. Has anyone got any ideas why, or an example of this working?
 
 
   VoiceRecognitionOptions opt = new VoiceRecognitionOptions();
            opt.SetTermCondMaxTime(3000);
            opt.SetTermCondNonSilence(500);
            opt.SetTermCondSilence(3000);
            opt.SetCommandTimeout(6000);
            opt.SetAudioFileEncoding(AudioFileEncoding.ULAW);

         VoiceRecognitionResult res = server.voiceRecognition(sessionId, results.connectionId, "static:jeeves.grxml",
                           "Please say hi, how are you, or bye and wait for response.", false, false, opt);


 
 
 
 
 
 
Many thanks
 
 
Jon

RE: Voice Recognition
Answer
7/15/09 1:44 PM as a reply to Jonathan Withers.
Hi Jonathan,
 
If you want to use the voice recoginition feature of CUAE then you need to download and install the Nuance Open Speech Recognizer(version 3.0). On the CUAE side, only the speech recognition client is implemented. The server needs to be installed and configured to be used with the CUAE.
 
Regards,
Rakesh.

Hi Rakesh,
 
Thank you for the help. I have the Open Speech Recognizer setup on the CUAE, as this is done as part of the install.
 
Any other ideas?
 
Jon

RE: Voice Recognition
Answer
7/15/09 2:41 PM as a reply to Jonathan Withers.
Hi Jon,
 
It's good that you have OpenSppechRecognizer already installed. Is the licensing part of the OpenSpeechRecognizer taken care of? If yes then start the OpenSpeechRecognizer server and try to run the file:
 
C:\Program Files\SpeechWorks\OpenSpeech Recognizer\bin\SWIrecTest.exe. 
 
If this executes without giving any error, then the connection between the CUAE server and the OpenSpeechrecognizer server is working fine and the issue is being caused by some other component. Can you please run this exe and let me know the outcome?
 
Regards,
Rakesh.
 
 

Hi Rakesh,
 
Thanks for the ideas.
 
I am using the SDK version of the CUAE so assume the licensing is ok.
 
<h2>License Statistics</h2>
<table class="c-data-grid" border="0">
<thead>
<tr>
<th class="displayName t-first">Resource</th><th class="maxlictype">Max</th><th class="lictype">Licensed</th><th class="active">Active</th><th class="stats t-last">Stats</th>
</tr>
</thead>
<tbody>
<tr class="c-grid-row-odd t-first">
<td class="displayName">Application Sessions</td>
<td class="maxlictype">6</td>
<td class="lictype">6</td>
<td class="active">0</td>
<td class="stats">View Graphs</td>
</tr>
<tr class="c-grid-row-even">
<td class="displayName">Voice Ports</td>
<td class="maxlictype">6</td>
<td class="lictype">6</td>
<td class="active">0</td>
<td class="stats">View Graphs</td>
</tr>
<tr class="c-grid-row-odd">
<td class="displayName">RTP Ports</td>
<td class="maxlictype">6</td>
<td class="lictype">6</td>
<td class="active">0</td>
<td class="stats">View Graphs</td>
</tr>
<tr class="c-grid-row-even">
<td class="displayName">Enhanced RTP Ports</td>
<td class="maxlictype">0</td>
<td class="lictype">0</td>
<td class="active">0</td>
<td class="stats">View Graphs</td>
</tr>
<tr class="c-grid-row-odd">
<td class="displayName">Conference Ports</td>
<td class="maxlictype">6</td>
<td class="lictype">6</td>
<td class="active">0</td>
<td class="stats">View Graphs</td>
</tr>
<tr class="c-grid-row-even">
<td class="displayName">Speech Integration Ports</td>
<td class="maxlictype">6</td>
<td class="lictype">6</td>
<td class="active">0</td>
<td class="stats">View Graphs</td>
</tr>
<tr class="c-grid-row-odd t-last">
<td class="displayName">Text To Speech Ports</td>
<td class="maxlictype">1</td>
<td class="lictype">1</td>
<td class="active">0</td>
<td class="stats">View Graphs</td>
</tr>
</tbody>
</table>
 
 
I have run the test app and get the following output - so it looks like there is an error.
 
C:\Program Files\SpeechWorks\OpenSpeech Recognizer\bin>SWIrecTest.exe
Jul 15 10:44:51.500 |
----  B E G I N N I N G    T E S T    R U N  ----

Jul 15 10:44:51.500 | SWIrecTest $Revision: 1.26 $

Jul 15 10:44:51.515 | Test Run Start:
Jul 15 10:44:53.31| 2704|||| ** WARNING **| -1|  SWI_FAIL| non-error failure| Se
rverPool::ServerPool(int) | Resource Manager failed test allocation with rc=9
Press <esc> to view per-line statistics...
Starting Thread 0
Starting Thread 0
Jul 15 10:44:53.328 | <*0* Calling StartAudioWrite.>
Jul 15 10:44:53.328 | <*0* START LOOP 0>
Jul 15 10:44:53.328 | <*0* Calling SWIrecRecognizerCreate.>
Jul 15 10:44:53.32| 1448| 0||| ** WARNING **| -2|  SWI_ERROR| recoverable error|
 ProxyEntry::InstantiateRecognizerProxy | Unable to obtain any Recognizers from
any available servers.
Jul 15 10:44:53.32| 1448| 0||| ** WARNING **| -2|  SWI_ERROR| recoverable error|
 ProxyEntry::InstantiateRecognizerProxy | RID=?-?|SN=<not set>| Unable to obtain
 any Recognizers from any available servers.
Jul 15 10:44:53.32| 1448| 0||| ** ERROR => SVC AFFECT **| -2|  SWI_ERROR| recove
rable error| ProxyEntry::ActivateProxyEntry() |
Jul 15 10:44:53.32| 1448| 0||| ** WARNING **| -2|  SWI_ERROR| recoverable error|
 SWIrecAPI::establishServerSession() | RID=?-?|SN=n/s| Client is unable to conta
ct any servers.
Jul 15 10:44:53.328 | <*0* TESTERR SWIrecRecognizerCreate Failed with rc = 21>
Jul 15 10:44:53.906 | <*0* DONE Loops=1, Failures=1>
Jul 15 10:44:55.328 | <Calling SWIrecTerminate>
Jul 15 10:44:59.812 |
Test Run Stop: Jul 15 10:44:59.812 | -------------------------------------------
------
Jul 15 10:44:59.812 | NumThreads = 1
NumLoops=1
NumRecosPerLoop=1
Total Recognitions Attempted=1

Jul 15 10:44:59.812 | Thread 0) RecoCount-0, Failures-1
 
 
Do you have any ideas what i need to configure?
 
 

RE: Voice Recognition
Answer
7/15/09 3:05 PM as a reply to Jonathan Withers.
Hi Jon,
 
Forgive me for not being specific. When I asked about license, I was referring to OpenSpeechRecognizer license not the CUAE license. OpenSpeech license does not come with the CUAE install. You need to download and install Nuance OpenSpeechRecognizer and get the licenses from Nuance. Configure the license with the OpenSpeechrecognizer server. Then it will be good to use.
 
On the CUAE server, only the OpenSpeechRecognizer client is implemented which will connect to the OpenSpeechRecognizer server once it is installed and configured with proper license file.
 
Regards,
Rakesh.

Hi Rakesh,
 
I have now contacted Nuance for a license so will hopfully get that soon and i should be on my way.
 
I'm sure i'll need your help again.
 
Many thanks
 
 
Jon