SíntesiDeVeu

Differences between revisions 151 and 179 (spanning 28 versions)
Revision 151 as of 2009-12-30 10:20:07
Size: 21779
Editor: 135
Comment:
Revision 179 as of 2017-07-13 13:35:51
Size: 15524
Editor: amarti-m
Comment:
Deletions are marked like this. Additions are marked like this.
Line 9: Line 9:
'''Resum:''' Indiquem com instal·lar les [[http://gps-tsc.upc.es/veu/festcat/|veus catalanes]], i com fer-les servir des de la consola per llegir arxius de text i textos de forma interactiva, com fer-les servir amb [[http://www.gnome.org/projects/orca/|Orca]] per llegir la pantalla, i com generar arxius de so. També indiquem algunes millores possibles en les que podeu col·laborar, i com desinstal·lar les veus. '''Resum:''' Indiquem com instal·lar i com desinstal·lar les [[http://gps-tsc.upc.es/veu/festcat/|veus catalanes]], i algunes millores possibles en les que podeu col·laborar. Podeu veure exemples de com fer-les servir a [[/Exemples]].
Line 19: Line 19:
=== Instal·lem festival === === Instal·lem Festival ===
Line 32: Line 32:
 $ echo hello world! | festival --tts  $ echo 'hello world!' | festival --tts
Line 38: Line 38:
==== Amb repositoris (només per a Ubuntu Jaunty 9.04 i Karmic 9.10) ==== ==== Amb repositoris (Només Ubuntu Jaunty 9.04 i Karmic 9.10) ====
Line 67: Line 67:
==== De forma manual (altres versions) ==== ==== De forma manual (alres versions) ====

Nota (Gener 2010): per les altres versions només les veus són al repositori anterior, que es poden fer servir, però cal instal·lar les veus manualment, però per fer servir els repositoris, cal vigilar la versió de Festival necessària (falta completar).
Line 87: Line 89:
3. (opcional) Fem uns enllaços simbòlics, per poder trobar les llibreries, copiant al terminal:

{{{
$ cd /usr/lib/festival/
$ sudo ln -s /usr/share/festival/voices
$ sudo ln -s /usr/share/festival/dicts
$ sudo ln -s /usr/share/festival/upc_catalan
}}}
Line 98: Line 92:
 $ echo hola mon | festival --language catalan --tts  $ echo 'hola mon' | festival --language catalan --tts
Line 102: Line 96:
3b. (Si hem fet 3. no cal fer això) Una alternativa a fer els enllaços simbòlics és cridar cada cop festival amb la ruta, copiant al terminal:

{{{
 $ festival --libdir /usr/share/festival
}}}
Tot i que així no disposarem de totes les opcions, com ara l'Orca i el text2wave.
Line 119: Line 106:
 (set! voice_default 'voice_upc_ca_ona_hts)  (set! catalan-default-voices (list 'upc_ca_ona_hts))
Line 140: Line 127:
Si no tenim cap so i la consola respon amb aquest missatge:
{{{
Linux: can't open /dev/dsp
}}}

Seguirem aquestes instruccions

==== ALSA, recomanat ====
Sortim del Festival amb (exit), i executem:

{{{
printf ";use ALSA\n(Parameter.set 'Audio_Method 'Audio_Command)\n(Parameter.set 'Audio_Command \"aplay -q -c 1 -t raw -f s16 -r \$SR \$FILE\")\n" > ~/.festivalrc
}}}

==== OSD, si sabeu el que feu ====
Cal instal·lar esdplay, obrint un terminal i copiant:

{{{
sudo apt-get install esound-clients
}}}

i autoritzant la instal·lació, quan demani la contrassenya.

Al mateix terminal fem:

{{{
gksudo gedit /etc/festival.scm
}}}

i al final hi copiem el següent:

{{{
(Parameter.set 'Audio_Command "esdplay $FILE")
(Parameter.set 'Audio_Method 'Audio_Command)
(Parameter.set 'Audio_Required_Format 'snd)
}}}
Es suposa que tenim so a l'escriptori. En cas contrari, veiem altres guies com ara [[https://help.ubuntu.com/community/SoundTroubleshootingProcedure|Sound Troubleshooting Procedure]].

Si ets un usuari nou i fas servir PulseAudio, no cal fer res.

Si ets un usuari nou i no fas servir PulseAudio (o PulseAudio et falla o tens problemes d'àudio):

En un terminal escriu:
{{{
sudo apt-get install alsa-utils
sudo printf ";use ALSA\n(Parameter.set 'Audio_Method 'Audio_Command)\n(Parameter.set 'Audio_Command \"aplay -q -c 1 -t raw -f s16 -r \$SR \$FILE\")\n" > /etc/festival.scm
}}}
Si portes temps fent servir Festival, pots provar el nou mòdul posant un ";" davant les línies dels fitxers /etc/festival.scm i ~/.festivalrc semblants a:
{{{
(Parameter.set 'Audio_Method alguna_cosa)
(Parameter.set 'Audio_Command alguna_cosa)
}}}
de manera que quedin:
{{{
;(Parameter.set 'Audio_Method alguna_cosa)
;(Parameter.set 'Audio_Command alguna_cosa)
}}}
Line 184: Line 155:
=== Si hem triat l'opció 3. ===
Line 188: Line 158:
 $ echo hola mon | festival --language catalan --tts  $ echo 'hola mon' | festival --language catalan --tts
Line 200: Line 170:
=== Si hem triat l'opció 3b. ===
Per llegir en veu alta la frase ''hola mon'', copiem al terminal la línia següent:

{{{
 $ echo hola mon | festival --libdir /usr/share/festival --language catalan --tts
}}}
Per llegir en veu alta un arxiu anomenat ''arxiu.txt'' hi copiem:

{{{
 $ festival --libdir /usr/share/festival --language catalan --tts arxiu.txt
}}}
o bé:

{{{
 $ cat arxiu.txt | festival --libdir /usr/share/festival --language catalan --tts
}}}
Line 220: Line 174:
=== Llegir l'hora en veu alta ===
Per llegir l'hora en veu alta al terminal hi ha prou amb escriure la següent línia (Atenció: les 'cometes' abans i després de {{{date...}}} són accents, no cometes!!!):
{{{
echo "Són les `date +%k` hores, `date +%-M` minuts amb `date +%-S` segons." |padsp festival --tts --language catalan
}}}

Si volem, per exemple que ens digui l'hora en veu alta a les hores en punt hem de preparar un arxiu de text amb dues línies (Atenció: no hem de deixar cap espai a la primera línia, són aquí només per limitacions d'aquest wiki!!!):
{{{
# ! /bin/bash
echo "Són les `date +%k` hores, `date +%-M` minuts amb `date +%-S` segons." |padsp festival --tts --language catalan
}}}

Al desar l'arxiu anterior, és molt important triar la codificació ISO-8859-1 o ISO-8859-15, ja que si triem UTF-8, que és l'opció per omissió, el Festival no podrà llegir-ho, i donarà l'error 'LTS_Ruleset catala_downcase: no rule matches:'.

posem que l'anomenem {{{digueshora.sh}}}

De nou al terminal fem:
{{{
crontab -e
}}}
i afegim a l'arxiu de programacions la línia:
{{{
0 * * * * bash [ruta]/digueshora.sh
}}}
on hem de substituir [ruta] per la ruta absoluta on hem desat l'arxiu {{{digueshora.sh}}}.

No oblidem desar fent Crl+O, abans de sortir amb Ctrl+X

Una altra opció sense els minuts és:
{{{
echo "Són les `date +%k` hores, i `date +%-M` minuts." |padsp festival --tts --language catalan
}}}

Per que digui les hores amb quarts, podríem fer alguna cosa així (us animem a millorar-ho):
{{{
hora=`date +%-I`
hora_seg=$(echo "scale=0; $hora+1" | bc)
if [ "$hora_seg" -eq "13" ]; then hora_seg="una"; fi
minuts=`date +%-M`
case $hora in
        1 ) xe_hora="És la una" ;;
        2 ) xe_hora="Són les dues" ;;
        * ) xe_hora ="Són les $hora";;
esac
case $minuts in
 0 ) xe_minuts="" ;;
        * ) xe_minuts=", i $minuts minuts.";;
esac
case $minuts in
        15 ) xerra="És un quart de $hora_seg." ;;
        30 ) xerra="Són dos quarts de $hora_seg." ;;
        45 ) xerra="Són tres quarts de $hora_seg." ;;
        * ) xerra="$xe_hora$xe_minuts" ;;
