Собрал простого бота, который озвучивает тексты вашим голосом (@audioclonebot)
У меня есть it-сервис, и недавно передо мной встала задача: записать для него подробную видеоинструкцию.
Я сел за сценарий и понял, что дело плохо. Функционала в сервисе много, текста — еще больше, а перспектива запоминать все это, а потом с десятого дубля пытаться выговорить без ошибок и «эээ...», вызывала откровенную тоску.
И тут в голове щелкнуло: «А что, если я просто скормлю готовый текст нейросети, а она озвучит его моим голосом?»
С этой идеей я пошел в Google. И довольно быстро упёрся в две проблемы:
- Бесплатные сервисы звучали так, будто R2-D2 пытается зачитать сводку новостей. Голос был похож, но интонации... мертвые.
- Качественные платные сервисы — в основном иностранные. А оплатить их из России сейчас, мягко говоря, квест.
В итоге, я понял — хочешь сделать хорошо и доступно, сделай сам. Я решил собрать в одном месте модели для клонирования/синтеза речи и добавить к ним удобный интерфейс в Telegram.
Так на свет и появился Voicecloner bot.
Как это работает?
Для получения синтезированного голоса нужно сделать всего 2 вещи:
- Даете боту «образец» голоса. Можно просто записать голосовое сообщение или отправить готовый аудио-файл.
- Отправляете текст. Бот его обрабатывает и присылает вам готовое аудио.
В боте сейчас три «движка» (модели), которые можно переключать:
- F5-TTS: Мой фаворит для русского языка. Проблемы есть, но мелкие — модель может не до конца озвучить короткий текст.
- EL: Отлично справляется и с русским, и с иностранными языками.
- OpenAudio S1: Этот хорош, если вам нужно озвучить что-то на английском или другом языке без дикого акцента.
Главные фишки
- Расстановка ударений. Модель F5-TTS (которая стоит по умолчанию) позволяет вручную контролировать ударение. Если бот ошибся, просто ставите + перед нужной гласной:
Пример: Отнеси это молок+о. - Расстановка пауз. Чтобы речь в видеоинструкции не звучала как пулеметная очередь, я реализовал паузы. Пауза ставится через простой синтаксис на основе квадратных скобок.
Пример: Привет, [пауза 1] как дела?
Бот вежливо помолчит 1 секунду.
- Формат на выбор. Кому-то удобно получать озвучку как голосовое сообщение (формат OGG), чтобы сразу переслать. Для этого есть команда /ogg. А кому-то нужен файл для монтажа видео (как мне) — для этого есть /mp3.
Попробуйте сами
Я верю, что хороший инструмент должен быть доступен. Поэтому в боте есть 1 бесплатная минута синтеза каждый месяц. Надеюсь этого хватит, чтобы «поиграться» и понять, подходит ли он вам. А если нужно больше — там есть и платные пакеты (которые, в отличие от иностранных, легко оплатить).
Бот — Voicecloner bot.
Актуальные новости о проекте — канал
Примеры озвучки: