Old:Debian e sintesi vocale: installazione di festival e mbrola: differenze tra le versioni

m
(aggiornamento.)
 
(15 versioni intermedie di 6 utenti non mostrate)
Riga 1: Riga 1:
{{stub}}
{{Old}}
Festival è un software di sintesi vocale, sviluppato presso il "Centre for Speech Technology Research" dell'università di Edinburgo. Il suo compito consiste nell'interpretare un input di tipo testuale e nel generare un output di tipo audio. Tipicamente il suo utilizzo è rivolto alle applicazioni di screen reading. È possibile far leggere a festival un file di testo, o una pagina web. È anche possibile fare in modo che festival ci avvisi vocalmente dell'arrivo di nuove e-mail, ecc...  
== Introduzione ==
Festival è un software di sintesi vocale, sviluppato presso il "Centre for Speech Technology Research" dell'Università di Edinburgo. Il suo compito consiste nell'interpretare un input di tipo testuale e nel generare un output di tipo audio. Tipicamente il suo utilizzo è rivolto alle applicazioni di screen reading. È possibile far leggere a Festival un file di testo, o una pagina web. È anche possibile fare in modo che Festival ci avvisi vocalmente dell'arrivo di nuove e-mail, ecc.  


Festival è disponibile pure con il supporto alla lingua italiana, anche se a dire il vero la qualità audio è davvero pessima. Senza voler competere con soluzioni professionali di alto livello qualitativo e costo adeguato, è però possibile utilizzare Festival in accoppiata con il software di sintesi vocale MBROLA, che dispone di audio di qualità migliore. Vedremo in questa guida come operare.
Festival è disponibile pure con il supporto alla lingua italiana, anche se a dire il vero la qualità audio è davvero pessima. Senza voler competere con soluzioni professionali di alto livello qualitativo e costo adeguato, è però possibile utilizzare Festival in accoppiata con il software di sintesi vocale MBROLA, che dispone di audio di qualità migliore. Vedremo in questa guida come operare.
Riga 6: Riga 7:
La distribuzione di riferimento per questa guida è Debian Lenny.
La distribuzione di riferimento per questa guida è Debian Lenny.


= Festival =
== Festival ==
== Installazione ==
=== Installazione ===
Festival ed i pacchetti per l'audio italiano sono presenti negli archivi ufficiali, per cui provvediamo alla loro installazione tramite APT:
Festival ed i pacchetti per l'audio italiano sono presenti negli archivi ufficiali, per cui provvediamo alla loro installazione tramite APT:
<pre># aptitude install festival festvox-italp16k festvox-itapc16k</pre>
<pre># aptitude install festival festvox-italp16k festvox-itapc16k</pre>


== Configurazione ==
=== Configurazione ===
Ora è possibile procedere alla configurazione di Festival. Procediamo con la creazione di due file nella home del nostro utente: <tt>.festivalrc</tt> e <tt>.festivalvarsrc</tt>.
Ora è possibile procedere alla configurazione di Festival. Procediamo con la creazione di due file nella home del nostro utente: <code>.festivalrc</code> e <code>.festivalvarsrc</code>.