esac
echo $xerra |padsp festival --tts --language catalan
}}}

Possibles millores:

* Que digui "d'una', en lloc de "de una", o "Són dos quarts i cinc", "Són dos quarts i 3 minuts",...

=== Extensió per a OpenOffice ===
[[http://extensions.services.openoffice.org/node/2649|Read Text]] és una extensió per a OpenOffice que permet llegir el text seleccionat. Un cop instal·lades les veus segons les instruccions anteriors, podem instal·lar Read Text com qualsevol altre extensió (al menú 'Eines' | 'Gestor d'extensions...' | 'Afegeix...' [[http://wiki.services.openoffice.org/wiki/Documentation/Administration_Guide/Using_Package_Manager|1]]) i funciona directament amb les veus catalanes.

=== Com llegir la pantalla amb Orca ===
Per instal·lar l'Orca, copiem al terminal la línia següent:

{{{
 $ sudo apt-get install orca
}}}
Amb el menú Aplicacions | Accés universal | Lector de pantalla i ampliador Orca

El primer cop caldrà triar les opcions de configuració, responen unes preguntes al terminal. Es pot canviar la configuració inicial fent {{{orca --text-setuporca --text-setup}}}. Un cop contestades les preguntes, que es llegeixen en veu alta, apareixerà aquesta finestra:

{{attachment:imatges_OrcaCA.png}}

Anem a Preferències i a la pestanya Pronúncia triem:

{{attachment:imatges_OrcaPreferenciesCA.png}}

Síntetitzador de pronunciació: Festival GNOME Speech Driver

Persona: triem una de les veus catalanes que heu instal·lat

=== Com fer arxius de so (wav) ===

Es pot aconseguir fent uns enllaços simbòlics així (si no ho hem fet al punt 1.4):

{{{
$ cd /usr/lib/festival/
$ sudo ln -s /usr/share/festival/voices
$ sudo ln -s /usr/share/festival/dicts
$ sudo ln -s /usr/share/festival/upc_catalan
}}}
Això també permet arrencar festival sense el paràmetre de la ruta de libdir.

Exemple d'ús:

(Cal que l'arxiu tingui codificació latin-1)

Per convertir un arxiu txt a wav, copiem al terminal:

{{{
 $ text2wave -o arxiu.wav -eval '(language_catalan)' arxiu.txt
}}}
=== Alternativa (sense text2wave) ===
Una altra forma per generar arxius wav, podem fer ([[http://www.math.ias.edu/doc/festival-1.4.2/festival_toc.html#TOC36|1]]):

{{{
 $ festival
festival> (save_waves_during_tts)
(language_catalan)
(tts_file "arxiu.txt")
(exit)
}}}
=== Per convertir a ogg (preferible) ===
Si no ho està caldrà instal·lar oggenc, copiant al terminal:

{{{
 $ sudo apt-get install vorbis-tools
}}}
Podem fer servir oggenc així, copiant al terminal:

{{{
 $ oggenc arxiu.wav
}}}
També podeu fer servir [[https://wiki.ubuntu.com/CatalanTeam/Tutorials/S%c3%adntesiDeVeu/Scripts#head-626b367e4c7127c75287d4722d87651387e318ce|aquest script]]

=== Per convertir a mp3 ===
||<rowbgcolor="#FF0000">'''Atenció: l'mp3 no és lliure!'''||
Si no ho està caldrà instal·lar lame, copiant al terminal:

{{{
 $ sudo apt-get install lame
}}}
Podem fer servir lame, copiant al terminal:

{{{
 $ lame arxiu.wav arxiu.mp3
}}}
També podeu fer servir [[https://wiki.ubuntu.com/CatalanTeam/Tutorials/S%c3%adntesiDeVeu/Scripts#head-99e4d74c79445ad538adef40e012a1375d34b344|aquest script]]

=== Scripts per convertir un arxiu a ogg i a mp3 ===
Estan escrits suposant que tenim la veu catalana triada per omissió (veieu el punt 1.5, més amunt).

 * '''text2ogg''': Converteix un arxiu de text a ogg llegint-lo amb Festival, afegint el nom de l'arxiu a l'etiqueta ogg del títol, i opcionalment l'autor
 * '''text2mp3''': Converteix un arxiu de text a mp3 llegint-lo amb Festival, afegint el nom de l'arxiu a l'etiqueta ogg del títol, i opcionalment l'autor

Els podem trobar [[https://wiki.ubuntu.com/CatalanTeam/Tutorials/S%c3%adntesiDeVeu/Scripts|aquí]]
=== Llegir amb Pidgin ===
Veieu aquest article: [[http://gnulinux.cat/2010/05/21/lordinador-parla-en-catala-festival-3-pidgin/|L’ordinador parla en català: Festival 3- Pidgin]]

=== Llegir amb Firefox ===
Veieu aquest article: [[http://gnulinux.cat/2010/05/22/lordinador-parla-en-catala-festival-4-firefox/|L’ordinador parla en català: Festival 4- Firefox]]

=== Llegir amb OpenOffice ===
Veieu aquest article: [[http://gnulinux.cat/2010/05/23/lordinador-parla-en-catala-festival-5-openoffice-org/|L’ordinador parla en català: Festival 5- OpenOffice]]

=== Més exemples ===
Podem veure com llegir l'hora en veu alta, fer-la servir amb OpenOffice i amb Orca per llegir la pantalla, i com generar arxius de so a [[/Exemples]]
Line 376: Line 192:
sudo apt-get install festival festlex-cmu festlex-poslex festvox-kallpc16k libestools1.2
wget http://www.talp.cat/festcat/download/upc_ca_base.tgz
wget http://www.talp.cat/festcat/download/upc_ca_ona_hts.tgz
wget http://www.talp.cat/festcat/download/upc_ca_pau_hts.tgz
sudo tar -C /usr/share/festival -zxf upc_ca_base.tgz
sudo tar -C /usr/share/festival -zxf upc_ca_ona_hts.tgz
sudo tar -C /usr/share/festival -zxf upc_ca_pau_hts.tgz
cd /usr/lib/festival/
sudo ln -s /usr/share/festival/voices
sudo ln -s /usr/share/festival/dicts
sudo ln -s /usr/share/festival/upc_catalan
printf ";use ALSA\n(Parameter.set 'Audio_Method 'Audio_Command)\n(Parameter.set 'Audio_Command \"aplay -q -c 1 -t raw -f s16 -r \$SR \$FILE\")\n(set! voice_default 'voice_upc_ca_ona_hts)\n" > ~/.festivalrc
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com A3A48C4A
source /etc/lsb-release
sudo echo "deb http://ppa.launchpad.net/zeehio/festcat/ubuntu $DISTRIB_CODENAME main" >> /etc/apt/sources.list
sudo apt-get update
sudo apt-get install festival festival-ca festvox-ca-upc-hts-ona
printf ";Catala per defecte:\n(set! language_default 'catalan)\n" > ~/.festivalrc
Line 393: Line 203:
 $ echo hello world! | festival --language americanenglish --tts  $ echo 'hello world!' | festival --language americanenglish --tts
Line 400: Line 210:
 $ echo hola mon | festival --tts  $ echo 'hola mon' | festival --tts
Line 408: Line 218:

'''Truc útil''': Si tenim un arxiu de text llarg en UTF-8, pot ser molt laboriós trobar els caràcters que no es podem convertir a latin-1. Si fem la conversió anterior amb iconv en donarà error: però si observem l'arxiu generat, aquest és trucarà exactament al primer caràcter que no es pot convertir, que ja tenim localitzat al nostre arxiu. El canviem i tornem a fer la conversió. Així els podem localitzar de forma sistemàtica. '''Si ets un expert en scripts de sustitució''' potser podràs preparar un script que els sustitueixi tots de cop! Si ho fas, [[http://ubuntuforums.org/showthread.php?t=806060|posa'l al fòrum]]!
== Documents pdf ==
Per convertir un document pdf, resulta útil el programa pdftotext, que amb la següent ordre el converteix directament a latin1:

{{{
sudo apt-get install poppler-utils
pdftotext -enc Latin1 -nopgbrk $@ $@.txt
}}}
Line 427: Line 247:
Mireu també a l'apartat ''Instal·lació'' la nota sobre ALSA i el dispositiu de so.

=== Tinc Ubuntu Hardy 8.04 i Festival no em funciona ===
[[https://wiki.ubuntu.com/PulseAudio|A partir de la versió 8.04, Ubuntu fa servir el servidor]] de so [[Pulseaudio]]. Per adaptar Festival a Pulseaudio, només cal fer servir [[http://linux.die.net/man/1/padsp|l'embolicador Pulseadio (padsp)]]. És a dir, hi ha prou amb anteposar l'ordre '''padsp''' a ''festival'', per exemple:

{{{
$ echo hola mon | padsp festival --language catalan --tts
}}}

Cal posar-ho directament davant de ''festival'' (no davant de l'script ''[[https://wiki.ubuntu.com/CatalanTeam/Tutorials/S%C3%ADntesiDeVeu/Scripts#Men%C3%BA%20que%20ho%20fa%20%22tot%22%20incl%C3%BAs%20triar%20la%20llengua|veus.sh]]'', per exemple).

=== Al pronunciar la lletra 'ñ' en algun nom propi forani, dóna aquest error ===

{{{
failed to find tree for ñ
}}}
La solució que ens ha facilitat [[http://www.tsc.upc.edu/|Antonio Bonafonte]] és:

{{{
 $ sudo gedit /usr/share/festival/dicts/upc/upc_catalan_lts_rules.scm
}}}
i cap al final de tot, afegim la linea amb el so de la 'ñ', que es representa amb 'J':

El final queda així:
{{{
 (ñ ((J)))
(· ((_epsilon_)))
(- ((_epsilon_))))
}}}
Segons ens indica aquesta correcció serà afegida a la propera versió.
Mireu també a l'apartat ''Instal·lació'' la nota el dispositiu de so.

Cal millorar el tractament de signes de puntuació:

Sintetitzar 2 admiracions seguides "!!" no funciona bé.

Problema si la frase comença amb I majúscula: SIOD ERROR: comma-not-inside-backquote

Millorar la lectura de les lliste numerades
Line 463: Line 262:
Cal actualitzar la versió de Festival.
Line 465: Line 266:
Nota: Estem treballant en una millora que ho soluciona. Quan estigui llesta ho afegirem aquí. Nota: El TALP està treballant en una millora que ho soluciona. Quan estigui llesta ho afegirem aquí. (Solucionat!)

==== Coses a fer ====
Falta suport a UTF8. (Hi estem treballant)

Cal poder pronunciar paraules amb caràcters estrangers.

Preparar un paquet Debian amb els scripts per posar-lo al repositori, de manera que es puguin actualitzar amb facilitat.

Síntesi de veu

Com instal·lar la veu catalana del Festival

Resum: Indiquem com instal·lar i com desinstal·lar les veus catalanes, i algunes millores possibles en les que podeu col·laborar. Podeu veure exemples de com fer-les servir a /Exemples.

Instal·lació

Aquestes instruccions han estat provades amb Ubuntu Hardy 8.04 (1). Si us funcionen en altres versions, us preguem que ho feu saber al fòrum

Si no volem llegir les explicacions, podem anar directament a l'apartat Codi per copiar al terminal.

Instal·lem Festival

Si feu servir Ubuntu Hardy 8.04, o posterior, veieu això.

Obrim un terminal (o consola) amb el menú Aplicacions | Accessoris | Terminal i fem (demanarà la nostra contrasenya de la sessió):

 $ sudo apt-get install festival festlex-cmu festlex-poslex festvox-kallpc16k libestools1.2

Per comprovar que funciona copiem al terminal la línia següent:

 $ echo 'hello world!' | festival --tts

Si funciona correctament i tenim la tarja de so ben configurada, escoltarem el text pels altaveus.

Instal·lem les veus

Amb repositoris (Només Ubuntu Jaunty 9.04 i Karmic 9.10)

Nota: Aquest procediment ha estat provat per Ubuntu Jaunty 9.04. Si teniu cap problema, indiqueu els detalls al fòrum, i feu servir el procediment manual, ja provat, indicat a la secció següent (De forma manual).

Si tenim les veus instal·lades de forma manual, primer les hem de retirar, veieu l'apartat Desinstal·lació (versió manual)

1. Al terminal, afegim la clau amb què s'ha firmat el codi:

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com A3A48C4A

2. Afegim la font al repositori: Al menú Sistema | Administració | Fonts de programari, pestanya Programari de tercers, botó Afegeix, afegim la línia:

deb http://ppa.launchpad.net/zeehio/festcat/ubuntu jaunty main

Per a Ubuntu Karmic 9.10, canviem la paraula jaunty per karmic a la linia anterior.

Fem Afegeix la font i Tanca.

3. Instal·lem les veus: Al menú Sistema | Administració | Gestor de paquets Synaptic, triem el botó Refresca i cerquem: festvox-ca, marquem la veu festvox-ca-upc-hts-ona i triem Aplica. Opcionalment podem marcar altres veus.

Desinstal·lació (versió repositoris)

Per desinstal·lar-ho, copiem al terminal (demanarà la nostra contrasenya de la sessió):

$ sudo apt-get remove festival-ca
$ sudo apt-get autoremove

De forma manual (alres versions)

Nota (Gener 2010): per les altres versions només les veus són al repositori anterior, que es poden fer servir, però cal instal·lar les veus manualment, però per fer servir els repositoris, cal vigilar la versió de Festival necessària (falta completar).

1. Baixem els arxius de llengua i alguna veu de http://gps-tsc.upc.es/veu/festcat/download/

$ wget http://www.talp.cat/festcat/download/upc_ca_base.tgz
$ wget http://www.talp.cat/festcat/download/upc_ca_ona_hts.tgz
$ wget http://www.talp.cat/festcat/download/upc_ca_pau_hts.tgz

Opcionalment, podem baixar altres veus.

2. Desempaquetem els arxius a la carpeta /usr/share/festival, copiant al terminal:

$ sudo tar -C /usr/share/festival -zxf upc_ca_base.tgz
$ sudo tar -C /usr/share/festival -zxf upc_ca_ona_hts.tgz
$ sudo tar -C /usr/share/festival -zxf upc_ca_pau_hts.tgz

(Si hem baixat més veus, les desempaquetem de la mateixa forma.)

Per comprovar que funciona en català copiem al terminal la línia següent:

 $ echo 'hola mon' | festival --language catalan --tts

Si funciona correctament i tenim la tarja de so ben configurada, escoltarem el text en català pels altaveus.

4. Per triar una veu en català per omisió, cal crear un arxiu de text a la carpeta de l'usuari, el nom de l'arxiu ha de ser .festivalrc

Sortim del Festival amb (exit), i fem:

 $ gedit .festivalrc

Al seu interior copiarem la línia següent, a la que podem triar qualsevol de les veus instal·lades

 (set! catalan-default-voices (list 'upc_ca_ona_hts))

Nota: Per llegir en altres llegües ara caldrà indicar-ho. Veiem l'apartat 10.

Desinstal·lació (versió manual)

Per desinstal·lar les veus catalanes, copiem al terminal (demanarà la nostra contrasenya de la sessió):

$ sudo rm -R /usr/share/festival/upc_catalan
$ sudo rm -R /usr/share/festival/dicts/upc
$ sudo rm -R /usr/share/festival/voices/catalan

Per desintal·lar el festival fem al terminal:

$ sudo apt-get remove festival
$ sudo apt-get autoremove

Configuració del dispositiu de só

Es suposa que tenim so a l'escriptori. En cas contrari, veiem altres guies com ara Sound Troubleshooting Procedure.

Si ets un usuari nou i fas servir PulseAudio, no cal fer res.

Si ets un usuari nou i no fas servir PulseAudio (o PulseAudio et falla o tens problemes d'àudio):

En un terminal escriu:

sudo apt-get install alsa-utils
sudo printf ";use ALSA\n(Parameter.set 'Audio_Method 'Audio_Command)\n(Parameter.set 'Audio_Command \"aplay -q -c 1 -t raw -f s16 -r \$SR \$FILE\")\n" > /etc/festival.scm

Si portes temps fent servir Festival, pots provar el nou mòdul posant un ";" davant les línies dels fitxers /etc/festival.scm i ~/.festivalrc semblants a:

(Parameter.set 'Audio_Method alguna_cosa)
(Parameter.set 'Audio_Command alguna_cosa)

de manera que quedin:

;(Parameter.set 'Audio_Method alguna_cosa)
;(Parameter.set 'Audio_Command alguna_cosa)

Exemples d'ús

Cal que els arxius de text a convertir tinguin codificació latin-1

Veieu altres exemples a: http://www.talp.cat/festcat/download/LLEGEIX-ME

Segons l'opció que hem triat al pas anterior, ara tenim dues opcions:

Per llegir en veu alta la frase hola mon, copiem al terminal la línia següent:

 $ echo 'hola mon' | festival --language catalan --tts

Per llegir en veu alta un arxiu anomenat arxiu.txt hi copiem:

 $ festival --language catalan --tts arxiu.txt

o bé:

 $ cat arxiu.txt | festival --language catalan --tts

Les instruccions originals són aquí: http://www.talp.cat/festcat/download/LLEGEIX-ME

Nota: atenció amb les rutes al desempaquetar, un petit error em feia que no funcionés!

Llegir amb Pidgin

Veieu aquest article: L’ordinador parla en català: Festival 3- Pidgin

Llegir amb Firefox

Veieu aquest article: L’ordinador parla en català: Festival 4- Firefox

Llegir amb OpenOffice

Veieu aquest article: L’ordinador parla en català: Festival 5- OpenOffice

Més exemples

Podem veure com llegir l'hora en veu alta, fer-la servir amb OpenOffice i amb Orca per llegir la pantalla, i com generar arxius de so a /Exemples

Codi per copiar al terminal

No és necessari fer aquest pas si hem fet el pas 1. Instal·lació

Obrim un terminal fent Aplicacions | Accessoris | Terminal i copiem això (demanarà la nostra contrasenya de la sessió):

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com A3A48C4A
source /etc/lsb-release
sudo echo "deb http://ppa.launchpad.net/zeehio/festcat/ubuntu $DISTRIB_CODENAME main" >> /etc/apt/sources.list
sudo apt-get update
sudo apt-get install festival festival-ca festvox-ca-upc-hts-ona
printf ";Catala per defecte:\n(set! language_default 'catalan)\n" > ~/.festivalrc

Llavors podem provar que funciona en anglés, copiant al terminal:

 $ echo 'hello world!' | festival --language americanenglish --tts

(Si funciona correctament i tenim la tarja de so ben configurada, escoltarem el text pels altaveus)

i en català, copiant al terminal:

 $ echo 'hola mon' | festival --tts

Com convertir un arxiu de text a latin-1

La codificació per omissió dels arxius a Ubuntu és UTF-8. Podem fer servir les opcions de guardar del editor gedit, o fer servir programes conversors de format, com iconv copiant al terminal (Més):

 $ iconv -f utf8 -t latin1 arxiu_utf8.txt > arxiu_latin1.txt

Truc útil: Si tenim un arxiu de text llarg en UTF-8, pot ser molt laboriós trobar els caràcters que no es podem convertir a latin-1. Si fem la conversió anterior amb iconv en donarà error: però si observem l'arxiu generat, aquest és trucarà exactament al primer caràcter que no es pot convertir, que ja tenim localitzat al nostre arxiu. El canviem i tornem a fer la conversió. Així els podem localitzar de forma sistemàtica. Si ets un expert en scripts de sustitució potser podràs preparar un script que els sustitueixi tots de cop! Si ho fas, posa'l al fòrum!

Documents pdf

Per convertir un document pdf, resulta útil el programa pdftotext, que amb la següent ordre el converteix directament a latin1:

sudo apt-get install poppler-utils
pdftotext -enc Latin1 -nopgbrk $@ $@.txt

Com fer que Festival llegeixi també en anglés i / o castellà

Si hem triat que es faci servir la veu catalana quan no indiquem res (Veu el punt 1.5 més a munt), quan volguem llegir en castellà o en anglés - o en qualsevol altre llengua - caldrà indicar-ho.

Primer comprovem que tenim les veus instalades fent (La veu castellana és festvox-ellpc11k i la americana: festvox-kdlpc16k):

 $ sudo apt-get install festvox-ellpc11k festvox-kdlpc16k

Per provar aquestes veus podem fer, per la veu castellana:

 $ echo hola | festival --language spanish --tts

i per la americana:

 $ echo hello | festival --language americanenglish --tts

Problemes coneguts

Mireu també a l'apartat Instal·lació la nota el dispositiu de so.

Cal millorar el tractament de signes de puntuació:

Sintetitzar 2 admiracions seguides "!!" no funciona bé.

Problema si la frase comença amb I majúscula: SIOD ERROR: comma-not-inside-backquote

Millorar la lectura de les lliste numerades

Amb algunes paraules, s'obté aquest error

 SIOD ERROR: the currently assigned stack limit has been exceded

Cal actualitzar la versió de Festival.

Aquest problema és dona quan es troba una paraula amb una majúscula repetida com ara TamTam , o amb el punt volat '·' i està sent corregit pels desenvolupadors. Mentrestant podem convertir una d'aquestes lletres a minúscula, i canviant els punt volats per punts corrents '.'.

Nota: El TALP està treballant en una millora que ho soluciona. Quan estigui llesta ho afegirem aquí. (Solucionat!)

Coses a fer

Falta suport a UTF8. (Hi estem treballant)

Cal poder pronunciar paraules amb caràcters estrangers.

Preparar un paquet Debian amb els scripts per posar-lo al repositori, de manera que es puguin actualitzar amb facilitat.

Textos en format UTF-8

Festival espera arxius de text en codificació latin-1. Si el text conté caràcters que no són en aquesta codificació, també donarà error. Antonio Bonafonte ha fet un script en perl que substitueix els caràcters:

#festcat_neteja.pl - Antonio Bonafonte - Juny 2008

chomp;

$debug=0;



if ($debug) {

    s{([^- \t\n\ra-z0-9áàéèíìóòúùüïçñA-ZÁÀÉÈÍÌÓÒÚÙÜÏÇÑ\[\]\{\}ºª\\!\|\"@·#\$~%&/()=?'¿¡*+_.:,;<>€])}{#$1#}g;

} else {

    s{([^- \t\n\ra-z0-9áàéèíìóòúùüïçñA-ZÁÀÉÈÍÌÓÒÚÙÜÏÇÑ\[\]\{\}ºª\\!\|\"@·#\$~%&/()=?'¿¡*+_.:,;<>€])}{ }g;

}

print "$_\n";

Per fer-lo servir, li donem permisos d'execució i fem:

perl festcat_neteja.pl arxiu.txt > arxiu.net

Millores

Si trobeu alguna solució, podeu afegir-la a aquest wiki, editant-lo, o comentar-ho al fòrum: http://ubuntuforums.org/showthread.php?t=806060 Fora interessant per exemple:

1. (Fet) Simplificar les ordres per desempaquetar els arxius, que segurament es pot fer de forma més eficient.

2. (Fet - veieu més amunt, el punt 4. de 'De forma manual') Poder indicar la llengua o veu per omissió, per no haver de dir cada cop que volem la llengua catalana. Potser es podria indicar a l'arxiu .festivalrc ( http://www.math.ias.edu/doc/festival-1.4.2/festival_6.html#SEC15 )

3. Trobar alguna eina gràfica - a més de l'Orca - que fes servir les veus en català, pels que ho prefereixen a fer servir la consola, com ara eSpeak o KSayit.

4. Determinar les condicions del problema o trobar una solució per convertir arxius de text en format UTF-8 (Veieu 9.2 Problemes coneguts). (Hi estem treballant).

Referències

Fòrum: http://ubuntuforums.org/showthread.php?t=806060 (ha servit per començar aquest document)

Síntesi de veu a Ubuntu amb Festival: https://help.ubuntu.com/community/TextToSpeech (en anglès)

Festival: http://www.cstr.ed.ac.uk/projects/festival/ FAQ (en anglès)

Festcat: http://gps-tsc.upc.es/veu/festcat/ (veus catalanes)

Festcat a launchpad: https://launchpad.net/~zeehio/+archive/festcat

Configuració de só alsa / oss TextToSpeech. (en anglès)

SIOD: http://www.cs.indiana.edu/scheme-repository/imp/siod.html (en anglès)

ReadText: http://extensions.services.openoffice.org/node/2649 (en anglès

Gestor d'extensión de l'OpenOffice: http://wiki.services.openoffice.org/wiki/Documentation/Administration_Guide/Using_Package_Manager (en anglès

HOWTO: Make festival TTS use better voices (MBROLA / CMU / HTS)

Crèdits: Antonio Bonafonte, Sergi Oller, PacoRivière http://galindaines.blogspot.com/


CategoryTutorialsEnCatala

CatalanTeam/Tutorials/SíntesiDeVeu (last edited 2017-07-13 13:35:51 by amarti-m)