Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Home Assistant SaluteSpeech TTS (text-to-speech)

Не имею никаких контактов со сбером и никак к ним не отношусь! Просто нашёл БЕСПЛАТНЫЙ инструмент и реализовал для СЕБЯ компонент. Используйте, как есть, все доработки и хотелки реализуйте самостоятельно

Компонент, позволяющий генерировать голос использую SaluteSpeech API. Пока бесплатно доступно 200 000 символов для физ. лиц. Мне для того чтобы проговорил с утра погоду и разную инфу с датчиков, достаточно, всё приятнее гугл-транслейта произношение.

Подробнее: https://developers.sber.ru/portal/products/smartspeech

Установка и Настройка

  1. Зарегистрироваться как частное лицо на https://developers.sber.ru/studio
  2. Создать проект SaluteSpeech
  3. Сгенерировать токен "Авторизационные данные"

скопировать sbertts в custom_components

Настройка через UI

Настройки -> Устройства и службы -> Добавить интеграцию -> SaluteSpeech TTS

Укажите:

  • authentication (base64 client_id:client_secret)
  • language
  • voice
  • rate

После добавления интеграции можно менять дефолтные language/voice/rate через: Настройки -> Устройства и службы -> SaluteSpeech TTS -> Настроить. authentication - готовый токен basic авторизации, взять можно в ЛК или сделать самому закодировать в base64 строку client_id:client_secret

Доступные voice

  • Nec - Наталья
  • Bys - Борис
  • May - Марфа
  • Tur - Тарас
  • Ost - Александра
  • Pon - Сергей
  • Kin - EN Kira

Kira доступна только при использовании английского языка (en-US)

доступные rate

  • 8000
  • 24000

Использование в автоматизациях:

action: tts.speak
target:
  entity_id: tts.salutespeech
data:
  media_player_entity_id: media_player.bt_03
  message: "Текст"
  options:
    language: ru-RU
    voice: Nec
    rate: "24000"

Можно менять voice/rate/language в options на каждый вызов, не создавая отдельные интеграции под каждый голос.

Поддерживается язык SSML, нужно использовать тег <speak> https://developers.sber.ru/docs/ru/salutespeech/synthesis/ssml

Доработка

Все желающие, кто может внести улучшения, присылайте PR

Что хотелось бы реализовать:

  • Вывести в аттрибуты количество оставшегося запаса символов (но я не нашёл как это сделать через API)
  • Добавить так же распознавание речи из аудио (STT)

About

SaluteSpeech TTS для воспроизвдения ваших текстов

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages