LinuxCommandLibrary

speech-dispatcher

Text-to-speech system service

SYNOPSIS

speech-dispatcher [OPTIONS...]

Examples:
Start daemon: speech-dispatcher --daemon
Stop daemon: speech-dispatcher --stop
Restart daemon: speech-dispatcher --restart
Reload configuration: speech-dispatcher --reload

PARAMETERS

-d, --debug
    Enables verbose debug messages for troubleshooting.

-l LOG_LEVEL, --log-level=LOG_LEVEL
    Sets the logging verbosity level. LOG_LEVEL can range from 0 (no logs) to 5 (most verbose).

-c CONF_FILE, --conf-file=CONF_FILE
    Specifies an alternative configuration file to use instead of the default ones.

-D, --daemon
    Starts speech-dispatcher as a background daemon process.

-s, --stop
    Sends a signal to stop the running speech-dispatcher daemon.

-r, --restart
    Restarts the running speech-dispatcher daemon.

-R, --reload
    Reloads the configuration file of the running speech-dispatcher daemon without stopping it.

-p PID_FILE, --pid-file=PID_FILE
    Specifies an alternative PID file path for the daemon.

-V, --version
    Prints the version information of speech-dispatcher.

-h, --help
    Displays a help message with available command-line options.

DESCRIPTION

speech-dispatcher is a server process (daemon) that provides a high-level, unified interface for applications to communicate with various speech synthesis engines. It aims to simplify the use of Text-to-Speech (TTS) functionalities by abstracting away the complexities of different backends like eSpeak, Festival, or RHVoice.

It manages speech requests from multiple client applications, queuing them and routing them to the appropriate synthesis engine. This daemon-based approach ensures consistent speech output across applications and allows users to configure their preferred voice and engine globally. While it runs as a background service, the speech-dispatcher command itself is primarily used for controlling the daemon (starting, stopping, reloading) or for debugging purposes. For direct speech output, client commands like spd-say are typically used to interact with the running daemon.

CAVEATS

speech-dispatcher is a daemon manager; it does not directly produce speech output on its own. It requires a client application (like spd-say or a screen reader) to send text to it. Additionally, it depends on one or more underlying speech synthesis engines (e.g., eSpeak, Festival) to be installed and properly configured on the system to function correctly. Configuration can be complex and may require editing files in /etc/speech-dispatcher/ or ~/.speechd/.

CONFIGURATION FILES

The main configuration files for speech-dispatcher are typically located at /etc/speech-dispatcher/speechd.conf for system-wide settings, and ~/.speechd/speechd.conf for user-specific overrides. These files control aspects such as the default speech engine, voice parameters, and logging.

CLIENT INTERACTION

While speech-dispatcher manages the speech synthesis service, user applications interact with it through client libraries or dedicated command-line tools. The most common command-line client is spd-say(1), which allows users to directly send text to the running speech-dispatcher daemon for speech output from the terminal.

HISTORY

speech-dispatcher was developed as part of the broader effort to improve accessibility on Linux desktop environments, particularly within the GNOME project. Its primary goal was to provide a standardized, high-level API for applications to interact with various Text-to-Speech (TTS) engines, abstracting away the engine-specific complexities. This allowed developers to integrate speech output into their applications without needing to know the intricacies of each individual synthesis backend. It has evolved to support a wide range of speech synthesizers and has become a crucial component for screen readers and other assistive technologies on Linux.

SEE ALSO

spd-say(1), espeak(1), festival(1), orca(1)

Copied to clipboard