Google Text To Speech на Windows

Как вы знаете, API закрыто, а локальные модели есть только под Android. Но на Windows хочется слушать родную TTS’ку от гугла на винде.

Представляю вашему вниманию API сервер на Android который позволяет использовать родной TTS Android через HTTP сервер прямо на телефоне .

Кодовое название Gromozeka. (При установке tts-playload)

Для того чтобы прочитать текст вызовите API

curl --request POST \
  --url http://localhost:8079/ \
  --header 'content-type: text/plain' \
  --data 'Хеллоу'

И после этого ваше устройство воспроизведет звук) Это не все методы api.

Что это значит? Это значит что на android подымается HTTP сервер на порту 8080 к которому можно подключится и вызывать его api.

Гайд для эмулятора BlueStacks 5

  1. В настройках (Настройки — Дополнительно) выбрать Android Debug Bridge в True
  2. Установите adb https://developer.android.com/tools/adb?hl=ru
  3. Биндим порт из BlueStacks в windows (через cmd или сохранить в bat скрипт)
cd C:\Users\ВАШЕИМЯПОЛЬЗОВАТЕЛЯ\AppData\Local\Android\Sdk\platform-tools
adb kill-server
adb start-server
adb forward tcp:8079 tcp:8080

Устанавливаете и включаете прогу windows BlueStack 5 (Nougat64)

Проверяем что все работает

curl --request POST \
  --url http://localhost:8079/ \
  --header 'content-type: text/plain' \
  --data 'Привет from Windows'

Готово, вы бесподобны

API функции

Сгенерировать файл на адроиде со звуком (Если по Wi-fi подрубится то заменить на IP Вашего телефона localhost:8080 (именно 8080)

curl --request POST \
  --url http://localhost:8079/savetofile \
  --header 'content-type: text/plain' \
  --data 'Я возвращаю статус генерации, а не сам файл'

Cкачать файл с андроида

curl --request GET \
  --url http://localhost:8079/downloadSavedFile \
  --header 'Content-Type: text/plain' \
  --output result.ogg

Проверить статус генерации (говорит чи не)

curl --request GET \
  --url http://localhost:8079/isSpeaking

Остановка речи

curl --request GET \
  --url http://localhost:8079/stop

Настройка параметров генерации (не тестировал)

curl --request GET \
  --url "http://localhost:8080/setSettings?volume=1.0&speed=1.2&pitch=0.8"

P.S. Есть генератор к нему на Flask если надо, могу предоставить исходники пишем в ТГ @treeloys

Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *