Inspiration

What it does

It allows a user to define a speech phrase specification file that defines available speech commands for their python program. The speech recognizer turns voice into sentence based on these phrases, and processes text into a user-defined, useful piece of text that can be used to execute application-specific code.

For instance:

"turn my computer off" is a useful phrase, but programs have a hard time dealing with sentences. The user-defined speech specification file can specify that this phrase should map to:

"sudo shutdown now"

How I built it

I built SpeakPython from scratch using antlr parser for my new speech phrase grammar. I leveraged CMUSphinx and pocketsphinx to save myself from training and building a speech recognizer myself.

Challenges I ran into

Accomplishments that I'm proud of

What I learned

What's next for SpeakPython

Eventually the installation process will be simplified, and cross-platform support added. Other languages like javascript can utilize the javascript version of pocketsphinx, allowing speech recognition on websites in an easy-to-define manner.

Built With

  • cmusphinx
  • gstreamer
  • pocketsphinx
  • python
Share this project:

Updates