Home

Awesome

rhasspy-IBMWatson

Simple shell script to use Watson (IBM's cloud TTS service) in Rhasspy

Based on the jarvis_says.sh script from tschmidty69's Home Assistant config (his was for Snips and used Amazon Polly TTS) with help from this thread on the Rhasspy forums

Nortonko made an adaptation to this script for Microsoft's Azure Speech service : rhasspy-MSAzure

Runs only on Rhasspy 2.5.11 or later

Preparation

  1. Create an account on IBM Cloud and register for the TTS lite plan here: https://cloud.ibm.com/catalog/services/text-to-speech

The lite (free) plan includes 10 000 characters/month which is plenty for personal home use. However, there is a 30 day inactivity limit so simply make sure to request some different commands (text to be spoken) once every so often

  1. In your dashboard find your service (Menu in top left corner -> Ressource list -> Services and software -> Text to speech)
  2. Note your APIKEY and URL

Easy Installation

  1. Run wget https://raw.githubusercontent.com/Rayz224/rhasspy-IBMWatson/main/install.sh
  2. Make the install script executable: chmod a+x install.sh
  3. Run the script with sudo sudo ./install.sh

Theses commands can be dangerous because they executes a script from the internet with sudo (root access) so make sure to always check the script before executing them. In this case, the script that is install.sh, I suggest you verify it before running the command. If you do not trust the installation script, follow the manual installation below

  1. Follow the instructions in the installation script
  1. Update the Rhasspy TTS settings to Local Command and set Say Program to:
InstallationSay program path
Docker/profiles/en/rhasspy_watson_says.sh
Non-docker/home/${USER}/.config/rhasspy/profiles/en/rhasspy_watson_says.sh

Manual Installation

  1. Copy the rhasspy_watson_says.sh file inside your rhasspy profile folder (rhasspy/profiles/en/)
  2. Update the apikey, url, voice and cache variables
InstallationCache path
Docker/profiles/en/tts/cache/
Non-docker/home/${USER}/.config/rhasspy/profiles/en/tts/cache/
  1. Make the script executable: chmod a+x /home/${USER}/.config/rhasspy/profiles/en/rhasspy_watson_says.sh (you might have to run with sudo)
  2. Update the Rhasspy TTS settings to Local Command and set Say Program to:
InstallationSay program path
Docker/profiles/en/rhasspy_watson_says.sh
Non-docker/home/${USER}/.config/rhasspy/profiles/en/rhasspy_watson_says.sh