Kirjoittaja Aihe: Ubuntu puhumaan suomea  (Luettu 51017 kertaa)

Jiku

  • Käyttäjä
  • Viestejä: 248
    • Profiili
Ubuntu puhumaan suomea
« : 22.03.07 - klo:17.09 »
HUOM! Tämä on keskustelu festvox-suopuheen asentamiseen liittyvistä asioista.
Varsinainen ohje jolla Ubuntu saadaan tuottamaan puhetta suomeksi löytyy
täältä!


Wiki: festvox-suopuhe: http://wiki.ubuntu-fi.org/Wiki/festvox-suopuhe

edit2: Poistin ohjeen tästä kun ohje ei ollut ajantasalla enää enkä jaksanut päivittää. Ajantasainen ohje wikissä.
« Viimeksi muokattu: 21.05.08 - klo:13.36 kirjoittanut Timo Jyrinki »
Puoliksi suunniteltu on hyvin tehty

Jiku

  • Käyttäjä
  • Viestejä: 248
    • Profiili
sano skripti
« Vastaus #1 : 22.03.07 - klo:17.21 »
Putetaan tässä vielä tuo sano -skriptin sisältö, kun eihän kukaan halua ladata sikaa säkissä..

Koodia: [Valitse]
echo $* > /tmp/ttv && iconv -f UTF-8 -t ISO8859-1 /tmp/ttv > /tmp/ttv2 &&festival --tts /tmp/ttv2 >/dev/null
jossa
echo $* > /tmp/ttv  #tallennetaan komentoriviltä annetut parametrit tiedostoon
&& #odotetaan että edellinen komento on suoritettu
iconv -f UTF-8 -t ISO8859-1 /tmp/ttv > /tmp/ttv2  #Festival haluaa saada ISO8859-1 tiedoston. oleellista skandien kannalta. muutetaan tiedosto sellaiseksi.
&& #odotetaan että edellinen komento on suoritettu
festival --tts /tmp/ttv2 >/dev/null #puhutaan ääneen annettu teksti ja heitetään tuloste virheilmoituksia lukuunottamatta bittien taivaaseen.

#virheilmoituksista tulee näytölle tekstiä ja en keksinyt miten sen saa pois..

Puoliksi suunniteltu on hyvin tehty

Melmacian

  • Käyttäjä
  • Viestejä: 868
  • Ubuntu Hardy
    • Profiili
Vs: Ubuntu puhumaan suomea
« Vastaus #2 : 01.04.07 - klo:11.15 »
Hehe, tämäpä on hauska ja yllättävän toimiva.

Kätevämpää on muuten laittaa scripti puhuman suoraan leikepöydän sisältö. Tämä onnistuu helposti KDE:ssä dcop:n avulla.
/bin/sano
Koodia: [Valitse]
#!/bin/bash
if [ -z "$1" ] ; then
dcop klipper klipper  getClipboardHistoryItem 0 > /tmp/ttv && iconv -f UTF-8 -t ISO8859-1 /tmp/ttv > /tmp/ttv2 &&festival --tts /tmp/ttv2 >/dev/null   
else
echo $* > /tmp/ttv && iconv -f UTF-8 -t ISO8859-1 /tmp/ttv > /tmp/ttv2 &&festival --tts /tmp/ttv2 >/dev/null   
fi

exit 0


Hommaa vielä voisi helpottaa tekemällä tuolle pikanäppäin yhdistelmän.
« Viimeksi muokattu: 01.04.07 - klo:12.00 kirjoittanut Epeli »

Minna S

  • Käyttäjä
  • Viestejä: 1053
    • Profiili
Vs: Ubuntu puhumaan suomea
« Vastaus #3 : 01.04.07 - klo:16.36 »
Hauska ohje :D

Linux user # 406601

mockduck

  • Käyttäjä
  • Viestejä: 17
    • Profiili
Vs: Ubuntu puhumaan suomea
« Vastaus #4 : 01.04.07 - klo:17.17 »
mulle tulee virheilmoitus

