Sveiki visems.
Dirbu regos Ūgdymo centre. Pas mus moka akluosius bei silpnaregius kompiuterinių raštingumų su Windows su kažkokių ten Džoisiu programą, kurio baisus lietuviškas mehaninis balsas kaip iš kažkokio vamzdžio. tačiau reikalas ne apie džoiso. Pasinaršau biški įnternete ir aptikau bent pora proektu susijusių su linux pritaikimų silpnaregems: tai Vinuxhttp://vinuxproject.org/, remantis Ubuntu bei rusiškas http://homeros.altlinux.org/**Alt linux Homeros friend **
Tad man čia kilo klausimas dėl visu tų programų (screan readers) Orca, emacs speak ir kitų. Ar je moka skaititi teksta lietuviškai? ir apskritai kokia yra perspektiva?
Šaip tai turiu ideja sukurti lietuvišką OS, analogiška sakisim Homeros friend. Ną čia aišku kokia įmti linux versiją pagrindų laisvas pasirinkimas. Kokios jusų mintis bei gal kas noretu prisijungti?
Daugelis tų programų, tokių kaip Orca, pačios skaityti nemoka, jos naudoja kalbos sintezavimo variklius. Štai Orca'os puslapyje pateiktas sąrašas, tų variklių, su kuriais ji moka dirbti:
Kiek žinau, pati populiariausia ir didelėje daugumoje distribucijų, būna įdiegta pagal nutylėjimą - eSpeak, bet lietuvių kalbos palaikymo ji neturi (žiūrėti palaikomų kalbų sąrašą). eSpeak programą galima tobulinti ir pasidaryti bet kokios kalbos palaikymą:
Sirex nuorodoj rašo, kad nebūtinai reik būt kalbos specialistu, kad galėtum tobulinti espeak kalbas.
O tai galim kaip nors patys espeak sistemai lietuviškumą pakurti? Gal tarkim lotynų, latvių ar lenkų kalbų pagrindu pakaktų kai ką paredaguoti?
Ką lieča pačio distributivo, tai butu visai gerai. Turiu omeni specializuoto, pritaikito budent silpnaregiams kaip Homeros Friend. tačiau jei ir patobulint espeack ar kitą variklį, įdegus lietuvių kalbos palaikymą irgi manau sektinas tikslas.
Malonu kad kažkas susidomėjo mano pasiulimų.
Šaip tai, čia gerai butu pasirinkti kokį distribuciją pagringų ir nuo jos jau šokineti
Jei kas supranta rusų tai yra įdomus straipsnis http://homeros.altlinux.org/materials/rehacomp2008.php kaip buvo kuriamas Homeros Friend linux. jei kam sukumai kila - galiu išverst
Mbrola palaiko lietuvių kalbą (tuo pasirūpino Aleksas Stanislovas Girdenis ir Pijus Kasparaitis, ačiū jiems). žr. http://www.tcts.fpms.ac.be/synthesis/mb ... pybin.html
Naudojant Mbrola, buvo sukurta lietuviška balso sintezavimo sistema „Aistis“ (Windows aplinkai).
O Mbrola galima naudoti su Espeak. Gal kas apsiims sutvarkyti Espeak lietuvių kalbos palaikymą Mbrola pagrindu?
Nukopijuoti į namų katalogą reikiamus failus: espeak-1.46.02-source.zip archyve esantį espeak-data katalogą nukopijuoti į savo namų katalogą. espeak-1.46.02-source.zip archyve esantį dictsource katalogą nukopijuoti į naująjį /home/(vardenis)/espeak-data katalogą (sukuriant /home/(vardenis)/espeak-data/dictsource). espeakedit-1.46.02.zip archyve esantį phsource katalogą nukopijuoti į /home/(vardenis)/espeak-data katalogą (sukuriant /home/(vardenis)/espeak-data/phsource).
Iš lt1.zip ir lt2.zip archyvų nukopijuoti lt1 ir lt2 failus į /home/(vardenis)/espeak-data/mbrola/ katalogą.
Sukurti tris lietuvių kalbos balsus (vienas paprastas ir du mbrola): ./espeak-data/voices/lt, kurio turinys pvz., gali būti:
name lithuanian
language lt
gender male
./espeak-data/voices/mb/mb-lt1, kurio turinys:
name lithuanian-mbrola-1
language lt 7
gender male
pitch 82 117
mbrola lt1 lt1_phtrans
./espeak-data/voices/mb/mb-lt2, kurio turinys:
name lithuanian-mbrola-2
language lt 7
gender male
pitch 82 117
mbrola lt2 lt2_phtrans
Įtraukti lietuvių kalbos fonemų lentelę sukuriant ./espeak-data/phsource/ph_lithuanian failą, kuris gali būti tuščias bet mums tikrai trūks E, tad šiame faile bent jau turėtų būti:
phoneme E
vowel starttype #e endtype #e
length 180
IF nextPh(isPause) THEN
FMT(vowel/ee_1)
ENDIF
FMT(vowel/e_mid)
endphoneme
./espeak-data/phsource/phonemes faile įterpti eilutę (tarkim tiesiai po latvių kalbos eilutės):
phonemetable lt base
include ph_lithuanian
Sukurti tuščius failus (bent tinka pradžiai ir tušti): ./espeak-data/phsource/mbrola/lt1 ./espeak-data/phsource/mbrola/lt2
Sukurti ./espeak-data/dictsource/lt_rules - raidžių siejimo su garsais taisyklės (prisegu labai paprastutį variantą, kurį tikrai reikia tobulinti). ./espeak-data/dictsource/lt_list - išimčių sąrašas; pvz., gali būti nurodyta kaip skaityti skaičius, abėcėlės raides.
Paleisti espeakedit, eiti į meniu Voice > Select voice ir pasirinkti pvz., mb/mb-lt1. Eiti į meniu Compile ir nuosekliai viską perkompiliuoti: phoneme data, dictionary "lt"; pasirinkus compile mbrola phonemes list ieškoti galima ./espeak-data/mbrola/lt1
Bandykit nuspaudę kortelę Text , įrašyti tekstą, nuspausti Translate ir po to Speak (pirmą kartą tai padarius, paklaus, kur reikia saugoti laikinąjį .wav failą). Tuomet kantriai žaiskite ir taisykite failus:
lt_rules, lt_list, ph_lithuanian.
Šių failų licencijoje nurodyta, kad duomenų bazė, gali būti naudojama tik su embrola programa, nebent duomenų bazės autoriai duos leidimą, duomenų bazę naudoti kitur.
Būtų gerai, tas duomenų bazes supakuoti, kad įdiegti būtų galima iš repozitorijos. Kol kas parašiau duomenų bazės autoriams, ar jie sutinka, kad duomenų bazė būtų naudojama ir espeak programai, jei sutiks, tada reikės paieškoti, kas tai supakuos.
Klausimėlis šioks toks kolegoms, dėl "softo" neregiams. Kokį unix/linux analogą M$ 'doz' JAWS'ui, galima "sukomplektuoti", sukonfigūruoti, kad pagal funkcionalumą ir funkcionavimą galėtų prilygti, daugmaž prilygti minėtam 'doz'iniam variantui?
Principe kopinau latvių kalbą ir bandžiau keisti parametrus. Bėda yra su kirčiavimu, labai dabar latviškai viskas skamba. Manyčiau espeak yra gana lankstus ir galima bandyti gerinti nenaudojant latvių įdirbio, bet peršant viską iš esmės.
Kaip ir dauguma tobulinti epspeak laiko skirti daug negaliu, bet kviečiu visus prisidėti kam reikia, kad Ubuntu "šnekėtų" lietuviškai.
Jei susidursite su klaida g++: error: /usr/lib/x86_64-linux-gnu/libportaudio.so.2: Toks failas ar aplankas neegzistuoja,
tada įvykdykite
sed "s/\#AUDIO = portaudio/AUDIO = portaudio/" -i ./src/Makefile
sed "s/AUDIO = portaudio0/\#AUDIO = portaudio0/" -i ./src/Makefile
sed "s/AUDIO = portaudio2/\#AUDIO = portaudio2/" -i ./src/Makefile
make clean
make
Jei kompiliavimo pabaigoje matysite klaidų seriją su eilutėmis Bad phoneme ar Wrong version of espeak-data, tuomet reikia pašalinti prieš tai įdiegtą espeak programą ir jos bibliotekas.
Jei matysie kažką panašaus į tai:
Unknown phoneme table: 'en'
Compiled phonemes: 1 errors. See file: 'phsource/error_log'. Compiled 67 dictionaries
touch dictsource/ak_extra
cd dictsource && ../src/espeak --compile=ak && cd ..
../src/espeak: error while loading shared libraries: libespeak.so.1: cannot open shared object file: No such file or directory
make: [espeak-data/ak_dict] Error 127
tai reikia root teisėmis nukopijuoti sukompiliuotas bibliotekas ./src/libespeak.so į bibliotekų aplanką (/usr/lib/i386-linux-gnu/, /usr/lib/x86_64-linux-gnu/ , /usr/lib arba /usr/lib64/), o po to dar kartą įvykdyti make**.
Jei susidursite su klaida g++: error: /usr/lib/x86_64-linux-gnu/libportaudio.so.2: Toks failas ar aplankas neegzistuoja,
tada įvykdykite
sed "s/\#AUDIO = portaudio/AUDIO = portaudio/" -i ./src/Makefile
sed "s/AUDIO = portaudio0/\#AUDIO = portaudio0/" -i ./src/Makefile
sed "s/AUDIO = portaudio2/\#AUDIO = portaudio2/" -i ./src/Makefile
make clean
make
Embar,
atkeičiau src/Makefile pakeitimus dabar turėtų tau nebemesti klaidos.
Jei kažam kris "/usr/bin/ld: cannot find -lportaudio" pabandykit užkomentuoti portaudio ir atkomentuoti portaudio2.
openSUSE naudotojams visai nebūtina rankiniu būdu kompiliuoti ir siųstis failų. Naudodamas OBS sistemą parengiau RPM paketus (espeak rpm kūrimo failai čia). Paketų diegimo tvarka ir trumpas lietuviško skaitymo taisyklių redagavimo aprašas pateiktas opensuse.lt svetainėje.
Manau jau pakankamai padoriai galima klausytis lietuviško teksto skaitymo, bet dar labai daug reikia tobulinimo. Būtų gerai sukurti kokį viki tipo puslapį, kuriame būtų galima pasižymėti reikiamus atlikti dalykus, rastas klaidas, pateikti instrukcijas norintiems prisidėti...
@embar rašė:
Būtų gerai sukurti kokį viki tipo puslapį, kuriame būtų galima pasižymėti reikiamus atlikti dalykus, rastas klaidas, pateikti instrukcijas norintiems prisidėti...
Sveiki visems.
Dirbu regos Ūgdymo centre. Pas mus moka akluosius bei silpnaregius kompiuterinių raštingumų su Windows su kažkokių ten Džoisiu programą, kurio baisus lietuviškas mehaninis balsas kaip iš kažkokio vamzdžio. tačiau reikalas ne apie džoiso. Pasinaršau biški įnternete ir aptikau bent pora proektu susijusių su linux pritaikimų silpnaregems: tai Vinux http://vinuxproject.org/, remantis Ubuntu bei rusiškas http://homeros.altlinux.org/**Alt linux Homeros friend **
Tad man čia kilo klausimas dėl visu tų programų (screan readers) Orca, emacs speak ir kitų. Ar je moka skaititi teksta lietuviškai? ir apskritai kokia yra perspektiva?
Šaip tai turiu ideja sukurti lietuvišką OS, analogiška sakisim Homeros friend. Ną čia aišku kokia įmti linux versiją pagrindų laisvas pasirinkimas. Kokios jusų mintis bei gal kas noretu prisijungti?
Daugelis tų programų, tokių kaip Orca, pačios skaityti nemoka, jos naudoja kalbos sintezavimo variklius. Štai Orca'os puslapyje pateiktas sąrašas, tų variklių, su kuriais ji moka dirbti:
http://live.gnome.org/Orca/SpeechSynthesisEngines
Kiek žinau, pati populiariausia ir didelėje daugumoje distribucijų, būna įdiegta pagal nutylėjimą - eSpeak, bet lietuvių kalbos palaikymo ji neturi (žiūrėti palaikomų kalbų sąrašą). eSpeak programą galima tobulinti ir pasidaryti bet kokios kalbos palaikymą:
http://espeak.sourceforge.net/add_language.html
Dar yra tokia programa Festival, kaip suprantu ji yra kur kas kokybiškesnė, nei eSpeak...
Nesupratau, ką tiksliai nori daryti? Ar distribuciją, ar Lietuvių kalbos palaikymą?
Sirex nuorodoj rašo, kad nebūtinai reik būt kalbos specialistu, kad galėtum tobulinti espeak kalbas.
O tai galim kaip nors patys espeak sistemai lietuviškumą pakurti? Gal tarkim lotynų, latvių ar lenkų kalbų pagrindu pakaktų kai ką paredaguoti?
Ką lieča pačio distributivo, tai butu visai gerai. Turiu omeni specializuoto, pritaikito budent silpnaregiams kaip Homeros Friend. tačiau jei ir patobulint espeack ar kitą variklį, įdegus lietuvių kalbos palaikymą irgi manau sektinas tikslas.
Malonu kad kažkas susidomėjo mano pasiulimų.
Šaip tai, čia gerai butu pasirinkti kokį distribuciją pagringų ir nuo jos jau šokineti
Jei kas supranta rusų tai yra įdomus straipsnis http://homeros.altlinux.org/materials/rehacomp2008.php kaip buvo kuriamas Homeros Friend linux. jei kam sukumai kila - galiu išverst
Mbrola palaiko lietuvių kalbą (tuo pasirūpino Aleksas Stanislovas Girdenis ir Pijus Kasparaitis, ačiū jiems). žr. http://www.tcts.fpms.ac.be/synthesis/mb ... pybin.html
Naudojant Mbrola, buvo sukurta lietuviška balso sintezavimo sistema „Aistis“ (Windows aplinkai).
O Mbrola galima naudoti su Espeak. Gal kas apsiims sutvarkyti Espeak lietuvių kalbos palaikymą Mbrola pagrindu?
Paieškojęs radau, kad internete galima išbandyti, kaip skaitomas lietuviškas tekstas: http://www.text-talk.com/lt/kalbos-sinteze.html
Radau, kad Linux sistemoje galima paleisti „Sakrament“ sukurtą sintezatorių, bet parsisiųsti siūlo parsisiųsti tik Windows versiją (http://www.etalink.lt/pradzia/apie-mus/ ... ezatorius/)
Pabandžiau truputį pasižaisti su espeak...
Galite pabandyti ir jūs:
Reikia įsidiegti espeak, espeakedit, mbrola programas/paketus.
Nepaisant to, kad programas galima įdiegti iš deb paketų, vis tiek po to reikės parsisiųsti ir pradinius jų kodus
(dabartinės versijos yra espeak-1.46.02-source.zip espeakedit-1.46.02.zip).
Iš Mbrola svetainės parsisiųsti lt1.zip ir lt2.zip
Nukopijuoti į namų katalogą reikiamus failus:
espeak-1.46.02-source.zip archyve esantį espeak-data katalogą nukopijuoti į savo namų katalogą.
espeak-1.46.02-source.zip archyve esantį dictsource katalogą nukopijuoti į naująjį /home/(vardenis)/espeak-data katalogą (sukuriant /home/(vardenis)/espeak-data/dictsource).
espeakedit-1.46.02.zip archyve esantį phsource katalogą nukopijuoti į /home/(vardenis)/espeak-data katalogą (sukuriant /home/(vardenis)/espeak-data/phsource).
Iš lt1.zip ir lt2.zip archyvų nukopijuoti lt1 ir lt2 failus į /home/(vardenis)/espeak-data/mbrola/ katalogą.
Sukurti tris lietuvių kalbos balsus (vienas paprastas ir du mbrola):
./espeak-data/voices/lt, kurio turinys pvz., gali būti:
./espeak-data/voices/mb/mb-lt1, kurio turinys:
./espeak-data/voices/mb/mb-lt2, kurio turinys:
./espeak-data/phsource/ph_lithuanian failą, kuris gali būti tuščias bet mums tikrai trūks E, tad šiame faile bent jau turėtų būti:
./espeak-data/phsource/phonemes faile įterpti eilutę (tarkim tiesiai po latvių kalbos eilutės):
Sukurti tuščius failus (bent tinka pradžiai ir tušti):
./espeak-data/phsource/mbrola/lt1
./espeak-data/phsource/mbrola/lt2
Sukurti
./espeak-data/dictsource/lt_rules - raidžių siejimo su garsais taisyklės (prisegu labai paprastutį variantą, kurį tikrai reikia tobulinti).
./espeak-data/dictsource/lt_list - išimčių sąrašas; pvz., gali būti nurodyta kaip skaityti skaičius, abėcėlės raides.
Paleisti espeakedit, eiti į meniu Voice > Select voice ir pasirinkti pvz., mb/mb-lt1. Eiti į meniu Compile ir nuosekliai viską perkompiliuoti: phoneme data, dictionary "lt"; pasirinkus compile mbrola phonemes list ieškoti galima ./espeak-data/mbrola/lt1
Bandykit nuspaudę kortelę Text , įrašyti tekstą, nuspausti Translate ir po to Speak (pirmą kartą tai padarius, paklaus, kur reikia saugoti laikinąjį .wav failą). Tuomet kantriai žaiskite ir taisykite failus:
lt_rules, lt_list, ph_lithuanian.
Gal padės šios nuorodos:
espeak dokumentacija
Apie fonetiką
Diphone Databases for Lithuanian Text-to-Speech Synthesis
Gal tarp šio forumo dalyvių yra kokių kalbos specialistų ar net kompiuterinės lingvistikos studentų?
Gal kas nors pataisęs lt_rules, lt_list, ph_lithuanian failiukus čia įkels ir taip pasidalins su tautiečiais?
Šių failų licencijoje nurodyta, kad duomenų bazė, gali būti naudojama tik su embrola programa, nebent duomenų bazės autoriai duos leidimą, duomenų bazę naudoti kitur.
Būtų gerai, tas duomenų bazes supakuoti, kad įdiegti būtų galima iš repozitorijos. Kol kas parašiau duomenų bazės autoriams, ar jie sutinka, kad duomenų bazė būtų naudojama ir espeak programai, jei sutiks, tada reikės paieškoti, kas tai supakuos.
Klausimėlis šioks toks kolegoms, dėl "softo" neregiams. Kokį unix/linux analogą M$ 'doz' JAWS'ui, galima "sukomplektuoti", sukonfigūruoti, kad pagal funkcionalumą ir funkcionavimą galėtų prilygti, daugmaž prilygti minėtam 'doz'iniam variantui?
Kaip ir embar bandžiau ir aš. Tik mano siūlymas geriau bandyti dirbti visiem per githubą tuomet galėtume lengviau nuportinti į pagrindinė espeak kodą.
Šiuo metu aš padariau tik minimalius pakeitimus kurių istoriją galima rasti:
https://github.com/mondhs/espeak
Principe kopinau latvių kalbą ir bandžiau keisti parametrus. Bėda yra su kirčiavimu, labai dabar latviškai viskas skamba. Manyčiau espeak yra gana lankstus ir galima bandyti gerinti nenaudojant latvių įdirbio, bet peršant viską iš esmės.
Kaip ir dauguma tobulinti epspeak laiko skirti daug negaliu, bet kviečiu visus prisidėti kam reikia, kad Ubuntu "šnekėtų" lietuviškai.
Instrukcija, bandantiems naudoti minėtąjį git.
Pastabos:
Jei susidursite su klaida
g++: error: /usr/lib/x86_64-linux-gnu/libportaudio.so.2: Toks failas ar aplankas neegzistuoja,
tada įvykdykite
Jei kompiliavimo pabaigoje matysite klaidų seriją su eilutėmis Bad phoneme ar Wrong version of espeak-data, tuomet reikia pašalinti prieš tai įdiegtą espeak programą ir jos bibliotekas.
Jei matysie kažką panašaus į tai:
Unknown phoneme table: 'en'
Compiled phonemes: 1 errors. See file: 'phsource/error_log'. Compiled 67 dictionaries
touch dictsource/ak_extra
cd dictsource && ../src/espeak --compile=ak && cd ..
../src/espeak: error while loading shared libraries: libespeak.so.1: cannot open shared object file: No such file or directory
make: [espeak-data/ak_dict] Error 127
tai reikia root teisėmis nukopijuoti sukompiliuotas bibliotekas ./src/libespeak.so į bibliotekų aplanką (/usr/lib/i386-linux-gnu/, /usr/lib/x86_64-linux-gnu/ , /usr/lib arba /usr/lib64/), o po to dar kartą įvykdyti make**.
Embar,
atkeičiau src/Makefile pakeitimus dabar turėtų tau nebemesti klaidos.
Jei kažam kris "/usr/bin/ld: cannot find -lportaudio" pabandykit užkomentuoti portaudio ir atkomentuoti portaudio2.
openSUSE naudotojams visai nebūtina rankiniu būdu kompiliuoti ir siųstis failų. Naudodamas OBS sistemą parengiau RPM paketus (espeak rpm kūrimo failai čia). Paketų diegimo tvarka ir trumpas lietuviško skaitymo taisyklių redagavimo aprašas pateiktas opensuse.lt svetainėje.
Manau jau pakankamai padoriai galima klausytis lietuviško teksto skaitymo, bet dar labai daug reikia tobulinimo. Būtų gerai sukurti kokį viki tipo puslapį, kuriame būtų galima pasižymėti reikiamus atlikti dalykus, rastas klaidas, pateikti instrukcijas norintiems prisidėti...
Naudingos nuorodos apie lietuvių kalbą:
http://ualgiman.dtiltas.lt/fonetika.html
http://ualgiman.dtiltas.lt/kirciavimas.html
Labai prašom prisidėti!
Pakūriau vietą wiki page ir sudėjau kai kurias tavo pateiktas nuorodas:
https://github.com/mondhs/espeak/wiki/About
Klaidas ir pasiūlymus galima rašyti vėl ten pat:
https://github.com/mondhs/espeak/issues
Tema perkelta iš https://legacy.ubuntu.lt/forum/viewtopic.php?f=3&t=7439