Speech Recognition Versions Save

Speech recognition module for Python, supporting several engines and APIs, online and offline.

3.3.2

8 years ago

Bugfix release!

  • Fix exception_on_overflow shenanigans. This version will eliminate those pesky ValueErrors.
  • The overflow error should well and truly be gone now.

Special thanks to @michaelpri10 for reporting the exception_on_overflow bug.

3.3.1

8 years ago

Fix for list_microphone_names, courtesy of @ibutra. Fully compatible with 3.3.0.

See #85 for more details!

3.2.1

8 years ago

Changes since 3.2.0:

  • Significantly improved and reorganized documentation.
  • Fix for overflow issue, courtesy of @jbwincek.

3.3.0

8 years ago

Major changes since 3.2.1:

  • Possible backward incompatibility: if PyAudio is not installed, Microphone now throws an AttributeError when created rather than not being defined.
    • This only requires changes if you are explicitly testing for the existance of the class, using something like hasattr or getattr.
  • More robust error handling - always clean up PyAudio resources, no matter what error conditions arise.
  • Better error checking - always verify PyAudio version.

3.2.0

8 years ago

Major changes since 3.1.3:

  • Support for recognition using CMU Sphinx - do speech recognition while offline!
    • English supported out of the box; French and Mandarin available for download. See the README for details.
  • Automatic sample rate/sample width conversions; users shouldn't have to worry about audio formats at all.
  • Lots of documentation improvements.

3.1.3

8 years ago
  • Work around an obscure standard library issue.
    • Doesn't work on big endian systems - use Python 3.5 to get the proper bugfix for that.
  • Handle stereo WAV files correctly.

3.1.2

8 years ago

Changes since 3.1.0:

  • Update documentation to account for new releases of Python, PyInstaller, and PyAudio.
    • The new PyAudio version fixes an obscure overflow issue and also makes installation much easier on all platforms.
    • New documentation for the updated PyAudio installation process.
  • General documentation improvements.
  • Handle errors better and add additional error checks.

3.1.0

8 years ago

Changes since 3.0.0:

  • Support for AT&T Speech to Text API.
  • Small documentation tweaks.

3.0.0

8 years ago
  • MULTIPLE SERVICE SUPPORT! Now you can use Google Speech Recognition, Wit.ai, or IBM Speech to Text to obtain the recognition results.
  • Filtering for clicks and pops. This drastically reduces the number of false positives in phrase recognition.
  • Better usage examples - ready-to-run and better organized.

The API has also changed somewhat. Here's a quick upgrade guide:

  • speech_recognition.Recognizer(language = "en-US", key = "AIzaSyBOti4mM-6x9WDnZIjIeyEU21OpBXqWBgw") changed to speech_recognition.Recognizer().
    • The key and language are now specified in the speech_recognition.recognize_* functions instead.
  • For recognizer_instance.listen, speech_recognition.WaitTimeoutError exceptions are thrown rather than OSError exceptions upon timeout.
  • The stop function returned by recognizer_instance.listen_in_background now blocks until the background listener actually stops before returning.
  • recognizer_instance.recognize(audio_data, show_all = False) has changed to recognizer_instance.recognize_google(audio_data, key = None, language = "en-US", show_all = False).
    • Additionally, when show_all is set, the return value is the raw result from the API call, rather than a list of predictions and their confidences.
    • Note that we specify the key and language here now rather than in the speech_recognition.Recognizer() constructor.
    • speech_recognition.UnknownValueError is now thrown instead of LookupError when speech is unintelligible, and speech_recognition.RequestError is now thrown instead of IndexError or KeyError when recognition fails.
  • Added recognizer_instance.recognize_wit and recognizer_instance.recognize_ibm for recognizing with Wit.ai or IBM Speech to Text.

To download, go to the PyPI page!