The rhvoice integration uses RHVoice Text-to-Speech (TTS) engine to read a text with natural sounding voices.
-
Run rhvoice-rest Docker container (choose your CPU architecture):
aarch64:
docker run -d -p 8080:8080 ghcr.io/aculeasis/rhvoice-rest:arm64v8armv7l:
docker run -d -p 8080:8080 ghcr.io/aculeasis/rhvoice-rest:arm32v7x86_64:
docker run -d -p 8080:8080 ghcr.io/aculeasis/rhvoice-rest:amd64Or use RHVoice add-on. Only
aarch64andx64are supported. -
Install the integration to Home Assistant: use HACS or copy the contents of
custom_components/rhvoice/to<your config dir>/custom_components/rhvoice/. -
Configure in the Home Assistant
configuration.yaml(See the Configuration and Configuration Options sections below) -
Restart Home Assistant.
To enable text-to-speech with RHVoice, add at a minimum the following lines to your Home Assistant's configuration.yaml file:
tts:
- platform: rhvoice
host: <server hostname, domain name or IP address>
port: 8080Full configuration example:
tts:
- platform: rhvoice
host: <server hostname or IP address>
port: 8080
format: 'mp3'
pitch: 50
rate: 50
voice: 'anna'
volume: 50-
host: (string) (Required)
This is the hostname, domain name or IP address that the
rhvoice-restcontainer can be reached at. If you use domain name that is reachable on the Internet for Home Assistant, enter that here. Uselocalhostfor RHVoice add-on. -
port: (string) (Optional)
This is the port that the rhvoice-rest container can be reached at.
Default value:
8080 -
ssl: (boolean) (Optional)
Use HTTPS instead of HTTP to connect.
Default value:
false -
verify_ssl: (boolean) (Optional)
Enable or disable SSL certificate verification. Set to false if you have a self-signed SSL certificate and haven't installed the CA certificate to enable verification.
Default value:
true -
format: (string) (Optional)
This is the file format used for the TTS files created.
Default value:
mp3Allowed values:
wav|mp3|opus|flac -
pitch: (string) (Optional)
This adjust the sound frequency of the TTS voice, lower or higher.
Default value:
50Allowed values:
0 to 100 -
rate: (string) (Optional)
This adjust the talking speed of the TTS voice, slower or faster.
Default value:
50Allowed values:
0 to 100 -
voice: (string) (Optional)
This is the voice that is used to create the TTS files. Voices are connected with a language. For best results select a voice for the text language you will use.
Default value:
anna(russian)Allowed values:
Language Voices Albanian hanaAmerican English alan,bdl,clb,evgeniy-eng,lyubov,sltCzech zdenekEsperanto spomenkaGeorgian natiaKyrgyz azamat,nazgulMacedonian kiko,suzePolish alicja,cezary,magda,michal,natanBrazilian Portuguese letícia-f123Russian aleksandr,aleksandr-hq,anna,arina,artemiy,elena,evgeniy-rus,irina,mikhail,pavel,tatiana,timofey,umka,victoria,vitaliy,vitaliy-ng,vsevolod,yuriySlovak ondroTatar talgatUkrainian anatol,marianna,natalia,volodymyrUzbek sevinch -
volume: (string) (Optional)
This adjusts the volume of the voice in TTS files created, softer or louder.
Default value:
50Allowed values:
0 to 100
service: tts.rhvoice_say
data:
entity_id: media_player.main
message: The cake is a lie
options:
format: mp3
pitch: 32
rate: 64
voice: slt
volume: 16You can buy me a coffee via Bitcoin donation: bc1qd6khey9xkss6vgd6fqpqdyq4lehtepajkcf256