Tuesday, August 15, 2006

I wrote a program to speech control the FS9 default ATC from a remote machine

One of my biggest wishes for the MSFS is..realistic, truely voice controlled Air Traffic Control (ATC) .

However, it still seems like a distant dream specially now the MicroSoft team has confirmed that there are no major enhancements to the ATC system in the FSX release. That leaves me still waiting eagerly for the technology to catch up and allow the simmers to realistically 'converse' with the ATC programs.

I know, serious simmers use VATSIM for realistic ATC and not depend on the software simulated ATC. If you are flying 'all the time' with VATSIM then good for you. But being a novice, I still want to use either the default ATC or programs like RC. And the major problem with these programs is - they all use keyboard as their user interface.

I am tired of using the keyboard to select the ATC menu choices. Specially in a homebuilt hardware based cockpit environment, having to use keyboard to interact with the ATC is so unreal and annoyingly distracting.

So, I went back looking at options to use speech to control the FS9 ATC. I am aware some people use speech programs like 'voice buddy', 'Flight Assistant' or 'shout' to map their voice commands to ATC menu keyboard keys. While this works ok, I have an additional important requirement that made me not use any of these known techniques. As far as I know, all the above programs require you to run them on the FS9 computer hence potentially impacting it's framerate.

So, my key requirement is - I want my speech recognition process to run on a remote computer and not on the FS9 computer.

As we all are well aware of to what extents a simmer would go for the ever elusive framerate nirvana :-), I ended up writing a program that uses the WideFS/FSUIPC to communicate and control the FS9 default ATC. I now can make ATC menu selections completely hands-free through voice. The freedom I gained is awesome and the command recognition is 100%. I can't be more happy.

Currently, I would say "Traffic Control" to either 'bring up' or 'Close' (useful to quickly get the atc transparent menu out of your way) the ATC window. Once the ATC window shows up, I would say "select one" (or two,threee,four..) to select the appropriate menu item.

Ofcourse, I know it doesn't sound realistic ATC communication. I thought of creating somekind of smart menu where instead of saying "select one", you would be able to say generic command like "contact ground control". But unfortunately I couldnt implement it due the fact that currently FS9 doesn't expose any of their ATC menu text details via offsets (confirmed by peter dowson) and there is no ATC api available either to hookup. Also, I wish I could display the ATC menu window on the remote machine rather than on the FS9 main display as it does now by default. But here also unfortunately I couldn't do much due to the same FS9 constraints.

But in the end, I am fully satisfied with having some kind of speech interface that I could run on a remote machine. My ATC experience is way better now than earlier when I had to deal with the keyboard. And I am thrilled with the reliability of the command recognition, which is 100%.

My next wish is..to add similar capability to the Radar Contact (a third part ATC add-on) if I end up owning a copy of it. I know RC currently suffers from the same draw back of keyboard as it's only user interface.

If you are interested in my program, drop me a line at: "projsri777 AT yahoo dot com".

Thursday, July 20, 2006

What is going on?

I haven't updated this blog in ages. What is going on??

Answer is - A LOT!!

A lot going on with my life and I am busy on all fronts. Did not gather enough energy to come back and update this blog. A quick disclaimer - No, I haven't lost interest in pit building and simming (!!) On the contrary, it grew and pushing me to start building soon.

As a first step, my basement finish work has started and ongoing for the last month and half at a slower than anticipated pace. Part of the reason is - I have added another ambitious project to build a proper Home Theater also in the basement. When finished, it will be a room to watch movies on large screen. That is the deal I made with my sweet heart for building the sim in the basement and potentially spend all my free time on the sim. She hatched this plan to build the Home Theater, so that I come back to watching movies together with her :-) But anyway, now the HT theater project grew on me and I am all over it researching and building a properly sound treated theater room will all the bells and whistles I could afford.

Meanwhile, on the simulator front, I have built two more computers and bought PMDG 737 aircraft (detailed reasons later..), and FSBuild software for flight planning. Also, during the July 4th weekend, I went to Denver and attended the International Flight Sim conference. I will probably write about it in some other post.

So, I have lot more to write about including the cool xbox stuff I am doing right now and make few announcements :-) stay tuned (in a hurry to go to work right now..)