Speech Controlled Application Development on PPC - Windows Mobile Development and Hacking General

Hello All,
I hope I can ask you this question in this section.
I am not a hardcore developer but I have made some custom applications for PPC. NOW, I have a project that I need to develop an application that can be controlled with voice.
The project is designed for visually impaired users and I am trying to do indoor guidance for them. I have all parts of my project worked out, but I need to have a development tool that I can embed in my PPC application to do speech recognition of ** my own custom command ** and maybe do speech synthesis.
I have worked with Speech SDK 5.1 from Microsoft on XP and Vista, but as I understand there is no SDK for Microsoft Voice Command 1.6.
Do you guys have any suggestions or know of any SR engine that I can embed and program into my application?
PS - I am using AT&T Tilt as my test platform at this time and the goal is to have the application made for all Windows 5.0/6.0/6.1.
Regards,
HoSsEiN

hgn842001 said:
Hello All,
I hope I can ask you this question in this section.
I am not a hardcore developer but I have made some custom applications for PPC. NOW, I have a project that I need to develop an application that can be controlled with voice.
The project is designed for visually impaired users and I am trying to do indoor guidance for them. I have all parts of my project worked out, but I need to have a development tool that I can embed in my PPC application to do speech recognition of ** my own custom command ** and maybe do speech synthesis.
I have worked with Speech SDK 5.1 from Microsoft on XP and Vista, but as I understand there is no SDK for Microsoft Voice Command 1.6.
Do you guys have any suggestions or know of any SR engine that I can embed and program into my application?
PS - I am using AT&T Tilt as my test platform at this time and the goal is to have the application made for all Windows 5.0/6.0/6.1.
Regards,
HoSsEiN
Click to expand...
Click to collapse
I may be a little out of touch with what your asking for but Microsoft Voice Command has both audio input and reply. You may want to check it out.

You are right ...
Curious,
Thats right. I do use Voice Command on my PDA, but I don't think that I can have it to respond to ** Custom ** commands!
I actually contacted Microsoft and asked them about this and they said there is no way to customize the Voice command and it is a closed source code and I cant hack into it.
In my application I want to have the user say: "I need to go to room 200" (or just "room 200") and my program should be able to understand it and using my indoor positioning system rout the blind person to that room.
So I am hoping to find an engine ... SDK ... or toolkit that I can embed in my application.
Do you know if you can hack into the Microsoft Voice Command to do this?
Thanks for your reply ...
HoSsEiN

If you can find a software package to handle the voice recognition, you may still have problems with background noise interfering. My previous phone had a voice-activated dialing application that didn't need to be trained for most names. However, I found that, if I was on a road with a lot of traffic, I generally had to wait for a pause in the traffic before the phone could recognize what I was saying. In the case of this indoor-guidance application, the main issue would probably be other voices in the background, such as in a busy hallway.

Ambient noise is an issue, you are right.
I may be able to use a hands free headset that does a bit of noise cancellation to alleviate this problem, but first I need to find the engine to get it working.

Just as "pie-in-the-sky" armchair development, but maybe you could do it client-server. I think this is how Microsoft Live Search works-- I'm guessing it records a sound, then sends that to the a speech recognition server. The server then sends back the best guess at what was said.
No idea what the back-end server is though. Maybe Microsoft Speech Server

Dromio said:
Just as "pie-in-the-sky" armchair development, but maybe you could do it client-server. I think this is how Microsoft Live Search works-- I'm guessing it records a sound, then sends that to the a speech recognition server. The server then sends back the best guess at what was said.
No idea what the back-end server is though. Maybe Microsoft Speech Server
Click to expand...
Click to collapse
Dromio,
Thanks for your comment.
I did a bit of a search for this one before. It sounds promising but I am not sure how easy it is to implement. I had an impression that the Speech Server was mainly build for telephony connection, but as you pointed out Microsoft Live search does that in multimodal way with data only. It is of course subject to be always connected to a network and with a slow connection would probably not work as it should.
Also, I've not been able to find a good working example of server-client SR so far. Maybe if someone has done it and are willing to share it with us, it would shed more light on this approach.
Regards,
HoSsEiN

Related

Where can I get SDKs for XDA II?

