Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Should support Flite and PocketSphinx on Asterisk via UniMRCP Server #204

Open
benlangfeld opened this issue Jan 12, 2014 · 3 comments
Open

Comments

@benlangfeld
Copy link
Member

Motivation

Flite and PocketSphinx are the only TTS and ASR engines available at zero cost for use with Asterisk via MRCP. They are supported via plugins to UniMRCP server and are installed on Telephony Dev Box.

Unfortunately Flite does not support SSML (plain text only) and PocketSphinx supports only JSGF grammars, not SRGS.

Changes required

  • Plain text content of an SSML document must be extracted here
  • SRGS grammars must be converted to JSGF here

Since Punchblock nor the UniMRCP client do not know what formats an engine supports prior to submitting a request to them, it would seem sensible for these manipulations to be implemented in the UniMRCP Server plugins such that they are transparent to the client side. These manipulations could be implemented using cspeech once it's ready.

Application impact

None.

@benlangfeld
Copy link
Member Author

@bklang Comments appreciated.

@bklang
Copy link
Member

bklang commented Jan 17, 2014

Sounds entirely reasonable to me. I don't know how much work the JSGF->SRGS conversion would be, or how perfectly the capabilities overlap. Stripping SSML seems easy enough. I do like that we'll have an entry-level ASR+TTS option on Asterisk.

@benlangfeld
Copy link
Member Author

The SRGS->JSGF conversion is already working in mod_rayo, and has been extracted to cspeech. Just waiting on that library to be completed...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants