Speech Recognition in Tiger

Let's get one thing straight: Tiger is buggy. If you have any doubts about this you might just try playing around with Speech Recognition.

Speech Recognition is by no means new. It's been around since the Classic days, and it hasn't changed much since. I first played with it in grad school, in Mac OS 9. Though it may not be new, and it may not be perfect, it is pretty nifty in concept. Basically, you can control just about anything you want using a microphone and your voice. There are a whole bunch of ready-to-use "Speech Commands" that come built right into the OS. All you do is turn it on (in the "Speech" System Preferences), a little microphone do-hicky pops up, and you can begin commanding your computer to do whatever your heart desires. (Well, almost.*)

Speech Recognition is always a bit frustrating: The computer is slow to recognize commands; it misinterprets all the time; and you have to speak way to slow for it to understand you. Heaven help you if you're eating a burrito while you want to use Speech Control. Star Trek it just ain't. (And, yes, I firmly believe Captain Picard was a big burrito freak.)

Using Speech Recognition in Tiger, though, was plagued with problems far beyond the usual Speech Recognition frustrations. Problems that seemed to be in the OS. Turning Speech Recognition on in the Speech System Preferences pane seemed to work fine. The microphone commander widget popped up, I got a sound level, but upon opening the "Speech Commands" window, I discovered I had no speech commands. Thinking I'd missed something in my OS install, I hunted around for awhile, looking for the speech command files. I eventually determined that I had them, and they were right where they should be, but Speech Recognition just wasn't seeing them. Finally, I went to the Speech pref pane, and looked under the "Commands" tab. Here there is a listing of default speech commands, groups of which which you can check or uncheck per category. Mine were all checked. On a lark, I decided to quit Speech Recognition, uncheck and then recheck all these items. Voila! that did the trick. After restarting Speech Recognition, I finally had speech commands.

Using Speech Recognition for awhile, I was amazed at how much you could do. One cool addition since I first played around with it, is that Speech Recognition can now be used to navigate menus in any application, which means you can control, really, just about anything. Menu control is amazing, but could use some refinement. For instance, there is no obvious way to navigate back through a menu -- to back up through a menu hierarchy. It turns out, the way to do this is to issue the command for the top-level menu item (like "File" or "Edit"). If you're in a nested menu structure, that's how you back out. Not terribly intuitive. But not awful, either, once you figure it out.

At some point, however, Speech Recognition just stopped taking commands. It didn't freeze. It still showed mic input. It just wouldn't listen. I expect this from a five-year-old, but coming from my PowerMac G5, it just pisses me off. The solution was to turn off Speech Recognition, and then turn it back on. But guess what I found after doing this: Yup, no speech commands. I had to go back and repeat the entire process of enabling speech commands, just to get the app working properly again. These are OS bugs if you ask me. I don't think Speech Recognition's changed one bit since Panther, nor have a lot of apps that have had problems, yet Tiger still seems, somehow, to make a mess of them. Add Speech Recognition to the list.

*One last thing: My initial reason for wanting to use Speech Recognition was to control my iSight camera. It should be noted that one thing you can't do with Speech Recognition is control the device that's being used to input commands, i.e., the microphone, or in my case, the iSight. I know... Duh...

Anyway, you might want to give Speech Recognition a try sometime. It's pretty cool, and if nothing else, a fun time-waster. Just be aware, like so many things, it's buggy in Tiger.