I saw a lot of programs developed for XDA II, and they are for XDA II only. So it must be a SDK documents somewhere, otherwise no-one can write codes specific for XDA II, Am i correct?
If so, could anyone tell me where can I get the XDA II's SDK?
Thanks in advance
SDK is the PocketPC2003 SDK available free from Microsoft.
It really needs embedded Visual C++ 4, also available free from Microsoft.
http://www.microsoft.com/windowsmobile/default.mspx
They'll also send you all the tools on DVD for a small handling fee, as they are huge downloads.
andyclap said:
SDK is the PocketPC2003 SDK available free from Microsoft.
It really needs embedded Visual C++ 4, also available free from Microsoft.
http://www.microsoft.com/windowsmobile/default.mspx
They'll also send you all the tools on DVD for a small handling fee, as they are huge downloads.
Click to expand...
Click to collapse
Sorry, I didn't make myself clear.
I have the generic SDK from MS, what I need is the SDK for XDA II, it should come from XDA II's manufacture.
Thanks
well there are not xda2 stk
but there are a collection of stk's
one of them is ms's
another is the one which the cam program uses
another is the stk of the ati 2d chip
i think ati will give you their sdk if you reg at their site or something
dont think the cam's sdk is something they would let people get their hands on
a xda2 sdk would be like having a dell Latitude sdk
it dont work like that
Rudegar said:
well there are not xda2 stk
but there are a collection of stk's
one of them is ms's
another is the one which the cam program uses
another is the stk of the ati 2d chip
i think ati will give you their sdk if you reg at their site or something
dont think the cam's sdk is something they would let people get their hands on
a xda2 sdk would be like having a dell Latitude sdk
it dont work like that
Click to expand...
Click to collapse
Thanks, where is the website for ATI? could you post a link please?
BTW, what I need to do is to develop GSM related applications specific for XDA II, say, timed SMS sending. It is best if I can plug my apps into their build-in apps like SMS (it does not have timed SMS sending options)
Aha you're after the device SDK for the XDAII. You want to know what drivers are supplied and how to use them to control the specific hardware at the lowest level, e.g. ATI graphics, Radio hardware, Camera, Bluetooth, Buttons, comms, etc.
... unfortuantely HTC are an absolutely closed shop. Getting any information out of them is like getting blood out of a stone. A particularly hard and bloodless stone.
This site is really the closest thing we have, although as mentioned above you might have some luck with the specific hardware manufacturers such as ATI (although they are also notoriously unforthcoming). There's also sourceO2, who have similar level of knowledge about supporting low level development on the XDAII as a particularly stupid earthworm.
Usual rant follows... If only the device manufacturers would properly open up their products to developers, they'd see a wealth of applications developed that'd make their hardware a real "must have". They probably think it'd eat into their profits on the next device they produce, which is all they're interested in really.
Incidentally, you can both send SMSs, and use the notification subsystem to schedule an app to run at a particular time via the PPC2003 API. So it'd be fairly simple to knock up a client-side SMS timed sending application wihtout hacking RIL.
Hi, andyclap
Thanks a lot for your informative reply.
I am not actually developing very low level applications. What I planned to do is to develop some value added little programs that could be a plug-in or such a kind.
To make myself clear, I can use an example to explain what I might want to do:
The build-in SMS program does not have the feature the let you send a timed (scheduled) SMS. I am wishing to do is:
insert a menu item into its original context menu (tap-and-hold on SMS message body), you can choose to send at specific time
Anyone have an idea?
build in sms programs are not something which would make it a special xda program
all pocketpcs would be able to use that
that is unless you want to block your application somehow from being used on other pocketpc's then the xda then i suppose you need to access some reg indentifier or something
you want me to give your the link to ati ?
well if you are too lazy to type it then i suppose I must
http://www.ati.com/products/handheld.html
Hmm this may be quite hard to do, as I the messaging system is quite unextensible. It's fine if you want to create a new format from scratch, but extending an existing form handler is, I think, impossible.
Some low level dirty tricks (subclassing windows etc) might work, but would be pretty tricky to do, and very hacky.
I just wish somebody would give the PocketPC team a Symbian SDK, Symbian really got it right when it comes to messaging.
Yes, i can write a new SMS program, but it will need me to deal with Contacts object. I mean, I have to write code for fetching data stored in the build-in contacts database. If I can just plug my function into its contextmenu, I will only need to implement a simple function program (setting date/time, save phone number and message text, create a notification, etc).
Using SetWindowLong can hook into the *****, but this program model is some kind of fragile, very easy to crush the system or the apps itslef, not really stable if not tested thoroughly

what needed to program??

