About
Piper is a Home Assistant app that provides text-to-speech using the Piper engine. It is discovered automatically by the Wyoming integration once it is running, which connects it to Home Assistant's voice features. The voice option selects a Piper voice, which is downloaded automatically, and a speaker number can be chosen for voices that support several speakers. Further options adjust speaking rate, variability of audio and cadence, and the silence added after each sentence. An experimental second backend, OmniVoice, offers higher quality and voice cloning but is much slower and downloads a large model on first start. Japanese and Thai voices need an extra phonemizer that is downloaded when the matching option is turned on. The app requires Home Assistant OS, supports amd64 and aarch64, and opens its own page in the sidebar.
Automatic summary of the docs and configuration of home-assistant/apps. Something wrong, or are you the maintainer and want your own text here? Get in touch
Supports
Opens in the sidebar Its own page opens inside Home Assistant.
Updated with Home Assistant Ships and updates with every Home Assistant release.
Setting it up
Install it under Settings, Apps, then start it.
Permissions
Needs no special permissions.
Configuration
- BackendThe text-to-speech engine to use. piper is fast and runs on any hardware. omnivoice is experimental: much higher quality, supports voice cloning, but it is much slower and really wants a desktop or server CPU. It will run on other hardware, but expect it to be too slow to be useful there.
- VoiceThe Piper voice to use. Voices are named according to the following scheme: <language>-<name>-<quality>. Ignored when the backend is omnivoice, which picks its voice per request.
- SpeakerSpeaker number to use if the voice supports multiple speakers. By default, the first speaker (speaker 0) will be used.
- Length scaleSpeeds up or slows down the voice. A value of 1.0 means to use the voice's default speaking rate, with < 1.0 being faster and > 1.0 being slower.
- Noise scaleControls the variability of audio by adding noise during audio generation. The effect highly depends on the voice itself, but in general a value of 0 removes variability and values above 1 will start to degrade audio.
- Speaking cadenceControls the variability of speaking cadence (phoneme widths). The effect highly depends on the voice itself, but in general a value of 0 removes variability and values above 1 produce extreme stutters and pauses.
- Sentence silenceAdds the given number of seconds of silence after every sentence.
- OmniVoice stepsNumber of decode steps for the omnivoice backend. Fewer steps are faster, more steps sound better. Only used when the backend is omnivoice.
- Japanese supportDownload the Japanese phonemizer, needed for Japanese voices. Around 350 MB is downloaded the first time this is turned on.
- Thai supportDownload the Thai phonemizer, needed for Thai voices. Around 390 MB is downloaded the first time this is turned on.
- Update voicesDownload the list of new voices automatically every time the app starts. You must also reload the Wyoming integration for Piper in Home Assistant to see new voices.
- Debug loggingPrint DEBUG level messages to the app's log.
Information
- Installs
- 39.8k sharing analytics
- Connection
- Not stated
- Upkeep
- Part of Home Assistant
- Version
- 2.5.2,
- Kind
- App
- Needs
- Needs Home Assistant OS
- Runs on
- x86-64, 64-bit ARM
You might also like
Advanced SSH & Web Terminal141k installs · A supercharged SSH & Web Terminal access to your Home Assistant…Open
ESPHome Device Builder128k installs · Build your own smart home devices using ESPHome, no programming…Open









