- 1 Overview
- 2 Text-To-Speech
- 3 Voice Control
- 4 Speech Recognition
- 4.1 Free Speech Recognition Engines
- 4.2 Proprietary Speech Recognition Engines
Speech recognition is any means by which you can interface with your computer via spoken word. This page is designed to identify applications that can facilitate speech recognition and to serve as a guide in installing and using this software in Arch.
A note to newcomers: Speech recognition is something that has traditionally not been well supported in Linux. If you become interested and choose to dig below the immediate surface, you can expect difficulty in finding documentation or help from the community.
Types of Speech Recognition
Speech recognition can mean several things:
- As it sounds, Text-To-Speech (or TTS) will turn a string of text into an audio clip. There are several programs available that perform TTS, some of which are command-line based (ideal for scripting) and others which provide a handy GUI.
- Simple Voice Control/Commands:
- This is the most basic form of Speech-To-Text application. These are designed to recognize a small number of specific, typically one-word commands and then perform an action. This is often used as an alternative to an application launcher, allowing the user for instance to say the word “firefox” and have his OS open a new browser window.
- Full dictation/recognition:
- Full dictation/recognition software allows the user to read full sentences or paragraphs and translates that data into text on the fly. This could be used, for instance, to dictate an entire letter into the window of an email client. By far the most difficult aspect of speech recognition and this sort of software is not as easy/readily-available in linux. In some cases, these types of applications need to be trained to your voice - several even improve in accuracy the more you use them.
Several years ago there was a push to implement speech recognition in Linux. Since then, many of those projects have stagnated.
The two major players in text-to-speech applications are Festival and eSpeak. Comparison available here
Festival offers a general framework for building speech synthesis systems as well as including examples of various modules. As a whole it offers full text to speech through a number APIs: from shell level, though a Scheme command interpreter, as a C++ library, from Java, and an Emacs interface. Festival is multi-lingual (currently English (British and American), and Spanish) though English is the most advanced.
- Can install several different voices/accents.
- Available in Extra
eSpeak is "a compact open source software speech synthesizer for English and other languages, for Linux and Windows".
- Open source
- Available in the community repository
- Excellent language support
mbrola is a non-free phonemes-to-audio program.