[asterisk-dev] Speech Recognition

Stephan A. Edelman sedelman at newace.com
Sun Oct 15 19:38:52 MST 2006


Hello Joshua,

Thanks for committing those changes, much appreciated.

I would like the Speech API to behave more transparently and be capable of injecting responses into existing applications, such as WaitExten, VoiceMail, VoiceMailMain, etc.

I'm trying to figure out an elegant way to do this, but can only think of a wrapper channel driver (so as to allow access to the voice path and inject DTMF, as required). Anyone else have a better idea?

Regards,

Stephan.
---
Stephan A. Edelman
NewAce Corporation
Toll Free: 1-877-463-9223 x221
Tel: +1 519 336 4837 x221
Fax: +1 519 336 4046
Pager: +1 519 333 3247




From: Joshua Colp
Sent: Fri 10/13/2006 5:08 PM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] Speech Recognition


Stephan A. Edelman wrote:
> Hello,
> However, I have noticed several problems with the Speech API:
> 
> (1)     When loading another grammar, it still appears to be processing 
> voice frames from a previous recognition cycle. This is noticeable as 
> SpeechBackground() is silent immediately when called without playing the 
> sound file and even after SpeechStart() is called again. I have been 
> able to correct this problem by introducing *ast_clear_flag(speech, 
> AST_SPEECH_QUIET);* in the ast_speech_start() function of 
> res/res_speech.c, as follows:
> 

I agree with this too, fixed in 1.4 and trunk. A new 1.2 patch should be 
available from Lumenvox next week as well.

> 
> (2)     SpeechCreate() does not seem to report the correct status 
> (${SPEECH(status)}) when using the Lumenvox engine and there are no more 
> available licenses. This causes a subsequent call to 
> SpeechActivateGrammar() to drop the call. In fact, it doesn't make sense 
> to me at all to have any of the Speech.() functions return -1 and cause 
> the call to be hung up. This doesn't allow for any DTMF fallback schemes.
> 
> Can we have the Speech.() functions in apps/app_speech_utils.c set the 
> ${SPEECH(status)} variable appropriately instead? Any comments?
> 

I just took care of this in 1.4 and trunk. Give it a whirl.

> 
> (3)     SpeechBackground(Sound File|timeout) should treat a zero timeout 
> as meaning "timeout immediately after playing the sound file". This 
> allows you to call SpeechBackground() back-to-back without any delay. 
> Presently, a zero timeout means that it waits indefinitely for the 
> user's voice response. If no timeout is specified as a parameter then it 
> should behave with an indefinite timeout.
> 

Ideally I would like to move this application to use the file API for 
all this stuff instead of having to recreate some of the logic.

Final note:

If there's any other comments you have please do reply, I want the 
speech API to evolve to the needs of both the developers and the users.

-- 
Joshua Colp
Software Developer
Digium, Inc.
_______________________________________________
--Bandwidth and Colocation provided by Easynews.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-dev/attachments/20061015/364dd113/attachment.htm


More information about the asterisk-dev mailing list