Per gli utenti Mac non sarà di certo una novità (che addirittura fanno cantare il proprio mac), ma non tutti sanno che su Ubuntu è preinstallato eSpeak, un programma di sintesi vocale a riga di comando per la lettura automatica di testo compatibile con varie lingue, tra cui l’italiano. Ma andiamo con ordine.
Installazione e sintassi
Nel caso non avete preinstallato eSpeak, è sufficiente aprire un terminale e digitare:
sudo apt-get install espeak
Ora è possibile provare subito eSpeak rispettando una delle seguenti sintassi:
espeak [opzioni] [-v linguaggio] testo
espeak [opzioni] [-v linguaggio] < testo
espeak [opzioni] [-v linguaggio] -f file_testo.txt
Ovvero, è possibile fornire il testo come ultimo argomento, attraverso lo standard input, oppure con l’opzione -f, all’interno di un file ascii di tipo UTF-8, sintetizzandolo attraverso l’adattatore audio installato sul proprio sistema.
Per esempio:
espeak -v it “Buongiorno a tutti quanti!”
Un’altra opzione fondamentale è -v, con la quale si specifica il linguaggio secondo cui va sintetizzato il testo. Per verificare quanti linguaggi supporta eSpeak basterà digitare:
espeak –voices
che restituirà un’output simile:
Pty Language Age/Gender VoiceName File Other Langs
5 af M afrikaans af
5 cy M welsh-test cy
5 de M german de
5 el M greek_test el
5 en-r M en-rhotic en/en-r (en 3)
2 en-uk M english en/en (en 2)
5 en-uk-north M lancashire en/en-n (en-uk 3)
5 en-uk-rp M english_rp en/en-rp (en-uk 4)
5 en-uk-wmids M english_wmids en/en-wm
5 eo M esperanto eo
5 es M spanish es
5 fi M finnish fi
5 fr M french-test fr
5 hi M hindi-test hi
5 hu M hungarian hu
5 it M italian it
5 nl M dutch-test nl
5 no M norwegian-test no (nb 5)
5 pl M polish_test pl
5 pt M brazil pt (pt-br 5)
5 ro M romanian ro
5 ru M russian_test ru
5 sv M swedish-test sv
5 sw M swahihi-test sw
5 vi M vietnam-test vi
A parte la scelta della lingua, ci sono diverse opzioni che possono servire per migliorare la comprensibilità del testo letto. La cosa forse, forse, più importante è la velocità di lettura (un pò come sull’ipod), che si controlla con l’opzione -s (speed):
espeak -s 120 -v it “Leggo questo testo lentamente”
L’argomento dell’opzione rappresenta la quantità di parole al minuto. Essendo il valore predefinito pari a 160, in questo esempio si ottiene una lettura leggermente più lenta del solito.
Oltre alla velocità di lettura, anche il tono di voce (l’intonazione) può essere regolato, questa volta con l’opzione -p (pitch), che attende un argomento composto da un numero che va da 0 a 99: più è grande, più acuto è il tono di voce. Il tono predefinito corrisponde al valore 50, pertanto, l’esempio seguente sintetizza il testo con il tono più acuto possibile:
espeak -p 99 -v it “Voce più acuta!”
Se di default eSpeak, legge solo i file di testo ascii, con l’opzione -m (markup), che si usa senza argomenti, è possibile fornire anche un file HTML, come si vede nell’esempio seguente:
espeak -v it -m -f testo.html
Infine, è anche possibile produrre un file WAV-RIFF, senza emettere alcun suono attraverso l’adattatore audio, con l’opzione -w (wave). Nell’esempio seguente il file testo.txt viene sintetizzato nel file testo.wav:
espeak -v it -f testo.txt -w testo.wav
oppure, immettendo direttamente il testo da riga di comando:
espeak -w testo.wav “leggi questo testo”
Per ascoltare il file wav appena generato basterà digitare:
play testo.wav
Risoluzione problemi
A volte, però può capitare che quando si lancia il comando eSpeak, può dare il seguente errore:
PaHost_OpenStream: could not open /dev/dsp for O_WRONLY
Questo capita quando la periferica audio è già utilizzato da un altro dispositivo. Nel mio caso avevo aperto con Firefox un file video in youtube che, nonostante fosse in pausa, non permetteva l’esecuzione del comando!
Attivare eSpeak con AmaroK per fargli dire quale canzone stiamo ascoltando
Per terminare, vi cito un tips di LuBlog in grado di interfacciare amaroK (un player multimediale) con eSpeak, con il risultato che AmaroK sarà in grado di dirci quale canzone stiamo ascoltando! In pratica, dopo aver installato eSpeak, basterà scaricare uno script di Pete Jewell (da qui) e installarlo su AmaroK andando sul menu Strumenti/Gestore script/Installa script e selezionando il file appena scaricato e confermare. Quindi, andare nella cartellina “Generale” amarokEspeak e abilitarlo con “Esegui”.
Dopo questa modifica, qualsiasi canzone ascolterete, sarà preceduta dal titolo della stessa, emulando un vero e proprio deejay!
Commenti Recenti