Vorrei creare un programma C++ che implementi il TTS convertendo quindi un testo in un file mp3 o wav. Per fare ciò ho trovato il progetto Festival, un TTS open source per Linux. Ho provato ad installarlo con il comando sudo apt-get install festival e l'installazione è andata a buon fine, festival funziona, ma non c'è la libreria festival.h essenziale per utilizzare le API. Ho provato a cercare su internet senza alcun risultato. Qualcuno può aiutarmi? Qualcuno sa anche come installare le voci italiane?

chiesto 28 Dec '13, 21:54

RyanJ93's gravatar image

RyanJ93
60559

modificato 29 Dec '13, 10:46

enzotib's gravatar image

enzotib ♦♦
14.1k113187


Come standard le librerie di sviluppo sono fornite in pacchetti che terminano in -dev, e apt-cache search festival sarebbe stato tuo amico nella ricerca.

Nel caso specifico devi installare il pacchetto festival-dev e dovrebbe servirti anche la documentazione, presente nel pacchetto festival-doc.

Aggiungo, se non fosse già noto, che per vedere i file appartenenti ad un dato pacchetto, per esempio festival-dev, puoi usare il comando:

dpkg -L festival-dev
coll. permanente

ha risposto 29 Dec '13, 08:39

enzotib's gravatar image

enzotib ♦♦
14.1k113187

Ho installato i pacchetti dev (sudo apt-get install festival festival-dev festival-doc). L'installazione è andata a buon fine ed ho fatto una prova scrivendo un semplice programma C includendo la libreria, da terminale invece tutto ok, e inizialmente mi ha dato l'errore di prima, così ho controllato i file del pacchetto festival-dev e ho corretto l'include con la path festival/festival.h invece che festival.h ma ora mi da come errore ho: /usr/include/festival/festival.h:47:17: fatal error: EST.h: File o directory non esistente. Manca qualche pacchetto o sbaglio io a compilare?

(30 Dec '13, 11:00) RyanJ93 RyanJ93's gravatar image

@RyanJ93: con "apt-file search /EST.h" si ottiene
libestools2.1-dev: /usr/include/speech_tools/EST.h
quindi questo file è contenuto nel pacchetto libestools2.1-dev, che dovrebbe essere stato installato come dipendenza di festival-dev.
Prova a mettere come opzione di compilazione -I /usr/include/speech-tools/

(30 Dec '13, 11:19) enzotib ♦♦ enzotib's gravatar image

Ho fatto "sudo apt-file search /EST.h" ed ottengo "libestools2.1-dev: /usr/include/speech_tools/EST.h" quindi presumo che il file sia presente. Per compilare ho fatto "g++ main.cpp -I /usr/include/speech-tools/" ma mi restituisce lo stesso errore

(31 Dec '13, 00:29) RyanJ93 RyanJ93's gravatar image

@RyanJ93: probabilmente il file è presente perché è in un pacchetto da cui dipende festival-dev, non perché te lo restituisce quel comando (apt-file cerca in un database i file sia di pacchetti installati che non installati).
Comunque senza avere il sorgente e poter fare una prova non posso aiutarti. Se possibile metti il sorgente su pastebin e passami il link.

(31 Dec '13, 08:15) enzotib ♦♦ enzotib's gravatar image

Il sorgente del programma è semplicissimo poichè è solo una prova per vedere se la libreria funzionava, prova nemmeno conclusa in quanto mi da errore già nell'inclusione della libreria, in ogni caso ecco il link: http://pastebin.ubuntu.com/6667611/

(31 Dec '13, 10:42) RyanJ93 RyanJ93's gravatar image

@RyanJ93, chiedo scusa, la directory era /usr/include/speech_tools/ (con l'underscore) e non g++ main.cpp -I /usr/include/speech-tools/ (con il trattino), così a me funziona.

(31 Dec '13, 12:42) enzotib ♦♦ enzotib's gravatar image

Scusate per il ritardo, ho provato a compilare il codice su pastebin con g++ main.cpp -I /usr/include/speech_tools/. Non ci sono stati errori, così ho provato a compilare il programma di esempio trovato sulla documentazione di festival(http://pastebin.ubuntu.com/6874174/) con il comando: g++ main.cpp -I /usr/include/speech_tools/ -I /usr/include/festival/ ricevendo questo output: http://pastebin.ubuntu.com/6874193/ Ho dimenticato qualche opzione del compilatore?

(04 Feb '14, 18:42) RyanJ93 RyanJ93's gravatar image

g++ main.cpp -I /usr/include/speech-tools/ è sbagliato, vai con g++ main.cpp -I /usr/include/speech_tools/

coll. permanente

ha risposto 18 Jan '14, 05:34

GodTaxist's gravatar image

GodTaxist
101

@GodTaxist, non era stato già detto?

(18 Jan '14, 07:15) enzotib ♦♦ enzotib's gravatar image

@enzotib ♦, no, non c'è il trattino, c'è un underscore, e a quanto vedo, non è ancora stato corretto.

(18 Jan '14, 12:34) GodTaxist GodTaxist's gravatar image

@GodTaxist: mi riferisco al mio ultimo commento alla mia risposta, del 31 Dic '13, 12:42, che non è direttamente visibile se non clicchi prima su "mostra altri 1 commenti"

(18 Jan '14, 12:58) enzotib ♦♦ enzotib's gravatar image

@enzotib ♦, pardon allora, hai ragione tu, non mi ci trovo con questi siti stile reddit, mi mancano i forum e i newsgroup, scusa ancora

(18 Jan '14, 14:21) GodTaxist GodTaxist's gravatar image

@GodTaxist: figurati, la risposta era corretta, e il tuo contributo al sito è il benvenuto

(18 Jan '14, 14:27) enzotib ♦♦ enzotib's gravatar image
La tua risposta
abilita/disabilita anteprima

Segui questa domanda

Via email:

Una volta eseguito l'accesso potrai iscriverti a tutti gli aggiornamenti qui

Via RSS:

Risposte

Risposte e commenti

Basi di markdown

  • *corsivo* o __corsivo__
  • **grassetto** o __grassetto__
  • collegamento:[testo](http://url.com/ "titolo")
  • immagine?![alt testo](/path/img.jpg "titolo")
  • elenco numerato: 1. Foo 2. Bar
  • per aggiungere un'interruzione di riga, aggiungi due spazi a fine riga e premi «Invio»
  • è supportato anche semplice HTML

Tag:

×116
×109
×37

domanda posta: 28 Dec '13, 21:54

domanda visualizzata: 4,980 volte

ultimo aggiornamento: 04 Feb '14, 18:42

Chiedi è un servizio di supporto gestito da Ubuntu-it. Contattaci!

powered by OSQAPostgreSQL database
Ubuntu e Canonical sono marchi registrati da Canonical Ltd.