Search code examples
iosspeech-recognitionspeech-to-textopenears

Voice control for iOS app with very limited dictionary for fast recognition


I'm thinking about implementing basic voice control for an iOS app. The app will have a dictionary with about 30 entries, where each entry is a first and last name. When the user speaks to the app, the app will need to select the correct name from the list of ~30.

One thing I'm not sure about: the list of names is defined by each user of the app. So every user will have a different set of names.

I'm wondering if there is a an open source library that is customizable on this level? My biggest concern is that I won't be able to let the user define the dictionary.

Any ideas on how this could be done?

Thanks in advance, and please forgive the vague question :)

#### ### ### ###

Update: I am aware of the OpenEars library. Can't find anything on their site on if they allow limited, user-defined dictionaries. I can see that an app developer can set a custom dictionary, but nothing on if the app's end user could do this. Thanks for the help!


Solution

  • OpenEars allows you to define your own vocabulary out of the box using http://www.politepix.com/openears/#LanguageModelGenerator_Class_Reference

    You can ignore all words outside of the vocabulary you define by using the Rejecto plugin.

    You can do something similar with Julius, but I'm told OpenEars has better acoustic models.