Koodia: [Valitse]
Linux: can't open /dev/dsp
SIOD ERROR: damaged env : #<UNKNOWN 12 0xb71b17a8>

Minna S

  • Käyttäjä
  • Viestejä: 1053
    • Profiili
Vs: Ubuntu puhumaan suomea
« Vastaus #5 : 01.04.07 - klo:21.12 »
Niin miulekkii, mutta silti toimii.

#virheilmoituksista tulee näytölle tekstiä ja en keksinyt miten sen saa pois..

Linux user # 406601

vociyn

  • Käyttäjä
  • Viestejä: 7
    • Profiili
Vs: Ubuntu puhumaan suomea
« Vastaus #6 : 12.04.07 - klo:11.47 »
Samat virheilmoitukset tulee minullakin.

gabriel

  • Käyttäjä
  • Viestejä: 99
    • Profiili
Vs: Ubuntu puhumaan suomea
« Vastaus #7 : 03.05.07 - klo:00.09 »
tällaian tuli heti ensimmäisen komennon jälkeen...

Koodia: [Valitse]
tauno@tauno-laptop:~$ sudo apt-get install festvox-suopuhe-common festvox-suopuhe-lj festvox-suopuhe-mv libestools1.2 festival festlex-poslex
Password:
Luetaan pakettiluetteloita... Valmis
Muodostetaan riippuvuussuhteiden puu... Valmis
E: Pakettia festvox-suopuhe-common ei löytynyt

"Pakettia festvox-suopuhe-common ei löytynyt"?? :'(

Aum

  • Käyttäjä
  • Viestejä: 16
    • Profiili
Vs: Ubuntu puhumaan suomea
« Vastaus #8 : 06.05.07 - klo:21.27 »
Ubuntun saa aika helposti tuottamaan suomenkielistä puhetta äänikortin kautta.

Sain noiden ohjeiden homman pelittämään, kiitokset jikulle.
Kätevä fala text reader for gnome toimii loistavasti, mutta ääkköset tulee ulos muodossa "viiva tuntematon merkki". Jos taas käytän "sano" -skriptiä, ääkköset tulee aivan oikein. Saako festivalin jotenkin ymmärtämään UTF-8 skandeja ohjelman tasolla, siten että esim fala ja muut festivalia hyödyntävät ohjelmat osaisivat käsitellä ääkkösiä oikein?
« Viimeksi muokattu: 06.05.07 - klo:21.43 kirjoittanut Aum »

Jiku

  • Käyttäjä
  • Viestejä: 248
    • Profiili
Vs: Ubuntu puhumaan suomea [wiki]
« Vastaus #9 : 12.10.07 - klo:12.57 »
Tuli muuten eteen ongelma, johon en keksinyt helppoa ratkaisua.
Pitäisi saada festival kaksikieliseksi niin että skripti sanosv puhuisi ruotsia ja sanofi suomea.

Miten tämä pitäisi ratkaista?
Mietin että saisiko festivalista ajettua kahta eri prosessia, joista toinen olisi suomenkielisillä äänteillä ja toinen ruotsinkielisillä?

Alkuun kokeilin että tuottaisin ruotsinkielisen puheen suomenkielen äänteillä kirjoittamalla sanat niin kuin ne suomeksi lausutaa. Lopputulos kuulosti lähinnä säälittävältä.

Kaikki pienetkin ideat olisi nyt tervetulleita!
Puoliksi suunniteltu on hyvin tehty

MikkoJP

  • Käyttäjä
  • Viestejä: 1148
  • iBook 600 MHz + Debian 4.0
    • Profiili
Vs: Ubuntu puhumaan suomea
« Vastaus #10 : 24.10.07 - klo:15.17 »

Kätevämpää on muuten laittaa scripti puhuman suoraan leikepöydän sisältö. 

Tämä on hiukan offtopic, mutta kuitenkin: käännöksiä korjaillessani olen ihmetellyt tätä puhua-verbin käyttämistä. Eikös lukea sopisi paremmin?


