CMUSphinx is a Speech Recognition toolkit. It contains a number of packages for different tasks and applications:
Pocketsphinx — recognizer library written in C.
Sphinxtrain — acoustic model training tools
Sphinxbase — support library required by Pocketsphinx and Sphinxtrain
Sphinx4 — adjustable, modifiable recognizer written in Java
CMUSphinx assumes that you use the statistical models which describe language. A number of models trained for various acoustic conditions and various performance requirements are available from the CMUSphinx website.