Hello,
i have visual c# express, is there any chance to get a template for mobile development? or any other good ide without downloading 200 single files to get embedded visual c++ 4.0 working?
i mean something simple like visual c# full version?
i want to start programming but i dont get it, because no right ide is out there only this ms ****
got it worked,downloaded evc++4.0, dont like it
im more into assembler/basic progrmaming languages
is it possbile to use assembler for programming? something like nasm to the desktop pc world?
If you want to do assembly, use evc to start you off then put assemble into that. I used to do this on the desktop (pc) all the time when I was writing a program to controll some hardware over a parallel port. I see in the evc4 documentation some info on inline assembly so it should be fine there (its part of the c++ language to allow this).
What is it you need that low level for? To do an entire project that way must be very hard.
thanks for the info
i only asked for imformation, later i want to write my own bootloader,l simple kernel,like i did for pc, maybe getting more into the low level programming, which i like more than the high level stuff
is there no basic language for windows mobile that allows you to create easily applications, for free
sometimes i dont understand the developers, doing some weird stuff like evc++ where you need so much sdk/extra stuff only to develop, why not packing everything into a basic language and give this language all the apis which are needed
well thats something i think should be more supportet :lol:
Confused
I thought of starting it myself. I'm not very into "Visual" products, I'm a C++ to Java converted person More of a Java person. Anyway, was trying to step my foot into this realm and I've found a few SDK that can be downloaded and use, what should I start first? There are several choices that I've for from M$
1. Windows Mobile 5.0 SDK for Pocket PC Genuine Windows download
2. eMbedded Visual C++ 4.0
3. SDK for Windows Mobile 2003-based Pocket PCs
Confused...
Wow, writing a bootloader. What do you intend to do with it? Custom OS or something else?
Guys, this is unlikely to be helpful for assembler etc., but I wrote an opus about an introduction to programming, from a beginner's point of view (ie mine!) a few days ago. Might be helpful to some.
http://forum.xda-developers.com/viewtopic.php?p=209136#209136
V
Hi everybody,
I'm a really-confused guy about programming PDA...
I have a PocketPC 2003 device. I have to use TAPI for my university final project and I want to establish a data call through GSM from this device to a desktop PC with a GSM USB device working as modem.
Now...
-I've built a dll with TAPI functions with eVC++ 4.0
-I've built a wrapper in c# with VS2005, a smart device application that calls the functions I need stored in the previous dll (using p/invoke).
-I installed pocket PC2003 SDK from Microsoft.
Am I right?does the pocketPC support TAPI or not?I'm really confused b/c I'm reading tons of forums and some say it works and someother say the contrary...
please, only tell me if I'm using the right method of programnming.
thanx
looki here:
http://forum.xda-developers.com/viewtopic.php?t=38223
That question would probably have been better put in one of the other tapi threads.
I know you want to do ppc to pc but give that a try first. If you can borrow someone else's phone because you will need two ppc for this test. If you can communicate ppc - ppc then ppc -pc should be easy.
Every ppc phone I have had can make and receive data calls, but I have not rewritten the program to work with wm2005 so if thats your os don't bother.
There is another way to get a connection between a ppc -pc over a call. One of my phone/gprs cards had a gprs config tool that let me manually enter the number for gprs. After that I was able to use the terminal services client on ppc to take over my pc. The ppc tries to connect via the gprs and that dials my home phone then I set up the pc to accept incoming phone calls. After logging in it worked very well as long as some data was being transfered. The problem was that if no transfer occured for more than a few seconds the connection dropped out. I think its because the modem was treating a regular call as gprs, ie doing nothing when its not needed.
well vijay, i only want to get some outputs on my pocket phone, testing stuff etc
the problem is i dont have any experience about the bootsectors of the sd card (i think thats the only way not to erase wm2003), else i dont have any experience about the architectur
on pc its easy, because you have much references and some forums about this stuff, but for ppc i dont think there is any forum about os developing.
on pc you can easily use a floppy , writing the bootloader in the bootsector and let the bootloader call the kernel, thats it (for the beginning)
has anybody some stuff about it? some informations, would be helpfull
thanks
Have you seen itsme's posts (I think) in the wiki, and generally on google. The kernel stuff there was whoosh, right over my head. Incredible work, definitive I'd say. The founding fathers of XDA devs have done quite a lot of work on this stuff I think.
V

call for GUI developers for sip, googletalk, etc softphone

