Pagina 1 di 1
Campionatore e di voci e riproduttore di frasi :)
Inviato: sab 2 gen 2010, 13:59
da kobaiachi
Ciao A tutti
Un paio di anni fa misi su l'infrastruttura IT per una azienda di editoria, oggi che si è espansa ed è riuscita ad aprire anche un punto vendita le titolari mi hanno chiesto se gli metto su un sistema che fa gli annunci in negozio come da Ikea, vorrebbero un acrokkio che dopo aver campionato una o piu voce (la sua quella della socia e di qualche altro dipendente ) potesse far enunciare a queste voci registrate le frasi create sul momento da un coputer della direzione .
Che voi sappiate esiste qualche software che mi permette di fare una cosa del genere .
Un Saluto
Kobaiachi
Re: Campinatore e di voci e riproduttore di frasi :)
Inviato: sab 2 gen 2010, 16:08
da nik600
Ciao
ti serve un server TTS (Text To Speech).
Purtroppo il TTS con lingua italiana, soprattutto restringendo il campo ai soli software opensource non da gosse possibilità.
A livello professionale l'unica soluzione che offre risultati professionali è Loquendo che ha un costo relativamente importante (dipende da molte cose ma diciamo che almeno 1000 euro devi spenderli).
Qui puoi provare la loro demo
http://tts.loquendo.com/ttsdemo/default ... anguage=it
In alternativa ad un prezzo decisamente più abbordabile c'è Cepstral (sui 30 euro circa) anche se già a livello di demo si nota la differenza
http://cepstral.com/
Non conosco soluzioni accettabili che siano opensource e gratuite.
Per quanto riguarda poi la creazione di una voce "custom" non esiste qualcosa che funzioni "out of the box".
Ovviamente puoi sempre contattare società come le 2 che ti ho citato e farti creare delle voci sulla base delle tue campionature, ma è una attività che richiede diverso tempo.
Personalmente ho realizzato un server web che con un minimo di php si interfaccia a Cepstral, tramite sox creo al volo l'mp3 e poi ne faccio lo streaming da un player flash.
Ciao
Re: Campinatore e di voci e riproduttore di frasi :)
Inviato: sab 2 gen 2010, 19:12
da absinthe
confermo: il problema principale è accumulare dati per addestrare l'HMM sugli mfcc o lpc (in base a cosa usi) e - se il motore li supporta- gestire pitch e vari altri parametri sovrasegmentali. se il vocabolario è limitato la cosa è semplice ma è come con gli ocr: più vuoi materiale pronto più devi pagare il tempo speso dalla compagnia per l'addetramento.
io contattai loquendo per ASR tempo fa ma il loro commerciale non pareva interessato al deployment che proponevo io (sistema di riconoscimento da integrare in moodle et similia per una rete di e-learning a livello nazionale) e mi sconsigliò (!!!) l'utilizzo dell'api per ASR. detto fra noi so che l'ASR ha ancora alcuni problemi perchè lavora bene solo in condizioni controllate (a-law/gsm) mentre per il tts sono non solo sono la migliore (unica?!) azienda italiana ma anche una delle più importanti realtà _modiali_ (mi pare che siano le loro api a fare parlare il tom-tom).
se ti interessa ti forniscono a titolo gratuito le api per 30 gironi (questo proposero a me per l'ASR) per capire a che livello sono.
io però dovevo lavorere in c++ non so cosa esista di già pronto per integrare applicativi in php o roba simile.
se voui puoi leggere di festival e di festvox che da linee guida per costruire una voce sintetica a partire da quelle reali. il problema è che per ora l'engine di sintesi si basa su mbrola che non è il massimo in termini di realismo. esiste il progetto sms-festival ma non so a che punto è.
ciao,
M
PS: non ricordo che vincoli di licenza ci siano!
Re: Campinatore e di voci e riproduttore di frasi :)
Inviato: sab 2 gen 2010, 20:07
da gohanz
Festival puo' lavorare in modalita' server. Inoltre ha due voci Italiane Mbrola che sono di buona qualita'.
Codice: Seleziona tutto
festival --server
server Sat Jan 2 19:53:57 2010 : Festival server started on port 1314
Re: Campionatore e di voci e riproduttore di frasi :)
Inviato: sab 2 gen 2010, 20:56
da nik600
personalmentenon credo che la qualità di Festival non sia professionale tra l'altro non so bene quale sia il supporto del progetto in generale, l'ultima volta ci avevo lavorato nel 2005.
Con questo ovviamente non voglio offendere chi ha lavorato a Festival, è solo una considerazione sul prodotto ed in particolar modo sulla voce italiana.
Detto questo, per quanto riguarda gli ASR (che non centrano molto con la domanda iniziale) il discorso diventa molto più complicato, le integrazioni solitamente non si fanno a livello di API ma è preferibile usare delle piattaforme che supportino gli standard VXML o MRCP a livello più basso, viene introdotto il concetto di grammatica o modello del linguaggio, n-best ecc ecc.
Per capirci, il vantaggio di VXML è che si può mettere un file xml su un server web (o generarlo dinamicamente) e la piattaforma processa il file dando come risultato un'output nel caso dell'ASR o audio nel caso di TTS.
Ad ogni modo, per non divagare troppo quello che consiglio a kobaiachi è di testare cepstral, credo sia il compromesso migliore per fare una demo (e poi valutare se usare Loquendo)
Questo è del semplicissimo codice php che genera un mp3 chiamando un'url del tipo
http://server/tts.php?test=pippo
Il file fa un'md5 della stringa da convertire, in questo modo si genera un meccanismo di caching che evita di processare con il tts una stringa per la quale esiste già la conversione
Codice: Seleziona tutto
<?php
$testo_da_tradurre = $_GET["text"];
$path = "/data/tts/traduci".md5($testo_da_tradurre);
$result = "/data/tts/prompt".md5($testo_da_tradurre);
if(!file_exists($result)){
file_put_contents($path,$testo_da_tradurre);
system("swift -n Vittoria-8kHz -f $path -o $result");
system("sox $result -r 8000 $result.mp3");
}
header("Content-Type: audio/basic");
if($_GET["type"]=="au"){
readfile($result);
}else{
readfile($result.".mp3");
}
?>
Ciao
Re: Campionatore e di voci e riproduttore di frasi :)
Inviato: sab 2 gen 2010, 21:17
da kobaiachi
Ragazzi grazie delle risposte
per ora provero come mi avete consigliato con cepstral e poi vedro cosa ne pensano le titolari .
sinceramente per me è piu un fastidio mettere su questa infrastruttura in quanto ho deciso per scelta di occuparmi solo di networking in ambiente cisco e juniper e mettersi li a giocare con windows e compagnia bella non mi va propio purtroppo sono vecchi lavori che ogni tanto ritornano .....
un Saluto
kobaiachi.
Re: Campionatore e di voci e riproduttore di frasi :)
Inviato: dom 3 gen 2010, 13:34
da absinthe
nik600 ha scritto:Detto questo, per quanto riguarda gli ASR (che non centrano molto con la domanda iniziale) il discorso diventa molto più complicato, le integrazioni solitamente non si fanno a livello di API ma è preferibile usare delle piattaforme che supportino gli standard VXML o MRCP a livello più basso, viene introdotto il concetto di grammatica o modello del linguaggio, n-best ecc ecc.
Offtopic: ho citato l'asr come esempio perchè è stato l'unico contatto che ho avuto con la società in relazione ad un progetto commerciale. era per far capire che probabilmente esiste pure la possibilità di fare test gratuiti. ciò detto il prodotto ASR della loquendo è per _speaker_ recognition non _speech_ recognition. lì si lavora solo in c/c++, al più alcuni file di configurazione sono in xml e non c'è grammatica solo statistica (al più apprendimento supervisionato con SVM).
M