[Asterisk-Users] Re: Sphinx (Karl Putland)
Matt Lawson
matt at 1control.com
Thu Dec 18 19:56:35 MST 2003
On Thu, 2003-12-18 at 15:40, Kevin Bockman wrote:
>> Hi. I just started trying to play with Sphinx. I followed their site as far as running sphinx-server. It is listening on the default port. I copied sphinx2-simple to another file and changed sphinx2-continuous to sphinx2-server.
>>
>> So, I ran eagi-sphinx-test under asterisk. What exactly is it supposted to do? Here's what I get:
>>
>
I wondered how long before someone started asking about that. That was
all about creating a hook into Asterisk where it would stream the audio
over a socket to another program (which was a custom program we wrote,
but similar to the Sphinx example programs). The Sphinx program could
do the voice recognition and possibly return a result to Asterisk over
the socket, in the form of a text token.
The goal was to be able to route calls using voice recognition. It
basically worked, except at the time we were having terrible problems
with the Zap cards and echo. It was distorting the sound so horribly
that it wasn't even human-recognizable, much less machine-recognizable.
We've put that project on indefinte hold for now but it could possibly
be usable again in the future. It's been many months since I worked on
it so I'm a little rusty. If you used something like an ISDN line where
you could get a clear signal it did pretty well. Of course it was only
choosing between about 10 different words.
The eagi-sphinx-test program is basically a stub that has the necessary
hook into Asterisk. We have a modified "Sphinx AGI" which is similar to
the test program but just includes some of the logic of what we wanted
it to do when it heard a token, etc..
As far as the Sphinx side of it goes, I actually posted the modification
I made to Sphinx to read audio from a socket to the Sphinx mailing list.
I was surprised that no one hardly seemed interested in it.
The stock "Sphinx server" doesn't read audio over the network. It only
communicates the responses over the network. That's why I had to make
the above-mentioned audio-socket-read modification.
- Matt
More information about the asterisk-users
mailing list