Salta al contenuto principale

Contenuto del pacchetto mbrolita

di Donato Taddei
su nvda, 16\03\2008, h. 15.15.

        Ed eccomi al terzo messaggio con Mbrolita: 

Ed ora, un po' di pubblicità

:

ancora qualche strafalcione è andato a posto
ma altri ne spuntano e la mia speranza di non toccare il codice per qualche giorno è per oggi sfumata. 

Come da oggetto
 questo messaggio descriverà quanto troverete nel pacchetto disponibile a breve. 

  Cominciamo dal legalese: 

lo script , l'interprete e tutto il resto, salvo diversamente indicato,
viaggia sotto la licenza GPL della Free software foundation
che troverete nel file copying. 
L'eseguibile smbrola.exe è copytight Faculte politechnique de Mons, free per uso non commerciale e non militare,
le cui condizioni di licenza troverete nel file readme.txt, ovviamente in originale.
Infine il database fonetico it3 è copyright dell'istituto di fonetica e dialettologia
del CNR di Padova le cui ondizioni di uso, nonchà la descrizione dei simboli fonetici Sampa utilizzati,
troverete nel file it3.txt. 
  Componenti fondamentali
senza alcuno di questi file il tutto non funge.
Accanto viene riportata anche l'estensione in byte 

DOPERL   EXE      4096
e l'associata dll
PERL561  DLL   1011712  

è l'interprete  perl, in versione base, differente dall'originale per soli
due piccoli dettagli:
Lanciato con l'Opzione -v vi dice come e quando l'ho compilato e con cosa,
lanciato con l'opzione -h vi manda la schermata di help in italiano. 

Potete utilizzarlol quindi anche al di fuori di nvda e farci gli script che volete, espressioni regolari, ciò che volete.
Non potete usare però estensioni, connettervi a internet tramite script, o simili.
Perciò il tutto pesa un mega e non 25.
Per questo motivo viene distribuito anche il debugger standard di perl e quanto ad esso occore,
di cui dirò brevemente  ai componenti aggiuntivi 
- MBROLA   TXT     50625
è lo script vero e proprio: l'engine sta quasi tutta qui.
è organizzato in apparente disordine:
in testa e in coda si trovano le cose più suscettibili di modifiche in quanto più facilmente raggiungibili. 

é fatto a pezzi, ciascuno introdotto da pochissime righe di commento.
I pezzi sono array, hash e routines.
Calma:
Un array è un insieme di variabili,
separate da virgole che qui per comodità stanno ciascuna in una riga,
Cosi per esempio l'array @lettere contenente l'alfabeto:
@lettere = (
"a",
"b",
"Z"
); 

L'hash è quello che in python chiamano dizionari,
vale a dire un insieme di coppie nome-valore,
sempre racchiuse da virgolette e separate da virgole,
come ad esempio:
%durate = (
"a", 84  # se sono numeri le virgolette possono omettersi
"b", 68 # il cancelletto è per commentare
"z", 70
); 

E le routines infine sono il codice e sono introdotte
dalla parola sub e  delimitate da parentesi graffe.
Presumibilmente l'unica routine di interesse sarà
sub inizializza () {
ABBREV   TXT      3338
-
è il dizionario delle abbreviazioni e sostituzioòni.
La sintassi è banale:
i commenti si fanno col punto e virgola e
quanto alla destra di esso viene ignorato, cosicchè
è possibile inserire commenti anche nelle righe
la prima parola viene sostituita dal resto della riga;
scrivendo
inappropriato cavoli a merenda
ogni volta si incontra inappropriato la sintesi vi dirà: cavoli a merenda
Prossimamente ulteriori dettagli su accenti, apostrofi, e simili. 
- ITBASE            6327
è il file con cui si influenza specificamente la trascrizione fonetica del testo. 

Allo stato governa l'accentazione e pochissimòe altre cose
nella parola cieco ad esempio la c iniziale  è diversa dalla c di co.
Dovrà essere arricchito.
Sarà oggetto di trattazione più dettagliata. 

- SMBROLA  EXE     31232  

l'ho chiamato smbrola e non mbrola perchè differisce in  un dettaglio.
indipendentemente dall'output specificato produce sempre un file mbrola.wave lo suona pure,
laddove il driver standard  deve essere connesso a un device sonoro.
La sintassi della riga di comando è per il resto quella standard
e se avete un vostro file file.pho cotenente la lista di fonemi necessari a sintetizzare una data parola, frase, o anche solo fonema,
giusto quanto si diceva ieri,
potrete ottenerne la vocalizzazione con una riga di comaando
smbrola it3 file.pho mbrola.wav
al solito le opzini -h e -v vi daranno informazioni sulle opzioni disponibili e sulla versione. 

Dopo aver avviato il tutto per la prima volta nella directory di lavoro troverete sempre
un file mbrola.wav con l'ultimo testo sintetizzato
e un file mbrola.pho contenente i fonemi generati dallo script. 

- IT3            6779935
è il database fonetico utilizzato da smbrola. 

synthdrivers\mbrola.py 670
se il zip viene scompattato nella radice di nvda, appena nvda sarà avviato,
sarà compilato tale file e dal menu sintetizzatore
lo si potrà scegliere per avviare la sintesi.
 
 
  Componenti aggiuntivi 
Come detto è tutta roba che riguarda il debugger,
anche lui uno script perl chiamato perl5db.pl
e alcuni moduli con estensione pm: exporter.pm, config.pm e readline.pm
e ci metterò pure un debug.txt contenentile istruzioni per il suo uso, ma in inglese. 

E per oggi basta.
      Don
   
--------------------------------------------------------------------------------

Internal Virus Database is out-of-date.
Checked by AVG Free Edition.
Version: 7.5.516 / Virus Database: 269.6.1/776 - Release Date: 25/04/2007 12.19