Как стать автором
Поиск
Написать публикацию
Обновить

Создаём генератор аудиокниг с персональным переводом

Уровень сложностиСредний
Время на прочтение39 мин
Количество просмотров6.9K
Всего голосов 30: ↑28 и ↓2+31
Комментарии6

Комментарии 6

Если правильно понимаю, в статье решается вопрос поиска иностранных слов с их "привязкой" к русским аналогам. И это должно помочь в изучении иностранного языка.
Вопросы по технической реализации:
- сначала нужен литературный перевод, т.к. agrotranslate слабовато в этом вопросе?
- как вы "победили" расстановку правильных ударений и интонацию? У CoquiTTS сложно с этим.
- насколько длинные предложения получается преобразовывать ? Опять же у CoquiTTS при длинных предложениях появляются какие-то провалы в речи либо охи-вздохи.

сначала нужен литературный перевод, т.к. agrotranslate слабовато в этом вопросе?

Далеко не обязательно. Argos, конечно, может выдать примитивный перевод, что не очень хорошо для общего восприятия текста, но, как преимущество, он и выровняется отлично.

Литературный перевод нужно правильно подобрать, чтобы в нём было меньше вольностей переводчика. "Слишком" литературный вариант куда сложнее выравнивать, как по предложениям, так и по словам, что даст более частые пропуски и ошибки. Использование просто хорошего переводчика, как реализованный здесь GC, будет золотой серединой, в том числе и по удобству, так как не требует никаких дополнительных действий от конечного пользователя.

как вы "победили" расстановку правильных ударений и интонацию? У CoquiTTS сложно с этим.

Для полных предложений не победил, но замечал нечастые ошибки только на частях с синтезом русской речи, чаще всего на смещениях ударения в конец слова. Вот, для примера, только что сгенерировал рассказ из статьи с CoquiTTS, там в финальном аудио первыми нашлись ру́ки-руки́, наплы́ву-наплыву́, сце́ной-сцено́й, ро́скоши-роско́ши, …. Хм. Даже стало интересно попробовать принудительно расставить акуты в тексте на синтез.

На одиночных словах всё плохо на всех синтезаторах/моделях. Эту задачу, как и описывал, пытался решить через MFA, переиспользуя "контекстное" звучание полных предложений, хотя спасительным этот подход не назову.

насколько длинные предложения получается преобразовывать ? Опять же у CoquiTTS при длинных предложениях появляются какие-то провалы в речи либо охи-вздохи.

После вашего сообщения отдельно обращу на это внимание, но пока не замечал проблем с этим, даже в тех предложениях, которые были созданы с предупреждением о превышении лимита символов. Для данного проекта это не должно стать проблемой, слишком большие участки на синтез почти не передаются, а по-хорошему стоило бы вообще добавить дополнительное дробление сложных предложений, чтобы упростить понимание текста.

Ваш проект мне показался интересным. Думаю, что было бы полезно реализовать следующее.

  1. Выгрузку user_storage.pkl в Anki.

  2. Возможность включить повторное чтение предложения на английском после перевода.

P.S. 429 ошибку словил от gtts. Решил использованием 10 прокси, но лучше бы эту ошибку как-то обрабатывать и не допускать.

Спасибо, интересные предложения. Параметр повтора добавил в config. С Anki посмотрю, можно ли сделать что-то лучше, чем просто перевести всю структуру в .csv.

В случае с фильмами если есть субтитры, то можно использовать голос реального артиста, а не электронной женщины. Благодаря тому, что фразы в субтирах размечены по времени с высокой точностью. А перевод по словам добавлять так как это уже реализовано в вашей программе. Очень круто может получиться.

$ mkvinfo data/The.Big.Bang.Theory.S01E03.1080p.BluRay.Rus.Eng.TeamHD.mkv

$ mkvextract tracks data/The.Big.Bang.Theory.S01E03.1080p.BluRay.Rus.Eng.TeamHD.mkv  4:subtitle.srt

$ head subtitle.srt 
1
00:00:02,419 --> 00:00:04,086
[MUSlC PLAYS ON LAPTOPS]

2
00:00:11,720 --> 00:00:15,556
All right, just a few more feet and....

3
00:00:15,724 --> 00:00:18,934

$ ffmpeg -i data/The.Big.Bang.Theory.S01E03.1080p.BluRay.Rus.Eng.TeamHD.mkv -ss 00:00:11.720 -to 00:00:15.556 -q:a 0 -map a:1 output_audio.mp3

$ mpg321 output_audio.mp3

Какой красивый номер у статьи!

Зарегистрируйтесь на Хабре, чтобы оставить комментарий