Archive for January 25th, 2011


Speech Stuff: OpenEars

Well, this certainly looks like a big jump in functionality over any of the open source speech libraries we were previously aware of:

Welcome to OpenEars!

OpenEars is an open-source iOS library for implementing round-trip English language speech recognition and text-to-speech on the iPhone and iPad, which uses the CMU Pocketsphinx and CMU Flite libraries.

Check out this veritable cornucopia of niftiness:

  • Listen continuously for speech on a background thread, while suspending or resuming speech processing on demand, all while using less than 10% CPU on average on an iPhone 3G (decoding speech and speaking uses more CPU),
  • Use any of 8 voices for speech,
  • Know whether headphones are plugged in and continue voice recognition during speech only when they are plugged in,
  • Dispatch information to any part of your app about the results of speech recognition and speech, or changes in the state of the audio session (such as an incoming phone call or headphones being plugged in),
  • Deliver level metering for both speech input and speech output so you can design visual feedback for both states.
  • Support JSGF grammars,
  • Be easily interacted with via standard and simple Objective-C methods,
  • Have all significant operating options controlled via configuration files,
  • Be installed in a Cocoa-standard fashion using static library projects that, after initial configuration, allow you to target or re-target any SDKs or architectures that are supported by the libraries (verified as going back to SDK 3.1.2 at least) by making changes to your main project only.

That’s a pretty serious helping of awesome there, indeed. And there’s even excellent-looking installation and configuration documentation available – starting with, eponymously enough, Getting Started With OpenEars!

h/t: ManiacDev!