Discussion Forums  >  Plugins, Customizing, Source Code

Replies: 34    Views: 184

Susan Metoxen
buzztouch Evangelist
Profile
Posts: 1706
Reg: May 01, 2011
Hopkins, Minnes...
26,260
05/23/13 04:56 PM (12 years ago)

Voice Recognition for App Navigation

Does anyone have experience with including Voice Recognition in apps? I think it would be really cool if we could get Voice Recognition built into some plugins. An example app would be the ParaQuad Spinal Information app. https://itunes.apple.com/us/app/paraquad-spinal-information/id598534486?mt=8 You can say, "Back" or "Next" and it will turn a page.
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
05/23/13 05:23 PM (12 years ago)
 
Paul Rogers
Android Fan
Profile
Posts: 2524
Reg: May 30, 2011
UK
35,740
like
05/23/13 05:26 PM (12 years ago)
I've got speech to text in the notes plugin in the recipe app in my profile (android). Converting speech to text is actually pretty straightforward in android, which is handy for making notes. It's not so easy to recognise and act on commands though.
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
05/23/13 05:28 PM (12 years ago)
Interesting. I would have thought acting on the commands (ie the converted text) would be the easy part.
 
Susan Metoxen
buzztouch Evangelist
Profile
Posts: 1706
Reg: May 01, 2011
Hopkins, Minnes...
26,260
like
05/23/13 05:43 PM (12 years ago)
@raveyd, I tried it on your app and it worked perfectly. Kind of amazingly well. I also like how you handled the photos. Is that an HTML doc? I am not exactly sure where I am going with this but it would be cool to include voice recognition in some menu plugins, and maybe in a PDF reader.
 
Paul Rogers
Android Fan
Profile
Posts: 2524
Reg: May 30, 2011
UK
35,740
like
05/23/13 05:52 PM (12 years ago)
It's probably more to do with my lack of knowledge Chris, for example how to deal with non-english commands and graceful fallback for devices with no microphones. It's something I keep revisiting so it might eventually click into place!
 
Paul Rogers
Android Fan
Profile
Posts: 2524
Reg: May 30, 2011
UK
35,740
like
05/23/13 06:10 PM (12 years ago)
Thanks Susan, sometimes I luck out! I'm impressed with the api and the recognition accuracy, it surprised me considering the many lame voice recognition apps in the Android market. Yes, the photos/recipes are just html docs in the assets folder using photoswipe js. I'm thinking that when fragments get released on bt it might make things a bit easier, fragments are more swipe based than we've had previously which might make voice command integration more straightforward.
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
05/23/13 06:13 PM (12 years ago)
Ah foreign languages - that does make things tricky, doesn't it? :) As for devices without microphones, you would need to either have an option to control the app through normal commands as well, or alert the user that this app only works with microphone devices.
 
Paul Rogers
Android Fan
Profile
Posts: 2524
Reg: May 30, 2011
UK
35,740
like
05/23/13 06:32 PM (12 years ago)
Yes, easy enough with my notes plugin, just pop up an alert to use the keyboard if no microphone detected. As far a I can tell though, for a button menu plugin for example there would need to be quite a lot of restructuring of existing methods to accomodate some heavy code integration. Way beyond me!
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
05/23/13 06:41 PM (12 years ago)
Hmm - for the button menu, you could assign a JSON property to each childItem that represented the voice command. For instance, a button for sending an email might look like: {"itemId":"ABC123", "itemNickname":"Email", "itemType":"BT_sendEmail", "emailToAddress":"[email protected]","emailSubject":"A Subject", "voiceCommand":"Email"} Then, if the converted text equaled "Email" (probably want to convert to uppercase), it would call the handleTapToLoadScreen method and pass along that childItem.
 
Paul Rogers
Android Fan
Profile
Posts: 2524
Reg: May 30, 2011
UK
35,740
like
05/23/13 06:52 PM (12 years ago)
Interesting. I might be over (or under..) thinking it. Never occured to me to assign a JSON property, I've just been thinking about coding into existing methods. Looks like I might be revisting over the weekend! Thanks Chris. I wish I could think logically..
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
05/23/13 07:11 PM (12 years ago)
Wouldn't really help with the language issue, but hopefully it will still help you do something cool!
 