Otto

  • Käyttäjä
  • Viestejä: 32
    • Profiili
    • FSFE.org
Vs: Ubuntu puhumaan suomea
« Vastaus #11 : 10.12.07 - klo:13.34 »
mulle tulee virheilmoitus

Koodia: [Valitse]
Linux: can't open /dev/dsp
SIOD ERROR: damaged env : #<UNKNOWN 12 0xb71b17a8>

Niin minullekin aluksi. Tosin kun kokeilin myöhemmin taas tuota, niin alkoi ääni kuulua virheilmoituksesta huolimatta. Ilmeisesti koneen uudelleenkäynnistyksellä on vaikutusta? Ei riitä että käynnistää festivalin uudestaan.

otto@HPG5050EO:~/Ubuntu/festival$ sanon tämän pitäisi kuulemma kuulostaa naiselta
SIOD ERROR: damaged env : #<UNKNOWN 12 0xb71e03d8>
otto@HPG5050EO:~/Ubuntu/festival$ sano ja tämän mieheltä
SIOD ERROR: damaged env : #<UNKNOWN 12 0xb71e3c48>
otto@HPG5050EO:~/Ubuntu/festival$ sanoe well, now i can speak english also
SIOD ERROR: unbound variable : voice_ked_diphone
festival: fatal error exiting.
otto@HPG5050EO:~/Ubuntu/festival$

..tosin englanninkielinen ääni ei toimi vieläkään..

Jiku

  • Käyttäjä
  • Viestejä: 248
    • Profiili
Vs: Ubuntu puhumaan suomea
« Vastaus #12 : 23.02.08 - klo:20.36 »

otto@HPG5050EO:~/Ubuntu/festival$ sanoe well, now i can speak english also
SIOD ERROR: unbound variable : voice_ked_diphone
festival: fatal error exiting.
otto@HPG5050EO:~/Ubuntu/festival$

..tosin englanninkielinen ääni ei toimi vieläkään..


Noissa konffitiedostoissa ja skripteissä näkyi olevan enemmän ja vähemmän virheitä.
Yritin korjata ne nyt. Toivottavasti en tehnyt sitten uusia virheitä, mutta
muijan koneella testasin niin toimi.
Puoliksi suunniteltu on hyvin tehty

Petri Y

  • Käyttäjä
  • Viestejä: 186
    • Profiili
Vs: Ubuntu puhumaan suomea [wiki]
« Vastaus #13 : 24.02.08 - klo:23.08 »
 :D

kyllä pitää olla kiva juttu...

kiitos heille joille kiitos kuuluu.

- kaunis päivä asentaa ubuntu -

Petri Y

  • Käyttäjä
  • Viestejä: 186
    • Profiili
Vs: Ubuntu puhumaan suomea [wiki]
« Vastaus #14 : 24.02.08 - klo:23.16 »
Onko kellään tietoa voiko tätä käyttää esim tietokoneen käynnistyessä
esim. ilmoittaa paljonko kello on ja päivämäärään?
ja toivottaa hyvää päivää:)

ja voiko tätä jotenkin kytkeä koko tietokoneen käyttäytymiseen toimintoja tehdessä.

esim. tietyn ohjelman avaaminen ilmoittaa tietyn asian?
- kaunis päivä asentaa ubuntu -

Jiku

  • Käyttäjä
  • Viestejä: 248
    • Profiili
Vs: Ubuntu puhumaan suomea [wiki]
« Vastaus #15 : 25.02.08 - klo:15.32 »
tällaisen pikaisesti kehittelin:


terve.bash
Koodia: [Valitse]
#!/bin/bash
kayttaja=`whoami`
viikonpaiva=`date +%A`
kuukausi=`date +%Bta`
pv=`date +%d`
tunti=`date +%k`
minuutti=`date +%M`

vrkaika="yötä"
if [ $tunti -ge 5 ]
then vrkaika="huomenta"
fi
if [ $tunti -ge 11 ]
then vrkaika="päivää"
fi
if [ $tunti -ge 17 ]
then vrkaika="iltaa"
fi
if [ $tunti -ge 22 ]
then vrkaika="yötä"
fi

