Skip to content

A custom Home Assistant integration to play combined audio files before and/or after text-to-speech (TTS) messages

License

Notifications You must be signed in to change notification settings

nimroddolev/chime_tts

Repository files navigation

Chime TTS

hacs_badge version Community Forum

Chime TTS is a custom Home Assistant integration that eliminates the audio lag between playing a chime/notification sound effect before a TTS audio notification.

If you find Chime TTS useful, consider showing your support: Buy Me A Coffee


What is Chime TTS?

Chime TTS is a custom Home Assistant integration that locally combines TTS audio and sound effects into seamless audio for playback in a single service call, eliminating the lag. Chime TTS includes a suite of options to further customize the audio.

The Problem:

Latency is introduced between the notification chime and the TTS audio

Adding a notification chime before Text-To-Speech (TTS) audio messages requires two separate action calls, which introduces lag due to networking latency of cloud TTS platforms, audio processing, and delays before media_player playback begins.

The Solution:

Chime TTS removes the latency between the notification chime and the TTS audio

Chime TTS addresses this issue by combining the audio files into a single file locally on your Home Assistant device. This combined file is then played through your speakers in one seamless event, eliminating any lag.


Features

Chime TTS offers various features that enhance TTS audio playback experience:

  • No lag or timing issues: Precise timing between audio files without cloud TTS delays.
  • Customizable audio cues: Play preset or custom audio before and after TTS messages.
  • Flexible TTS platform selection: Supports various TTS platform integrations.
  • Easy service invocation: Use the chime_tts.say and chime_tts.say_url services in automations and scripts.
  • Set media player volume: Notifications can be played at a defined volume and restored after playback.
  • Restore previous audio: Chime TTS supports pausing and resuming currently playing audio beyond the media player platforms supported by Home Assistant (eg: HomePods).
  • Mix and match TTS platforms: Combine TTS audio using multiple TTS platforms within the same audio announcement.
  • Configurable TTS speed: Set the TTS audio speed anywhere from 1-500%.
  • Configurable TTS pitch: Set the pitch for TTS audio, allowing for more customization.
  • Support for FFmpeg arguments: Apply FFmpeg jobs to the generated audio, or specific jobs to specific chimes and TTS audio segments.
  • Configurable delay: Set custom delays between chimes & TTS audio.
  • Configurable overlay: Set custom overlay durations between chimes & TTS audio.
  • Caching: Cache audio for faster playback.
  • Speaker Groups: Group speakers for simultaneous playback (on supported platforms).

Quick Start

Follow these easy steps to get started with Chime TTS:

  1. Installation - Quickly install Chime TTS via HACS or manually.
  2. Add the Integration - Add Chime TTS to your Home Assistant instance.

How Do I Use It?

Services

Chime TTS adds 4 new services to your Home Assistant instance: chime_tts.say, chime_tts.say_url, chime_tts.replay and chime_tts.clear_cache. Discover how you can use these services and the features they offer:


Configuration & Documentation

For configuration, examples and documentation check out the official Chime TTS site.

Support and Discussion

For questions, suggestions, and community discussion about Chime TTS, visit our Community Forum.