- xmppvip http://www.xmppvip.pun.pl/index.php - News! http://www.xmppvip.pun.pl/viewforum.php?id=38 - Linux: Festival, czyli syntezator mowy czytający po polsku http://www.xmppvip.pun.pl/viewtopic.php?id=35 |
scriptus - 2010-11-23 22:16:41 |
Festival to syntezator znany mowy dostępny dla Linuksa. Można go znaleźć w repozytorium, a instalacja sprowadza się do wydania jednego prostego polecenia.
Kod:sudo apt-get install festival Można by było na tym zamknąć wpis gdyby nie fakt, że program zainstalowany w ten sposób nie działa zbyt dobrze w naszym języku (domyślnie obsługuje oczywiście angielski). Zbyt dobrze to mało powiedziane, ale można to zmienić. Poniżej postaram się pokazać, jak to zrobić krok po kroku. Kod:wget http://dl.dropbox.com/u/2552069/blog/festival_polish_voice.tgz po ściągnięciu rozpakowujemy plik: Kod:tar -xvzf festival_polish_voice.tgz następnie tworzymy katalog: Kod:sudo mkdir -p /usr/share/festival/lib/voices/polish/ i przerzucamy do niego rozpakowaną zawartość: Kod:sudo mv cstr_pl_em_diphone /usr/share/festival/voices/polish/ Pozostaje nam konfiguracja, aby móc używać rodzimego języka. Edytujemy więc plik: Kod:sudo gedit /usr/share/festival/languages.scm i dopisujemy zgodnie z zastaną składnią: Kod:(define (language_polish) "(language_polish) Set up language parameters for Polish." (set! male1 voice_cstr_pl_em_diphone) (male1) (Parameter.set 'Language 'polish) ) odnajdujemy w tym samym pliku następnie sekcję sekcji select_language i dodajemy tam: ((equal? language 'polish) (language_polish)) Kolejnym krokiem jest nadanie odpowiednich praw: Kod:sudo chmod -R 755 /usr/share/festival/voices/polish/ i powinno już działać. Jak korzystać z programu? Kod:festival --language polish przywita nas znak zachęty w postaci: Kod:> Gdzie możemy zacząć wpisywać tekst do czytania w postaci: Kod:> (SayText " czesc co tam slychac") Dużo wygodniejszą jednak formą używania programu jest postać: Kod:echo "czesc co słychac ?" | festival --tts --language polish gdzie polskie litery będą w postaci: ą = o~ ć = c~ ę = e~ ł = l/ ń = n~ ó = u ś = s~ ź = z~ ż = z* lub w postaci: Kod:echo "działają polskie literki" | iconv -f UTF-8 -t ISO_8859-2 | festival --tts --language polish gdzie konwersja polskich liter nastąpi automatycznie. |