if [ $pv = "1" ]
then pv="ensimmäinen"
elif [ $pv = "2" ]
then pv="toinen"
elif [ $pv = "3" ]
then pv="kolmas"
elif [ $pv = "4" ]
then pv="neljäs"
elif [ $pv = "5" ]
then pv="viides"
elif [ $pv = "6" ]
then pv="kuudes"
elif [ $pv = "7" ]
then pv="seitsemäs"
elif [ $pv = "8" ]
then pv="kahdeksas"
elif [ $pv = "9" ]
then pv="yhdeksäs"
elif [ $pv = "10" ]
then pv="kymmenes"
elif [ $pv = "11" ]
then pv="yhdestoista"
elif [ $pv = "12" ]
then pv="kahdestoista"
elif [ $pv = "13" ]
then pv="kolmastoista"
elif [ $pv = "14" ]
then pv="neljästoista"
elif [ $pv = "15" ]
then pv="viidestoista"
elif [ $pv = "16" ]
then pv="kuudestoista"
elif [ $pv = "17" ]
then pv="seitsemästoista"
elif [ $pv = "18" ]
then pv="kahdeksastoista"
elif [ $pv = "19" ]
then pv="yhdeksästoista"
elif [ $pv = "20" ]
then pv="kahdeskymmenes"
elif [ $pv = "21" ]
then pv="kahdeskymmenesensimmäinen"
elif [ $pv = "22" ]
then pv="kahdeskymmenestoinen"
elif [ $pv = "23" ]
then pv="kahdeskymmeneskolmas"
elif [ $pv = "24" ]
then pv="kahdeskymmenesneljäs"
elif [ $pv = "25" ]
then pv="kahdeskymmenesviides"
elif [ $pv = "26" ]
then pv="kahdeskymmeneskuudes"
elif [ $pv = "27" ]
then pv="kahdeskymmenesseitsemäs"
elif [ $pv = "28" ]
then pv="kahdeskymmeneskahdeksas"
elif [ $pv = "29" ]
then pv="kahdeskymmenesyhdeksäs"
elif [ $pv = "30" ]
then pv="kolmaskymmenes"
elif [ $pv = "31" ]
then pv="kolmaskymmenesensimmäinen"

fi

lause="hyvää "$vrkaika" "$kayttaja". tänään on "$viikonpaiva" "$pv" päivä "$kuukausi". kello on "$tunti" "$minuutti

echo $lause>/tmp/ttv
iconv -f UTF-8 -t ISO8859-1 /tmp/ttv > /tmp/ttv2
festival --tts /tmp/ttv2 >/dev/null

se ajetaan komentamalla
Koodia: [Valitse]
bash terve.bash
ja se toivottelee tyyliin:
hyvää päivää jani. tänään on maanantai kahdeskymmenesviides päivä helmikuuta. kello on 15 28

joku muu osaa varmaan kertoa miten sen saa koneen käynnistyessä automaattisesti suoritettua, koska itse en sitä osaa neuvoa. se pitäisi siis sellaisessa vaiheessa suorittaa jossa tuo festival on jo käynnissä.

ja ladata voi tästä:
http://personal.inet.fi/koti/jiku/doc-sv/terve.bash

edit:
ja saahan festivalin kertomaan kun joku ohjelma avataan/suljetaan kun tekee työpöydälle käynnistimen jonka komento on:
Koodia: [Valitse]
sano firefox käynnistyy & firefox && sano firefox suljettu
« Viimeksi muokattu: 25.02.08 - klo:15.59 kirjoittanut Jiku »
Puoliksi suunniteltu on hyvin tehty

Tuplanolla

  • Käyttäjä
  • Viestejä: 1420
  • Reg. Linux user #423604
    • Profiili
