[Live-devel] Implementing MRCP
David Guthrie
guthrie at bmh.com
Thu May 6 18:19:11 PDT 2004
Hello,
I'm looking into implementing MRCP using this code base, but certain
parts of the protocol seem difficult work out. I'm also just trying to
learn the code. As a little background, MRCP only uses the SETUP,
TEARDOWN, DESCRIBE, and ANNOUNCE commands. A typical conversation to
do recognition would go.
DESCRIBE - to get the server SDP on the main url
SETUP with unicast and a client port on the recognizer url -> the
response has the server ports and the config.
--setup outgoing RTP to stream audio data TO the server
ANNOUNCE - for commands like define grammar, or begin recognizing
Then the server sends ANNOUNCE events to the client asynchronously to
state when things finish.
From what I can tell, the software assumes that MediaSubsessions that
are created as a result of SETUP command are for receiving data, which
is not the case in this instance. Also, the MRCP servers don't seem to
return a control URL, and there is no way to override the control url
on a subsession. The third thing is that the event loop does not
appear to have support for receiving asynchronous events from the RTSP
server.
One final thing is that it is suggested that I stop streaming data when
a recognition completes. I don't see how to do this.
I can see ways to solve all of these problems, but they all involve
breaking the encapsulation of the classes involved and non-trivially
changing the library code.
Thanks in advance,
David
More information about the live-devel
mailing list