[zxspectrum] Re: ZX Spectrum ItaSpeak 1.0 - Demo WAV

  • From: Giacomo Paganelli <detonazione@xxxxxxxxx>
  • To: "zxspectrum@xxxxxxxxxxxxx" <zxspectrum@xxxxxxxxxxxxx>
  • Date: Wed, 28 Sep 2016 14:11:17 +1000

Hey Luca, questo e' fantastico, mi riporta indietro con la memoria!! :)

Proprio come te, nell'83 (credo) creai un programma in assembly per far
parlare in Italiano il mio beneamato Spectrum 48K. Usai lo Spectrum stesso
per digitalizzare la via voce e, con mia grande sorpresa, nonostante la
terribile qualita' del campionamento, la voce era intellegibile. Ovviamente
scrissi una serie di regole per interpretare il parlato, per esempio l'uso
della C come /k/ o /tʃ/.

Ho provato a rintracciare il programma anni fa ma, ahime', ho scoperto che
la mia famiglia ha buttato via tutte le mie cassette, senza informarmi. Ho
perso tutto :(

Ho ascoltato il tuo esempio e ho notato i gap tra i fonemi: ricordo che
ebbi lo stesso problema!!!

Se ti puo' essere di aiuto, risolvetti questo problema eliminando la parte
iniziale e finale dei fonemi - in pratica l'attack e decay - in particolare
le per consonanti. Ogni taglio richiese parecchia pazienza.

Il modo in cui verificai la qualita' dei fonemi "tagliati" fu di creare
parole, vere o finte, con vocali e doppie consonanti e ascoltare se erano
pronunciate correttamente.

Uno schema puo' essere: consonante-vocale-consonante-consonante-vocale

Per la lettera B, un esempio puo' essere "BEBBE". Se il fonema e'
"tagliato" bene, non si sentira' il gap tra le doppie B/

Spero che questo sia di aiuto! Fammi sapere se hai bisogno di altre info.

Ciao,
Giacomo


2016-09-25 9:55 GMT+10:00 Luca Alimandi <luca.alimandi62@xxxxxxxxxxx>:

Ciao a tutti.

Forse ricorderete che questa estate stavo lavorando al miglioramento del
mio vecchissimo programma di sintesi vocale per lo Spectrum.
Per vari mesi ho fatto un lavoro certosino per ottenere dei fonemi della
lingua italiana che fossero sufficientemente comprensibili ed al tempo
stesso ottimizzati sia per occupare il minore spazio possibile nella
memoria, sia per ottenere i migliori risultati attraverso la loro
concatenazione.
Inoltre ho lavorato molto anche alla parte di analisi del testo per
gestire la presenza di vocali accentate, dittonghi, consonanti doppie,
gruppi come ca co cu ce ci ga go gu gh gi ge, ecc.

Ho anche iniziato l'analisi dei numeri presenti nel testo e la
trasformazione in parole, ossia da "2" a "due", o da "350" a
"trecentocinquanta", e così via.
Per rendere meno monotono e più naturale possibile il parlato ho inventato
un metodo per simulare un po' la prosodia, ossia per variare l'intonazione,
l'enfasi,  ecc.

Purtroppo, per mancanza di tempo, queste funzionalità sono rimaste un po'
a metà, e l'editor testuale per immettere le frasi da far leggere allo
Spectrum è addirittura allo stato embrionale... Insomma le cose si stavano
allungando troppo, ed io volevo comunque darvi un'anteprima di quello che
potrebbe essere il risultato finale (anche se c'è sempre spazio ai
miglioramenti).
Così ho pensato di inviarvi il link ad un file WAV di test, tanto per
farvi un'idea di cosa si potrà ascoltare dalla "voce" del nostro amato
Speccy!

Tenete comunque presente che la bassa qualità del file audio è dovuta in
parte alle limitate possibilità hardware dello Spectrum (clock, conversione
D/A, RAM, ecc), in parte alla qualità dell'emulazione (io uso FUSE), e in
parte anche alla difficoltà di reperire e manipolare fonemi di buona
qualità, che, non esistendo per lo Spectrum, ho dovuto creare ad hoc...

Mi farà piacere ricevere le vostre opinioni, ed eventuali idee in merito!
;-)

Ecco il file: https://drive.google.com/file/d/0B2gTtPKDTuD_cFBscEVTWHNDVk0
/view?usp=sharing

P.S. Un premio per chi riesce a capire e trascrivere tutta la frase!

--

|_ /-\



Other related posts: