Синтез речи для Linux

MaryTTS — свободная программа синтеза речи по тексту для Linux. Помимо весьма достойного качества генерируемых голосов, MaryTTS обладает клиент-серверной архитектурой, что позволяет генерировать речь из любой программы на любом языке программирования. Заявлена поддержка Python, Ruby, Perl, TCL, Java и т.д.

Синтезатор речи для Linux

Зачем это нужно?

Вы можете написать простой скрипт, который будет работать в фоне и с помощью движка MaryTTS информировать о важных системных событиях: разряде батареи, нехватки памяти или даже о попытке несанкционированного доступа. Или можно сконвертировать текст на web-странице в аудиофайл, чтобы потом прослушать его в плеере.

Установка MaryTTS в Linux

Скачайте последнюю версию программы с официального сайта. Выбирать нужно Runtime Package (если не хотите самостоятельно собирать из исходников). Распакуйте полученный архив в /opt/mary и перейдите в поддиректорию bin. В ней можно будет обнаружить 3 исполняемых компонента: сервер, клиент и установщик голосовых кодеков. Прежде всего, следует запустить сервер:

./marytts-server

Теперь нужно научить Машу понимать русский. Для этого пригодится marytts-component-installer. Запустите программу, найдите в списке русский и нажмите кнопку «Install». Будет загружен соответствующий кодек. После этого нужно перезапустить сервер. Синтезатор MaryTTS готов к работе.

Использование программы синтеза речи

Сервер работает по протоколу HTTP, поэтому к нему можно обращаться из любого языка программирования. API очень простой и хорошо описан на сайте проекта. Например, вызов из Ruby будет выглядеть так:

sound = client.generate(paragraph)
if client.output_type == "AUDIO"
  # and client.audio == "WAVE_FILE"
  Player.play(sound)
end

Но что делать, если вы не программист? К вашим услугам третий компонент MaryTTS — client. Программа имеет графический интерфейс и позволяет зачитывать тексты или преобразовывать их в аудиофайлы. Запустите ./marytts-client, выбирайте русскоязычный кодек, в окно слева скопируйте текст и нажмите кнопку «Play».

Ваша оценка: Нет Средняя оценка: 5 (6 votes)
11
pomodor

На сайте есть онлайн-демо. Можно заценить качество речи без предварительной установки.

Кстати, кто-нибудь знает, есть ли консольный аудиоредактор? Надо сшивать серию аудиофайлов в один, а некоторые фрагменты микшировать. Хочу сделать автоматическую генерацию подкастов для Либератума.

Ваша оценка: Нет Средняя оценка: 5 (3 votes)
8
dk

Именно редактора, к сожалению, нет, но для озвученных задач (монтаж и микширование) что-то найдется. Посмотрите на sox, а также некоторые кодеры (mpg123) могли еще и громкость крутить (или что имелось в виду под микшировать? Кроссфейды?)

Ваша оценка: Нет
11
pomodor

Я далек от музыки, может термины не совсем корректно использовал. Микшировать — от англ. to mix (смешивать). Это когда есть несколько дорожек и их нужно совместить определенным образом и получить итоговую композицию.

За наводку на sox спасибо! Кажется, именно то, что нужно. Пример из фака:

For example, if I have three wav files, how do I mix them so that f1.wav starts immediately, f2.wav comes in 4 seconds later, f3.wav comes in after a further 4 seconds?

sox -M f2.wav f3.wav f1.wav out.wav delay 4 4 8 8 remix 1,3,5 2,4,6

Остается написать скрипт, который будет брать тизеры с Либератума, получать из них аудиофайлы с помощью MaryTTS, а sox запилит всё в один итоговый файл, который можно будет сразу же опубликовать.

Ваша оценка: Нет
8
dk

Ну просто если говорить за музыку (или радиоспектакль там допустим, вобщем сложная композиция из многих дорожек), то микширование также может включать еще много чего (например обработку отдельных дорожек, обработку групп, sendы, автоматизацию итд, итп), то пока (к моему величайшему сожалению) консольных тулз под это нет (да и не представляю, реально ли такое в консоли). А вот вышеописанная задача — это (по хорошему) скорее просто монтаж. Вобщем термин-наци срач :)

Ваша оценка: Нет
Отправить комментарий
КАПЧА
Вы человек? Подсказка: зарегистрируйтесь, чтобы этот вопрос больше никогда не возникал. Кстати, анонимные ссылки запрещены.
CAPTCHA на основе изображений
Enter the characters shown in the image.
Linux I класса
Linux II класса
Linux III класса
Счетчики
  • Самый популярный сайт о Linux и Windows 10
О Либератуме

Liberatum — это новости мира дистрибутивов Linux, обзоры, сборки, блоги, а также лучший сайт об Ubuntu*.