=== <tt>.festivalrc</tt> ===
==== <code>.festivalrc</code> ====
Creiamo il file ed al suo interno inseriamo i seguenti comandi
Creiamo il file ed al suo interno inseriamo i seguenti comandi
<pre>(set! main-path "/usr/share/festival")
<pre>(set! main-path "/usr/share/festival")
Riga 24: Riga 25:
<pre>(set! voice_default 'voice_lp_diphone)</pre>
<pre>(set! voice_default 'voice_lp_diphone)</pre>


=== <tt>.festivalvarsrc</tt> ===
==== <code>.festivalvarsrc</code> ====
<pre>(set! main-path "/usr/share/festival")
<pre>(set! main-path "/usr/share/festival")
(set! load-path (cons main-path load-path))</pre>
(set! load-path (cons main-path load-path))</pre>


== Test ==
=== Test ===
Ora possiamo provare festival:
Ora possiamo provare Festival:
<pre>$ festival  
<pre>$ festival  
Festival Speech Synthesis System 1.4.3:release Jan 2003
Festival Speech Synthesis System 1.4.3:release Jan 2003
Riga 39: Riga 40:
Se tutto è andato bene, sentiremo la voce sintetica pronunciare la frase che abbiamo scritto.
Se tutto è andato bene, sentiremo la voce sintetica pronunciare la frase che abbiamo scritto.


= MBROLA =
== MBROLA ==
MBROLA è un sintetizzatore vocale che dispone di un supporto per la lingua italiana di discreta qualità. Procederemo ora a installarlo.
MBROLA è un sintetizzatore vocale che dispone di un supporto per la lingua italiana di discreta qualità. Procederemo ora a installarlo.


== Installazione ==
=== Installazione ===
Aggiungiamo la seguente linea al nostro <tt>/etc/apt/sources.list</tt>.
N.B. A paritre da Squeeze, sono diponibili [http://packages.debian.org/search?keywords=mbrola numerosi pacchetti] nei repository ufficiali Debian, sezione non-free
 
Aggiungiamo la seguente linea al nostro <code>/etc/apt/sources.list</code>.
<pre>### MBROLA
<pre>### MBROLA
deb http://www.brlspeak.net/dev/debian/ stable main non-free</pre>
deb http://www.brlspeak.net/dev/debian/ stable main non-free</pre>


Ora facciamo l'update dell'archivio dei pacchetti e installiamo MBROLA.
Ora facciamo l'update dell'archivio dei pacchetti e installiamo MBROLA:
<pre># apt-get update
<pre># apt-get update
# apt-get install mbrola</pre>
# apt-get install mbrola</pre>
Riga 53: Riga 56:
Scarichiamo anche il pacchetto che contiene la lingua italiana e i file necessari a integrare MBROLA in Festival:
Scarichiamo anche il pacchetto che contiene la lingua italiana e i file necessari a integrare MBROLA in Festival:
<pre>$ cd ~
<pre>$ cd ~
$ wget http://superb-east.dl.sourceforge.net/sourceforge/it-festival/Italian-FESTIVAL.zip</pre>
$ wget http://download.sourceforge.net/project/it-festival/it-festival/2.0/Italian-FESTIVAL-v2.0.zip</pre>


== Configurazione ==
=== Configurazione ===
Dobbiamo ora scompattare il file zip e copiarlo nella directory corretta:
Dobbiamo ora scompattare il file zip e copiarlo nella directory corretta:
<pre>$ mkdir ~/mbrola
<pre>$ mkdir ~/mbrola
Riga 65: Riga 68:
# cp -Rf * /usr/share/festival</pre>
# cp -Rf * /usr/share/festival</pre>


== Aggiungere le voci in italiano ==
=== Aggiungere le voci in italiano ===
Ora siamo pronti a scaricare ed installare le voci in italiano per MBROLA.
Ora siamo pronti a scaricare ed installare le voci in italiano per MBROLA.
Procediamo con quella maschile
Procediamo con quella maschile
Riga 77: Riga 80:
$ unzip it4-010926.zip</pre>
$ unzip it4-010926.zip</pre>


Con questi due comandi vengono create le directory it3 e it4. Ora dobbiamo copiarle nella posizione corretta avvinchè possano essere utilizzate da mbrola
Con questi due comandi vengono create le directory <code>it3</code> e <code>it4</code>. Ora dobbiamo copiarle nella posizione corretta affinchè possano essere utilizzate da mbrola
<pre># cp -R it3/ /usr/share/festival/voices/italian/pc_mbrola
<pre># cp -R it3/ /usr/share/festival/voices/italian/pc_mbrola
# cp -R it4/ /usr/share/festival/voices/italian/lp_mbrola</pre>
# cp -R it4/ /usr/share/festival/voices/italian/lp_mbrola</pre>


= Festival e MBROLA =
== Festival e MBROLA ==
== Test ==
=== Test ===
Passiamo al test della nostra installazione. Avviamo festival da un terminale e impostiamo come voce quella italiana maschile fornita da mbrola
Passiamo al test della nostra installazione. Avviamo festival da un terminale e impostiamo come voce quella italiana maschile fornita da mbrola
<pre>$ festival
<pre>$ festival
Riga 93: Riga 96:
#<Utterance 0xb73d0ad8></pre>
#<Utterance 0xb73d0ad8></pre>


Per testare quella femminile, è sufficiente utilizzare il comando <tt>(voice_lp_mbrola)</tt> in sostituzione di <tt>(voice_pc_mbrola)</tt>.
Per testare quella femminile, è sufficiente utilizzare il comando <code>(voice_lp_mbrola)</code> in sostituzione di <code>(voice_pc_mbrola)</code>.


Se riteniamo questa configurazione soddisfacente, possiamo renderla permanente editando nuovamente il file <tt>.festivalrc</tt> sostituendo l'ultima riga:
Se riteniamo questa configurazione soddisfacente, possiamo renderla permanente editando nuovamente il file <code>.festivalrc</code> sostituendo l'ultima riga:
<pre>(set! voice_default 'voice_pc_diphone) # maschile
<pre>(set! voice_default 'voice_pc_diphone) # maschile
(set! voice_default 'voice_lp_diphone) # femminile</pre>
(set! voice_default 'voice_lp_diphone) # femminile</pre>
3 581

contributi