Как озвучить аудиокнигу с помощью нейросетей
Я уже некоторое время занимаюсь автоматической озвучкой книг и в этой статье поделюсь своим опытом создания нейросетевых аудиокниг — будем превращать текстовую книгу в аудиокнигу с помощью синтеза речи.
Мы будем использовать только бесплатные инструменты и программы.
Все перечисленные ниже программы и утилиты можно скачать по ссылкам в шапке темы на 4PDA:
https://4pda.to/forum/index.php?showtopic=1110815
Если вы будете идти по шагам, то в конце вы получите готовую аудиокнигу:
Шаг 1. Найти и подготовить текст книги
Первый шаг — получить текст книги в нормальном виде.
В идеале — в формате TXT, или попробуйте с помощью онлайн-инструментов конвертировать ваш текст в TXT.
Важно, чтобы текст был пригоден для обработки: без мусора, сломанных переносов, лишних символов, повторяющихся заголовков, технических страниц и других проблем, которые часто встречаются в электронных книгах.
Шаг 2. Нормализовать текст для озвучки
Человек легко понимает такие фрагменты:
1991 г.
12 кг
т. е.
XX век
5%
А. С. Пушкин
Но TTS-модель (TTS = программа для озвучки текста) может прочитать их неестественно или неправильно. Поэтому перед озвучкой такие элементы нужно раскрывать в нормальную устную форму.
Например:
1991 г. → в тысяча девятьсот девяносто первом году
12 кг → двенадцать килограммов
т. е. → то есть
XX век → двадцатый век
5% → пять процентов
Для этого используется автоматическая нормализация текста. Один из инструментов, который хорошо помогает именно с русским текстом для TTS, — ru-normalizr. Он обрабатывает числа, даты, сокращения, инициалы, символы и другие конструкции. Из того, что я пробовал, ru-normalizr пока выглядит одним из самых адекватных решений для подготовки русского текста под синтез речи.
Другая альтернатива — LLM нормализация, но она требует больше времени и денег на токены, так что разбирать её тут мы не будем.
В общем, загоняем текст в ru-normalizr GUI, нажимаем все галочки и идём дальше:
Шаг 3. Расставить ударения
Для русского языка ударения — отдельная проблема. Поэтому для большинства моделей желательно (а иногда и обязательно) заранее расставлять ударения, чтобы получить более менее нормальный результат.
Я использую автоматическую расстановку ударений через бесплатный Silero-Stress.
Хорошая альтернатива — RuAccent. Он иногда лучше ставит ударения и ёфицирует текст, но в то же время может ошибаться в других местах и чаще ломать форматирование или пунктуацию.
Обе модели неидеальны, ошибки неизбежны, но этот этап всё равно важен для большинства TTS-моделей. Зато обе модели бесплатны, а Silero Stress ещё и очень эффективен, и обрабатывает тексты просто молниеносно.
Отправляем текст, который получили из ru-normalizr GUI, в Silero Stress GUI и идём дальше:
Шаг 4. Выбрать голос и TTS-модель
Следующий шаг — сама озвучка. Для этого нужна TTS-модель, то есть система синтеза речи.
Сейчас для русского языка мне больше всего нравится F5-TTS. На мой взгляд, это одна из самых интересных моделей для русского языка на данный момент.
Преимущество F5-TTS — хорошая натуральность голоса при относительно умеренном потреблении ресурсов. Запустить её можно уже на среднем игровом ПК (от 4гб VRAM?), хотя скорость генерации и стабильность будут зависеть от железа. Кроме того, она может генерировать артефакты: повторы, странные интонации, сбои и ошибки в отдельных фразах.
Если нужен более лёгкий вариант, можно посмотреть в сторону Silero TTS.
Silero TTS — очень лёгкий движок. Его можно запустить почти где угодно, работает он быстро и стабильно. Но результат обычно получается более монотонным. Если нужна максимальная скорость и стабильность — Silero TTS хороший вариант. Особенно для слабых ПК — он работает очень быстро и запускается почти на любом ПК.
В общем, если у вас хороший компьютер, скачайте F5 TTS Portable.
Если плохой, то скачивайте Silero TTS GUI.
Закидываете туда текст, который получили после прошлых шагов, и программа сгенерирует вам книгу.
Скорость зависит от движка и железа.
На моём компьютере с RTX4070super книга продолжительностью в 12 часов генерируется примерно за 40 минут на F5 TTS, а при использовании Silero TTS — 4-7 минут!
Вы можете послушать пример конечного результата тут.
Эта аудиокнига была записана именно с использованием инструментов из этой статьи — ru-normalizr GUI + Silero Stress GUI + F5 TTS Portable.
Важно: ИИ-озвучки не замена дикторам
Особенно для художественной литературы.
В аудиокнигах могут встречаться ошибки:
неправильные ударения;
странная интонация;
неудачные паузы;
ошибки произношения;
артефакты.
Но у ИИ-озвучки есть сильная сторона: она позволяет озвучивать тексты, которые иначе могли бы вообще никогда не получить аудиоверсию. И таких книг очень много — послушать хочется, а никак.
Так что такое создание TTS аудиокниг идеально для нехудожественной литературы, на которую еще не была записана профессиональная озвучка. Иногда не столь важна форма, сколько содержание — некоторые книги точно стоят того, чтоб перетерпеть несколько десятков ошибок
Лига Аудиокниг
896 постов2.8K подписчиков
Правила сообщества
Полностью Все Правила Пикабу