nadthevlad
Code is Art
Profile
Posts: 1025
Reg: Jun 07, 2012
Denver
21,850
like
05/23/13 07:37 PM (12 years ago)
 
Susan Metoxen
buzztouch Evangelist
Profile
Posts: 1706
Reg: May 01, 2011
Hopkins, Minnes...
26,260
like
05/23/13 07:42 PM (12 years ago)
You would think Apple and Google would make it easy for us, because of the ADA. I was surprised how well the Android voice recognition worked. @chris1--that makes a lot of sense to make it a JSON element. I need to study the link you sent--I took a quick glance and it didn't seem to easy. I like the idea of putting it on the Button menu--with Buttons you can also make them large or set a lot of space between them. That could be helpful for someone with limited mobility. You would also want a short and clear word on each button so you could either say or or touch the button.
 
Susan Metoxen
buzztouch Evangelist
Profile
Posts: 1706
Reg: May 01, 2011
Hopkins, Minnes...
26,260
like
05/23/13 07:47 PM (12 years ago)
Good find, @nadthevlad! I have even seen grant money for this. So you can see why there is a publicly available Epub reader.
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
05/23/13 08:03 PM (12 years ago)
Susan - so I posted that link because it looked like a couple of good solutions were in there. I just took a more in-depth look at it, and I think the NSSpeechRecognizer class is exactly what you want. It's a native iOS class, and it only listens for a few, preset commands. You can set those using: - (void)setCommands:(NSArray *)commands {...}
 
ianJamesPiano
Code is Art
Profile
Posts: 2661
Reg: Feb 13, 2011
Palm Springs, C...
37,010
like
05/23/13 08:19 PM (12 years ago)
Hmmm this could be very cool. I got some reading to do! I am currently looking into incorporating the VoiceOver features of IOS for a blind organization wanting a Pitch Pipe for band practice. This NSSpeechRecognizer class is pretty cool.Awesome possibilities. cheers! ian
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
05/23/13 08:26 PM (12 years ago)
Nice Ian - that sounds like an awesome app idea!
 
Susan Metoxen
buzztouch Evangelist
Profile
Posts: 1706
Reg: May 01, 2011
Hopkins, Minnes...
26,260
like
05/23/13 08:31 PM (12 years ago)
Cool, Chris! That is exactly what I needed. It looks like you can make your own commands, so I think it could be multilingual with one config file per language.
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
05/23/13 08:38 PM (12 years ago)
Yep - of course, you would need to know all those languages... ;)
 
Susan Metoxen
buzztouch Evangelist
Profile
Posts: 1706
Reg: May 01, 2011
Hopkins, Minnes...
26,260
like
05/23/13 09:45 PM (12 years ago)
So true! This may be another way our multilingual community can come together.
 
David @ buzztouch
buzztouch Evangelist
Profile
Posts: 6866
Reg: Jan 01, 2010
Monterey, CA
78,840
like
05/24/13 03:33 AM (12 years ago)
My voice command programming works all the time. I just yell at it and it always listens. Yell louder and all sorts of amazing stuff happens.
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
05/24/13 03:46 AM (12 years ago)
Lol
 
Paul Rogers
Android Fan
Profile
Posts: 2524
Reg: May 30, 2011
UK
35,740
like
05/24/13 04:40 AM (12 years ago)
This is the code I adapted for the notes plugin: http://viralpatel.net/blogs/android-speech-to-text-api/ Yelling seems to confuse it though..
 
LA
Aspiring developer
Profile
Posts: 3280
Reg: Aug 16, 2012
Jerseyville, IL
42,900
like
05/24/13 06:14 AM (12 years ago)
lol @David! Don't yell too hard.. The ADA, American with Disabilities Act, is so outdated and needs updated to catch up with new technology. Every smart phone has a voice over feature under accessibility. We, as developers, need to take advantage of these features and develop more features to assist people with a disability. This has a new market that hasn't been touched a lot and can be rewarding and profitable for buzztouch and developers. LA
 