I am part of an open source project that already has a working core that can do SIP (including SIP IM), Jingle/XMPP/jabber (both IM and voice and works with google talk), iax, and other protocols.
The nature of the core is such that you can front end it with a program that lets you dial (a RIL module can be written to give access to the GSM/etc radio board in the phone as well). Its only 5 functions to bring up the core, and have it work, the rest would be on a GUI to make it into a WM softphone usable on XDA phones (or any other WM device).
It already works on big windows, and has been ported by someone else to work on windows mobile (or perhaps pocket pc, not sure which variant it was) so it should not be that difficult beyond the GUI itself.
The project is FreeSWITCH.org, which is MPL licensed (mozilla public license).
In short, I am not a windows developer, I certainly am not a GUI developer, and so I request others that are who would like to help make a very usable front end that would let you do text and voice from one app at least look into the project. In addition to the webpage we are on #freeswitch on irc.freenode.net, where any questions on integration or anything else could be answered.
Thanks,

The Communicator app: Where to start with Android app development

Hey guys
Aight so the idea is to create an app that lets the user speak to someone in a different language. You make a recording and using the same function that the voice search feature has that recording gets translated to typed words on the phone. The app then uses some translating service like google translate to convert that writing to a language of your choice. That writing will then get read* by the phone and can be heard through the speakers. So essentially you can talk to someone even if you dont speak the same language.
*I know this is possible because I used to have an app that did just this: it read out loud what you wrote down
I have no experience with android development, and not very much with programming either for that matter (ive done some python stuff). However, I thought of this, which dosen't seem too hard to create, and I thought this would be a great way for me to start off and learn about app development.
Ok so because most of the features already exist it should just be a matter of patching them all together (right?). This is where I need you guys' help. Any suggestions on where I could start?
I appreciate any help, no matter how big or small!
MODERATORS: I wasn't really sure if this was the right place to post this, so feel free to move it to where ever you find suiting if this isn't right.
I would love it if someone wanted to work on this together with me, but
PLEASE DONT BE A D*CK AND JUST STEAL THIS IDEA!
Hi,
I'm relatively new to Android myself. But in my understanding, I would suggest the best method to start coding this app is, to build a Service which is intended to do the network polling, and the translation for the App in Background. So I think you need a server which tracks your Messages, and serves the data for the app. U have to look at IPC (Inter Process Communication) to communicate with you service.
If you finished all these, then you can start to build an Android Activity to communicate with your user.

[Q] Audio decode, recognize a keyword

Hello,
Constantly-on speech recognition listening for just one keyword.
I am trying to do is making my app constantly listen for one keyword that will fire an intent whenever the keyword is recognized.
I know that this will use a lot of battery. and I don't want to use google's speech recognition.
For example - you are talking with a person. Normal conversation. The phone is actively listening and recognizing every single said word and listening for the keyword.
Let's say the keyword is "cheese" in this instance.
Whenever you say "cheese," the application fires an intent that starts up another part of the app.
I tried to record myself saying "cheese" into wav file
And then comparing it to every word that was spoken..
my problem is finding the right tool that can help me perform this signal comparison in the simplest way so it can work on any device..
tried musicg library with fingerprint function but it does not work so well..
tried some other fft/cross-corelation/ect.. functions but I didn't get the result I expected..
any help (examples or some library would be best) that you can give me will be very appreciated ..
Thanks.
It looks like Java has its own speech recognition API (basic info about it here: http://en.wikipedia.org/wiki/Java_Speech_API).
I also found the official FAQ with instructions on how to download and use it etc. http://www.oracle.com/technetwork/java/jsapifaq-135248.html
Hopefully, it's pretty high quality and works well. Good luck!
marwan.kallal said:
It looks like Java has its own speech recognition API (basic info about it here: http://en.wikipedia.org/wiki/Java_Speech_API).
I also found the official FAQ with instructions on how to download and use it etc. http://www.oracle.com/technetwork/java/jsapifaq-135248.html
Hopefully, it's pretty high quality and works well. Good luck!
Click to expand...
Click to collapse
Thank you!!! I'll try it
Wow fantastic question,how about refering the sourse codes of google voice?So u can know what they have done....:thumbup:
.........................................
visit www.fb.com/softcrush
Just FYI, speech recognition is some complex stuff. I believe that Google uses some really advanced techniques such as deep neural networks for their speech recognition.
Here are some links if anyone's interested:
Wired Article
Google Research (Theory Based)

Categories

Resources