Vs: Ubuntu puhumaan suomea [wiki]
« Vastaus #16 : 25.02.08 - klo:15.40 »
ja se toivottelee tyyliin:
hyvää päivää jani. tänään on maanantai kahdeskymmenesviides päivä helmikuuta. kello on 15 28

joku muu osaa varmaan kertoa miten sen saa koneen käynnistyessä automaattisesti suoritettua, koska itse en sitä osaa neuvoa. se pitäisi siis sellaisessa vaiheessa suorittaa jossa tuo festival on jo käynnissä.
Kas, osaa oikealla nimellä tervehtiä vaikkei käyttäjänimi olekaan jani ;D

Varmaan Gnomen istunnot -> autom. käynnistyvät voisi olla oikea.
Lisää [ratkaistu] ketjun ensimmäisen viestin otsikkoon, kun ongelma ratkeaa!

Risto H. Kurppa

  • Käyttäjä
  • Viestejä: 3024
  • Useita Kubuntuja ajossa.
    • Profiili
    • http://risto.kurppa.fi
Vs: Ubuntu puhumaan suomea [wiki]
« Vastaus #17 : 15.03.08 - klo:19.23 »
Tiivistän tähän lähinnä itselleni nuo wikissä mainitut komennot testausta varten (copypaste :)

sudo apt-get install festvox-suopuhe-common festvox-suopuhe-lj festvox-suopuhe-mv libestools1.2 festival festlex-poslex
wget http://personal.inet.fi/koti/jiku/doc-sv/festival.scm
sudo rm /etc/festival.scm
sudo cp festival.scm /etc/festival.scm
sudo /etc/init.d/festival restart
wget http://personal.inet.fi/koti/jiku/doc-sv/sano
chmod a+x sano
sudo cp sano /bin/

Gutsyllä nämä ajelin ja mitään ei kuulu - miten lähteä debuggaamaan?

r
UUSI UBUNTUN KÄYTTÄJÄ: SÄÄSTÄ AIKAASI LUKEMALLA  -> TÄMÄ <-

Jiku

  • Käyttäjä
  • Viestejä: 248
    • Profiili
Vs: Ubuntu puhumaan suomea [wiki]
« Vastaus #18 : 15.03.08 - klo:19.33 »
joo toi uusi skripti piilottaa virheilmoitukset kokonaan. ei tullut mieleen että ongelmatilanteessa se on aika huono homma..

Koodia: [Valitse]
echo päivää > /tmp/ttv && iconv -f UTF-8 -t ISO8859-1 /tmp/ttv > /tmp/ttv2 &&festival --tts /tmp/ttv2sanoo mulla puheen mutta ilmoittaa virheen:
SIOD ERROR: damaged env : #<UNKNOWN 12 0xb7137c18>

tuleeko sulla tuon virheen lisäksi jotain muuta?
muijan koneella tuli vähän väliä ilmoituksia että äänikorttia ei voitu avata. tiedä sitten minkä takia kun ei sitä mikään ohjelma varannutkaan ollut..
Puoliksi suunniteltu on hyvin tehty

Risto H. Kurppa

  • Käyttäjä
  • Viestejä: 3024
  • Useita Kubuntuja ajossa.
    • Profiili
    • http://risto.kurppa.fi
Vs: Ubuntu puhumaan suomea [wiki]
« Vastaus #19 : 15.03.08 - klo:19.37 »
Lainaus
rhk@rubert:~$ echo päivää > /tmp/ttv && iconv -f UTF-8 -t ISO8859-1 /tmp/ttv > /tmp/ttv2 &&festival --tts /tmp/ttv2
Linux: can't open /dev/dsp
SIOD ERROR: damaged env : #<UNKNOWN 12 0xb71bed18>

KDE:lla mennään, siinä on jotain häikkää käsittääkseni joskus noiden äänilaitteiden varaamisten kanssa joten voi liittyä siihen. Muuten äänet kyllä toimii ok.

r
UUSI UBUNTUN KÄYTTÄJÄ: SÄÄSTÄ AIKAASI LUKEMALLA  -> TÄMÄ <-