Somewhat fancy voice command recognition software
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jezra 7f6b9270e5 pull your shit together jez. moved the options print out 10 jaren geleden
assets Added Gtk Tray UI (thanks padfoot) Added active/inactive icons 10 jaren geleden
data Added Gtk Tray UI (thanks padfoot) Added active/inactive icons 10 jaren geleden
Blather.py pull your shit together jez. moved the options print out 10 jaren geleden
GtkTrayUI.py Added Gtk Tray UI (thanks padfoot) Added active/inactive icons 10 jaren geleden
GtkUI.py Reads default startup options from an options.yaml file Added some missing files because I'm an idiot 10 jaren geleden
QtUI.py Reads default startup options from an options.yaml file Added some missing files because I'm an idiot 10 jaren geleden
README.md Reads default startup options from an options.yaml file Added some missing files because I'm an idiot 10 jaren geleden
Recognizer.py Added a bit of error checking for the most common problem: missing gstreamer pocketsphinx plugin 10 jaren geleden
commands.tmp added gstreamer0.10-base-plugins to the requirements in the README commands don't need to be in all caps 10 jaren geleden
gpl-3.0.txt licensing 11 jaren geleden
language_updater.sh The updater uses the correct commands file 11 jaren geleden
options.yaml.tmp Reads default startup options from an options.yaml file Added some missing files because I'm an idiot 10 jaren geleden

README.md

Blather

Blather is a speech recognizer that will run commands when a user speaks preset sentences.

Requirements

  1. pocketsphinx
  2. gstreamer-0.10 (and what ever plugin has pocket sphinx support)
  3. gstreamer-0.10 base plugins (required for alsa)
  4. pyside (only required for the Qt based UI)
  5. pygtk (only required for the Gtk based UI)
  6. pyyaml (only required for reading the options file)

Usage

  1. move commands.tmp to ~/.config/blather/commands.conf and fill the file with sentences and command to run
  2. Run Blather.py, this will generate ~/.config/blather/sentences.corpus based on sentences in the ‘commands’ file
  3. quit blather (there is a good chance it will just segfault)
  4. go to http://www.speech.cs.cmu.edu/tools/lmtool.html and upload the sentences.corpus file
  5. download the resulting XXXX.lm file to the ~/.config/blather/language directory and rename to file to ‘lm’
  6. download the resulting XXXX.dic file to the ~/.config/blather/language directory and rename to file to ‘dic’
  7. run Blather.py
    • for Qt GUI, run Blather.py -i q
    • for Gtk GUI, run Blather.py -i g
    • to start a UI in ‘continuous’ listen mode, use the -c flag
    • to use a microphone other than the system default, use the -m flag
  8. start talking

Note: to start Blather without needing to enter command line options all the time, copy options.yaml.tmp to ~/.config/blather/options.yaml and edit accordingly.

Bonus

once the sentences.corpus file has been created, run the language_updater.sh script to automate the process of creating and downloading language files.

Examples

To run blather with the GTK UI and start in continuous listen mode: ./Blather.py -i g -c

To run blather with no UI and using a USB microphone recognized and device 2: ./Blather.py -m 2

Finding the Device Number of a USB microphone

There are a few ways to find the device number of a USB microphone.

  • cat /proc/asound/cards
  • arecord -l