I used a piece of software called 'Viavoice' which came with an early version
of Suse linux back in the 90's it worked ok then but i haven't tried it since,
There is another you may take a look at called Sphinx-4 a Java application
used in robotics for speech recognition.