ATRAIN53
Code is Art
Profile
Posts: 1755
Reg: Nov 17, 2011
Chicago
26,450
like
05/24/13 06:52 AM (12 years ago)
http://www.codeproject.com/Articles/592909/EPUB-Viewer-for-Android-with-Text-to-Speech ^ that is a great project - just barely a week old! So downloading and checking that out and building one. Love Code Project, have found some awesome stuff there. Thanks for posting it.
 
Paul Rogers
Android Fan
Profile
Posts: 2524
Reg: May 30, 2011
UK
35,740
like
05/24/13 07:12 AM (12 years ago)
Good project, and good for reading text out loud, but it's the wrong api for building voice commands. It uses the Text to Speech api, not the Speech to Text api. A combination of both would be super cool though!
 
Susan Metoxen
buzztouch Evangelist
Profile
Posts: 1706
Reg: May 01, 2011
Hopkins, Minnes...
26,260
like
05/24/13 08:08 AM (12 years ago)
Well, for serving the disabled, we really need both. It depends on the disability. I started this thinking about how to allow someone with limited mobility but with good vision to use an app, but the reverse could be true as well--maybe we have a plugin that serves people who can't see the screen.
 
Antonios
Apple Fan
Profile
Posts: 381
Reg: Feb 12, 2013
Korinthos, Gree...
4,610
like
05/24/13 06:01 PM (12 years ago)
for greek translation I am here for you whenever needed!!! :)
 
ianJamesPiano
Code is Art
Profile
Posts: 2661
Reg: Feb 13, 2011
Palm Springs, C...
37,010
like
05/24/13 07:33 PM (12 years ago)
Awesome Georgios!
 
Susan Metoxen
buzztouch Evangelist
Profile
Posts: 1706
Reg: May 01, 2011
Hopkins, Minnes...
26,260
like
05/24/13 08:35 PM (12 years ago)
Thank you Georgios! I will send you the string files to translate. That would be really cool. Here is a link to what we have so far. I will add Greek to this list and put your screen name as a Greek contact. Maybe we can find some more buzztouchers that speak Greek. http://whitebuffalomobile.com/Localization/localization.html P.S. I did a search for users in Greece, and there are 103! Over a dozen are fairly active--i.e. they have over 100 points.
 
LA
Aspiring developer
Profile
Posts: 3280
Reg: Aug 16, 2012
Jerseyville, IL
42,900
like
05/25/13 06:13 AM (12 years ago)
Thank you @Georgios! We need more developers to step up and create a plugin for a person with a disability. Either being speech to text and text to speech, larger images and buttons, or anything you might think might not be a an asset but can truly be one with a person with a disability. I am working on a few for Android at the moment but it takes a buzztouch community to build this village. LA
 
Antonios
Apple Fan
Profile
Posts: 381
Reg: Feb 12, 2013
Korinthos, Gree...
4,610
like
05/25/13 08:37 AM (12 years ago)
you are all welcome...glad to help!!! :) with the translation are you gonna to convert it to speech?
 
Susan Metoxen
buzztouch Evangelist
Profile
Posts: 1706
Reg: May 01, 2011
Hopkins, Minnes...
26,260
like
05/25/13 09:23 AM (12 years ago)
Not in the short run, @Georgios, but just think where this will be 5 years from now!
 
Antonios
Apple Fan
Profile
Posts: 381
Reg: Feb 12, 2013
Korinthos, Gree...
4,610
like
05/25/13 10:04 AM (12 years ago)
I would like to be on your side at that time!!!!! :)
 

Login + Screen Name Required to Post

pointerLogin to participate so you can start earning points. Once you're logged in (and have a screen name entered in your profile), you can subscribe to topics, follow users, and start learning how to make apps like the pros.