Перейти к основному содержанию

Создать WAV файл из текста в Ubuntu

Linux

Понадобилось мне как-то создать WAV файл из текстового файла в Ubuntu. Это было нужно для проигрывания сообщения в Asterisk для абонента. Сразу скажу, всё то же самое прекрасно работает в WSL 2 под Windows:

Windows Subsystem for Linux 2

Я работаю в Windows, в качестве дистрибутива у меня подсистема Ubuntu. Работаю под рутом.

Для преобразования текста в аудиофайл нам понадобится пакет festival, для поддержки русского языка дополнительно установим festvox-ru:

apt-get install festival festvox-ru

linux

Создаю текстовый файл C:\wav\test.txt с текстом, который нужно преобразовать в WAV.

linux

Содержимое файла test.txt:

linux

В подсистеме Linux он в /mnt/c/wav/test.txt.

linux

Выполняем:

cat /mnt/c/wav/test.txt | /usr/bin/text2wave -f 8000 -eval '(voice_msu_ru_nsh_clunits)' > /mnt/c/wav/test.wav

Немного о параметрах:

  • -eval '(voice_msu_ru_nsh_clunits)'
    Принудительно включаем поддержку русского языка из пакета festvox-ru.
  • -f 8000
    Выходная частота. Для asterisk следует устанавливать именно 8000.

Получаем нужный нам файл test.wav:

linux

    Теги

     

    Похожие материалы

    Putty — SOCKS5 прокси через SSH-туннель

    Однажды один из IP адресов на работе попал в SORBS SPAM. IP адрес можно выкинуть из спам листа, если зайти на сайт sorbs.net именно с этого IP адреса. Но у меня на компе другой внешний IP адрес, а на почтовике с нужным IP стоит linux и нет возможности запустить браузер. Сделаем с помощью putty SSH туннель. 

    Теги

    Windows Subsystem for Linux 2

    Windows Subsystem for Linux 2 (WSL 2) — это вторая версия подсистемы Windows для Linux. Новая архитектура WSL 2 обеспечивает иной способ взаимодействия дистрибутивов Linux с Windows. WSL 2 использует технологию виртуализации и ядро Linux для реализации новых возможностей.

    Теги