Can Microsoft SAPI or another technology be used to index speech in a wav file based on time so that based on a searched phrase a specific time index into a wav file can be played?
SAPI has a (rather limited) speech recognizer. If the phrases follow a reasonably limited grammar, you can convert speech to text and index it in any way you want.
If the speech is free flow, I don't think SAPI will do much. There's dictation software out there that would do natural language recognition, but IIRC SAPI isn't one of those.
We (http://nexiwave.com) provide speech indexing SaaS solution. Please contact us if you are interested.
SAPI is not an engine, it is an interface. The free engine that comes with windows is, well, let's just say you might want to try others. The Dragon implementation can certainly do what you want (or at least it could five years ago, I suspect it still can) assuming that you have enough transcripted speech from a particular speaker to train it. (In other words, you can get it to index Ted Koppel on the news, but not a teleconference with random people).