dictation-toolbox/dragonfly

Speech recognition framework allowing powerful Python-based scripting and extension of Dragon NaturallySpeaking (DNS), Windows Speech Recognition (WSR), Kaldi and CMU Pocket Sphinx

What it solves

Dragonfly is a speech recognition framework for Python that simplifies the creation of custom voice commands. It allows users to integrate speech recognition engines with Python scripts, macros, and applications to automate computer activities, program by voice, or dictate prose.

How it works

Dragonfly treats speech commands and grammar objects as first-class Python objects. It provides a framework for defining rules (such as CompoundRule and MappingRule) that map spoken phrases to specific actions, such as simulating key-strokes or entering text. It can be active based on specific application contexts (e.g., only active when a Notepad window is in focus).

Who it’s for

Developers and power users who want to create complex, voice-controlled automation and programming tools using Python.

Highlights

  • Multi-engine support: Supports Nuance Dragon, Windows Speech Recognition (WSR), Kaldi, and CMU Pocket Sphinx.
  • Cross-platform: Works on Windows, macOS, and Linux (X11).
  • Action framework: Includes built-in actions for text input and key-stroke simulation.
  • Context-aware: Commands can be restricted to specific applications via AppContext.

Related

  • Project
  • Project
  • Project
  • Project
  • Project