Skip to main content

Rhasspy TTS Hermes MQTT Service

Continous Integration GitHub license

Implements hermes/tts functionality from Hermes protocol using any of the following command-line text to speech systems:

  • eSpeak
    • espeak --stdout
  • flite
    • flite -o /dev/stdout -t
  • PicoTTS
    • pico2wave.sh (in bin)
  • MaryTTS
    • marytts.sh 'http://localhost:59125/process' {lang} (in bin)

Use --play-command aplay to play speech locally instead of using hermes/audioServer<siteId>/playBytes.

Requirements

  • Python 3.7

Installation

$ git clone https://github.com/rhasspy/rhasspy-tts-cli-hermes
$ cd rhasspy-tts-cli-hermes
$ ./configure
$ make
$ make install

Running

Run script:

bin/rhasspy-tts-cli-hermes <ARGS>

Command-Line Options

usage: rhasspy-tts-cli-hermes [-h] --tts-command TTS_COMMAND
                              [--play-command PLAY_COMMAND]
                              [--voices-command VOICES_COMMAND]
                              [--language LANGUAGE] [--temporary-wav]
                              [--text-on-stdin] [--host HOST] [--port PORT]
                              [--username USERNAME] [--password PASSWORD]
                              [--tls] [--tls-ca-certs TLS_CA_CERTS]
                              [--tls-certfile TLS_CERTFILE]
                              [--tls-keyfile TLS_KEYFILE]
                              [--tls-cert-reqs {CERT_REQUIRED,CERT_OPTIONAL,CERT_NONE}]
                              [--tls-version TLS_VERSION]
                              [--tls-ciphers TLS_CIPHERS] [--site-id SITE_ID]
                              [--debug] [--log-format LOG_FORMAT]

optional arguments:
  -h, --help            show this help message and exit
  --tts-command TTS_COMMAND
                        Text to speech command to execute with text as an
                        argument
  --play-command PLAY_COMMAND
                        Command to play WAV data from stdin (default: publish
                        playBytes)
  --voices-command VOICES_COMMAND
                        Command to list voices (one per line)
  --language LANGUAGE   Default language passed to command
  --temporary-wav       Pass path to temporary WAV file to TTS command
  --text-on-stdin       Pass input text to TTS command's stdin instead of as
                        arguments
  --host HOST           MQTT host (default: localhost)
  --port PORT           MQTT port (default: 1883)
  --username USERNAME   MQTT username
  --password PASSWORD   MQTT password
  --tls                 Enable MQTT TLS
  --tls-ca-certs TLS_CA_CERTS
                        MQTT TLS Certificate Authority certificate files
  --tls-certfile TLS_CERTFILE
                        MQTT TLS certificate file (PEM)
  --tls-keyfile TLS_KEYFILE
                        MQTT TLS key file (PEM)
  --tls-cert-reqs {CERT_REQUIRED,CERT_OPTIONAL,CERT_NONE}
                        MQTT TLS certificate requirements (default:
                        CERT_REQUIRED)
  --tls-version TLS_VERSION
                        MQTT TLS version (default: highest)
  --tls-ciphers TLS_CIPHERS
                        MQTT TLS ciphers to use
  --site-id SITE_ID     Hermes site id(s) to listen for (default: all)
  --debug               Print DEBUG messages to the console
  --log-format LOG_FORMAT
                        Python logger format

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rhasspy-tts-cli-hermes-0.4.1.tar.gz (6.9 kB view details)

Uploaded Source

File details

Details for the file rhasspy-tts-cli-hermes-0.4.1.tar.gz.

File metadata

  • Download URL: rhasspy-tts-cli-hermes-0.4.1.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.6.9

File hashes

Hashes for rhasspy-tts-cli-hermes-0.4.1.tar.gz
Algorithm Hash digest
SHA256 61f9189b90a7919162358202e8306bfc4e9d6cc4f3211428545d8ed34109a80a
MD5 9ef36adc35436b5ec3cd7f65f1e176e9
BLAKE2b-256 ecb43b6992fbea3f87a49a863fca69daffe330d48b27681d85ab725a9dd6318b

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.4.1 This release

1 file

0.3.0

1 file

0.2.0

1 file

0.1.1

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page