.: robotitaly.NET :. - la community italiana sulla robotica  

Vai indietro   .: robotitaly.NET :. - la community italiana sulla robotica > Blogs > Blog di Emanuele T.

Rate this Entry

Un trucca voce

Submit "Un trucca voce" to Twitter Submit "Un trucca voce" to Facebook
Posted 08-04-2012 at 12:24 PM by Emanuele Terrasi
Updated 11-08-2014 at 09:32 PM by Emanuele Terrasi (aggiunto video)

Non so se sia capitato a tutti di ascoltare un ricevitore SSB di epoca non recente, che di solito si può trovare presso un radioamatore o si può vedere in qualche film dove ci sia un marconista a bordo di una nave. In questi ricevitori la manopola della sintonia va toccata con molta finezza e quando la frequenza scivola di qualche milionesimo la voce diventa buffa. Non si tratta di un cambiamento del timbro nè di una alterazione della velocità di riproduzione, bensì di una traslazione uniforme di tutto lo spettro fonico verso l'alto (allora fa una voce stridente da paperino) o verso il basso (voce profonda e piena di sussiego). Ho spesso pensato di realizzare un circuito per alterare la voce producendo lo stesso effetto: basterebbero un modulatore e un demodulatore SSB, ma poi ho abbandonato l'idea a causa della difficoltà di ottenere un buon filtro di banda, che dovrebbe essere elettromeccanico o comunque molto accurato. Recentemente sono venuto a conoscenza del modulatore SSB di Weaver: si tratta di un doppio modulatore in cui una prima portante trasla lo spettro fonico verso il basso, attorno allo zero, e una seconda portante lo trasla nuovamente verso l'alto fino alla banda voluta. Il vantaggio è che il filtro di banda, sempre necessario per eliminare lo spettro immagine, operando vicino allo zero è più facile da fare e può essere costituito da un filtro passa basso digitale operante su microcontrollore. Allora ho pensato: se le due portanti di un modulatore di Weaver avessero all'incirca la stessa frequenza, lo spettro fonico del segnale verrebbe riportato là dove era con la possibilità di un piccolo spostamento, cioè avrei proprio l'effetto cercato. Ho avuto la possibilità di consultare un grosso esperto che mi ha confermato la fattibilità del progetto, quindi mi sono buttato. Per realizzare i filtri ho riutilizzato il post precedente intitolato "Filtri digitali DIY" con molte varianti: per esempio ho usato le variabili in formato integer a 16 bit senza limitazioni, ed ho eseguito le relative moltiplicazioni in una variabile ausiliaria a 32 bit (long int) per non andare in overflow. In tal modo divengono utilizzabili tutti i 12 bit forniti dal convertitore ADC. I filtri passa basso sono Chebyshev del sesto ordine, con ondulazione in banda passante (ripple factor) piuttosto grossolana (epsilon=1,5). Si tratta delle solite tre celle del secondo ordine in cascata, la particolarità del Chebyshev consiste in una scelta coordinata dei parametri delle 3 celle in modo che il taglio complessivo risulti particolarmente ripido (e il miglioramento è notevole) ma poi allontanandosi dalla frequenza di taglio la attenuazione è quella che deve essere per un filtro del sesto ordine.
Il risultato? L'effetto c'è ed è del tipo che si aspettava, però mi pare un po' monotono e con qualche rugosità mentre io lo ricordo più misterioso e più vellutato. Forse si potrebbe dire che il sistema digitale, giustamente, ha una voce più robotica.
Posted inUncategorized
Visite 3792 Comments 0 Email Blog Entry
« Prec.     Main     Seguente »
Total Comments 0

Comments

 

Tutti gli orari sono GMT. Attualmente sono le 10:06 AM.


Powered by vBulletin versione 3.8.7
Copyright ©: 2000 - 2018, Jelsoft Enterprises Ltd.