Need help with scribe?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

123 Stars 51 Forks 2 Commits 5 Opened issues


Simple speech recognition using your microphone.

Services available


Need anything else?

Contributors list

# 52,198
2 commits


Simple speech recognition for Python. Run the script, say some things into your microphone, and then see what you said (or an approximation).

Powered by pyaudio and Sphinx.



Download sphinxbase and extract the files.

Now, run:

cd sphinxbase
./configure;make clean all;make install
cd python
python install

You may need to use sudo for make install or python install.


Download pocketsphinx and extract the files.

Now, run:

cd pocketsphinx
./configure;make clean all;make install
cd python
python install

Packages (Linux only)

Now, run:

cd speech-recognizer
sudo xargs -a apt-packages.txt apt-get install


Now, download the right version of pyaudio and install it.

Language files

If you want to speak english, you need to get the english language model and the english acoustic model.

You will need to put the acoustic model into

, and the language model into

The filetree should look like this for english:

├── dict
│   └── cmu07a.dic
├── hmm
│   ├── feat.params
│   ├── feature_transform
│   ├── mdef
│   ├── means
│   ├── mixture_weights
│   ├── noisedict
│   ├── README
│   ├── transition_matrices
│   └── variances
├── lm
│   └── cmusphinx-5.0-en-us.lm.dmp

For other languages, check here, or see below on training your own model. If you use different language models, acoustic models, or dictionaries, you will want to change these paths in
HMDIR = os.path.join(BASE_PATH, "hmm")
LMDIR = os.path.join(BASE_PATH, "lm/cmusphinx-5.0-en-us.lm.dmp")
DICTD = os.path.join(BASE_PATH, "dict/cmu07a.dic")


To run, you just have to:

cd speech-recognizer

You should be able to talk for a few seconds, after which it will spend some time processing, and the show you what you said.


There are some options that you can modify at the top of
. The easiest one to modify is

More reading

To find out more, read up on sphinx.

You can train the language models to make them more accurate, use unsupported languages, or be more domain-specific.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.