01-07-2012 04:47 PM - edited 01-07-2012 04:48 PM
I've been eyeing the Media.Microphone.record() function for use in a new PlayBook app that would take voice input and execute various commands. For the speech-to-text piece, I'll be using Zypr or Google Voice to do the heavy number crunching.
So here's the obstacle: For input formats, Zypr supports WAV 8kHz, 16 bit mono, AMR-NB 12.2Kbps, GSM 6.10 iLBC. Google Voice only takes a 16bit, 16Khz mono audio stream encoded as either FLAC or Speex binary data.
For the PlayBook, the documentation for record() lists WAV 44kHz, 16 bit mono as the sole encoding format. So close, but yet so far! Is there any way I can get that down to 8kHz on the WebWorks platform?
01-07-2012 04:54 PM
Interesting - from this related topic, I began looking into blackberry.media.microphone, and perhaps I can alter WaveEncoder.as at \bbwp\ext\blackberry.media.microphone\src\Air\M
01-18-2012 06:13 AM
01-18-2012 09:55 AM
I'd definitely go with Zypr - especially as the WebWorks platform can't easily output audio in the format Google Voice needs. Nor is Google Voice an official API, so it might disappear at any minute.
In terms of samples, I hope to get back to finishing my sample WebWorks application for speech recognition using Zypr shortly. I've already done the needed modifications to to encode audio to blackberry.media.microphone extension, and now just have to solve a simple file upload issue to get Zypr fully functional. I'll post the proof of concept app here as an attachment and also on GitHub for others to learn from.
01-18-2012 11:42 AM - edited 01-18-2012 11:48 AM
About Zypr, if i understood right, you have to upload the file to a site and then use Zypr, haven't you? Then it looks like Google Voice would be an easier solution.
And thanks a lot for sharing you knowledge with us. Now I am suscribed to this thread to keep myself updated...
02-06-2012 11:56 AM
This blog post should give you the basics of what you need to use the Google Voice API. Be impressive if you wrote a FLAC converter!