Somewhat fancy voice command recognition software
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
Clara Hobbs b04dbd12cd Wrap long lines in kaylee.py il y a 8 ans
assets Changed icons for Kaylee il y a 8 ans
data Changed icons for Kaylee il y a 8 ans
.gitignore Ported to new pocketsphinx and pygi il y a 8 ans
COPYING Rename license file to COPYING il y a 8 ans
README.md A few corrections and formatting changes to README il y a 8 ans
commands.tmp Added number parsing capabilities il y a 8 ans
config.py Update copyright for 2016 il y a 8 ans
gtktrayui.py Update copyright for 2016 il y a 8 ans
gtkui.py Update copyright for 2016 il y a 8 ans
kaylee.py Wrap long lines in kaylee.py il y a 8 ans
languageupdater.py Update copyright for 2016 il y a 8 ans
numberparser.py Update copyright for 2016 il y a 8 ans
options.json.tmp Beginning work moving from YAML to JSON il y a 8 ans
recognizer.py Update copyright for 2016 il y a 8 ans

README.md

Kaylee

Kaylee is a somewhat fancy speech recognizer that will run commands and perform other functions when a user speaks loosely preset sentences. It is based on Blather by Jezra, but adds a lot of features that go beyond the original purpose of Blather.

Requirements

  1. pocketsphinx
  2. gstreamer-1.0 (and what ever plugin has pocketsphinx support)
  3. gstreamer-1.0 base plugins (required for ALSA)
  4. python-gobject (required for GStreamer and the GTK-based UI)
  5. python-requests (required for automatic language updating)

Note: it may also be required to install pocketsphinx-hmm-en-hub4wsj

Usage

  1. Move commands.tmp to ~/.config/kaylee/commands.conf and fill the file with sentences and commands to run
  2. Run kaylee.py. This will generate ~/.local/share/kaylee/sentences.corpus based on sentences in the ‘commands’ file, then use the Sphinx Knowledge Base Tool to create and save a new language model and dictionary.
    • For GTK UI, run kaylee.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
  3. Start talking

Note: to start Kaylee without needing to enter command line options all the time, copy options.json.tmp to ~/.config/kaylee/options.json and edit accordingly.

Examples

  • To run Kaylee with the GTK UI, starting in continuous listen mode: ./kaylee.py -i g -c

  • To run Kaylee with no UI and using a USB microphone recognized as device 2: ./kaylee.py -m 2

  • To have Kaylee pass the matched sentence to the executed command: ./kaylee.py -p

Explanation: if the commands.conf contains the line:

    good morning world: example_command.sh

Then three arguments, ‘good’, ‘morning’, and ‘world’, would get passed to example_command.sh as example_command.sh good morning world.

  • To run a command when a valid sentence has been detected: ./kaylee.py --valid-sentence-command=/path/to/command

  • To run a command when a invalid sentence has been detected: ./kaylee.py --invalid-sentence-command=/path/to/command

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