I’ve got a lot of speech audio in WMA format and I’d like to machine transcribe it – even if the transcription is not 100% accurate, I think it could help quite a bit as an “index” to some of the audio. I’m willing to write some code to make this happen, but can Microsoft’s Speech APIs help me here? Is there already an app that can do this for me?
SAPI can certainly do what you want. Start with an in-proc recognizer, connect up your audio as a file stream (you'll probably need to transcode your WMA files to a WAV stream, as SAPI only takes WAV input, but you can do the transcoding on the fly), set dictation mode, and off you go.
Now the disappointing bit. You probably won't get terribly good results; in fact, I suspect that unless you're very lucky, you'll probably get total garbage.
There are several problems:
I actually would suggest using Dragon Naturally Speaking Professional; they've spent the time and money to make transcription work. I haven't used it myself, so I don't know how well it would work in your situation.