1.1 Sintesi additiva a spettro Fisso
La sintesi additiva è una tecnica di sintesi che ci permette di creare qualuque forma d’onda partendo dalla somma di sinusoidi.
Essa si basa sull’assunto che ogni fenomeno sonoro complesso si possa scomporre in singole sinusoidi ognuna delle quali è caratterizzata da un determinata frequenza, ampiezza e fase. (Fourier)
La sintesi additiva a spettro fisso enuncia che nè la frequenza nè l’ampiezza delle componenti di cui è composto il suono variano nel tempo.
Che cos’è la frequenza?
E’ il numero di oscillazioni che l’onda compie in 1 secondo.
Che cos’è l’ampiezza?
E’ l’energia del segnale, l’intensità, ad un dato momento.
Che cos’è la fase?
La fase è il grado (360°), il radiante (2π) o valore normalizzato (1 – 1) nel quale si trova l’onda ad un dato momento.
L’onda è la proiezione sul piano cartesiano di un moto circolare uniforme.
Essa è rappresentabile attraverso le funzioni trigonometriche di seno e coseno.


Gestire la fase è fondamentale per gestire il segnale, visto come somma di onde.
1.2 Sintesi additiva a spettro fisso: spettri armonici
Lo spettro armonico si ha quando il rapporto delle componenti data una fondamentale (più grave) sono equispaziate.
L’inviluppo spettrale è l’intensità di ogni singola componente armonica sommata sopra la fondamentale.
Affichè la fondamentale sia preponderante è bene che abbia l’intensità maggiore.
Gli spettri armonici producono sempre forme d’onda periodiche, ovvero che si ripetono ad una certa frequenza.
Particolari tipi di tabelle con intensità specifiche creano le c.d. onda a dente di sega, onda quadra, onda triangolare ed impluso.
Onda a dente di sega
Frequenza | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 |
---|---|---|---|---|---|---|---|---|---|
Ampiezza | 1/1 | 1/2 | 1/3 | 1/4 | 1/5 | 1/6 | 1/7 | 1/8 | 1/9 |
Onda quadra
Frequenza | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 |
---|---|---|---|---|---|---|---|---|---|
Ampiezza | 1/1 | 0 | 1/3 | 0 | 1/5 | 0 | 1/7 | 0 | 1/9 |
Onda triangolare
Frequenza | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 |
---|---|---|---|---|---|---|---|---|---|
Ampiezza | 1/1 | 0 | -1/9 | 0 | 1/25 | 0 | -1/49 | 0 | 1/81 |
Impulso
Frequenza | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 |
---|---|---|---|---|---|---|---|---|---|
Ampiezza | 1/1 | 1/1 | 1/1 | 1/1 | 1/1 | 1/1 | 1/1 | 1/1 | 1/1 |
Ciclo
La più piccola porzione dell’onda che si ripete nel tempo.
Fondamentale
La frequenza più grave con l’ampiezza maggiore. Se la fondamentale viene elisa, viene percepita a patto che il periodo della forma d’onda corrisponda all’inverso della frequenza della fondamentale mancante e che ci siano abbastanza componenti armoniche su cui l’orecchio possa ricostruire l’intero fenomeno sonoro.
Il suono periodico
La fondamentale di un qualunque suono periodo è il M.C.D. della componenti presenti. I suoni periodici non è detto che esprimano chiaramente altezze definite.
Il suono aperiodico
Si tratta di un fenomeno sonoro dove non è possibile individuare una porzione che si ripeta nel tempo (ad esempio: rumore bianco, strumenti a percussione, ecc.).
Il suono aperiodico con componenti quasi armoniche
Sono suoni che, sebbene siano “aritmeticamente” a-periodici, le cui componenti possono essere approssimate al periodo: è il caso di componenti molto vicine all’ M.C.D. come 110, 220.1, 330.2, 439.99, ecc.
E’ bene precisare che il suono inarmonico ha sempre una «fondamentale teorica» espressa dal suo M.C.D. che si trova (spesso) sotto la banda audio. Per tale motivo possiamo dire che concretamente sono suoni privi di fondamentale intesa come frequenza percepibile più grave e dall’ampiezza maggiore.
1.3 Vettori e tabelle
Cosa sono le tabelle?
Sono contenitori dotati di un indice associato ad un valore. Il dominio è formato dai valori d’ampiezza (normalizzati), il co-dominio è formato dai punti della tabella.
Cos’è un vettore?
Il vettore o array è una serie ordinata di valori a cui è associato un indice.
– – – – –
– – – – –
Ipotizziamo di campionare l’audio alla frequenza di 44100 Hz con profondità di 24bit.
Cosa significa?
Per ogni secondo vengono prelevati 44100 dati d’ampiezza.
Il bit depth è dato dalla potenza base 2 elevato 24 (16.777.216) che rappresenta la disponibilità di bit (0 1 0 0 1 ecc.) con cui viene descritto il campione prelevato. Ogni bit corrisponde all’incirca a 6 dB di intensità: 16 bit riescono a ricostruire un’intensità di 96 dB mentre 24 bit 144 dB.
Dato che i tempi (asse x) devono essere trasformati in “n” campioni, supponendo che il sample rate (SR) sia di 44100, ogni ciclo della nostra forma d’onda sarà formato da 44100/100 = 441 campioni.
Se l’ SR fosse stato di 48000, ogni ciclo sarebbe stato descritto da 480 campioni.
a) Come può, quindi, l’oscillatore riprodurre un ciclo in 441 o di 480 campioni se in tabella lo stesso ciclo è memorizzato con un numero di campioni diverso (512, 1024, o altra potenza di 2)?
b) Come si può creare un ciclo in “n” campioni che siano diversi da quelli memorizzati in tabella?
La risposta è «approssimazione»: l’oscillatore non legge tutti i valori della tabella, ma salta, doppia, deriva alcuni valori. Si calcola il passo di incremento (SI = sampling increment) che permette di “scandire” la tabella secondo il numero di campioni richiesto.
- Frequenza di campionamento del sistema (SR) = 44100
- Lunghezza tabella disponibile (TL) = 1024
- Frequenza richiesta dall’utente (F) = 100 Hz
Con questi valori abbiamo un ciclo che consta di 441 campioni
(SR/F) [44100/100]
Di conseguenza la tabella dovrà essere letta con un passo di incremento
S.I. = TL/(SR/F) = 1024/441 = 2.32199546485 passi incrementali dell’indice della tabella.
L’oscillatore leggerà il valore che si trova nella posizione 0, poi 2.32199546485, 4.6439909297, 6.96598639455, 9.2879818594, ecc. ecc.
In questo modo l’oscillatore è in grado di scandire l’intera tabella (un ciclo) in soli 441 campioni generando un’onda il cui periodo è 1/100 di secondo, cioè 100 Hz.
In generale, quindi, la formula per calcolare S.I.
S.I. => TL/(SR/F) => TL * F / SR
Saltando da un valore ad un altro si creano gradini ancora più grandi di quelli che si avrebbero leggendo tutti i valori in successione. A parità di lunghezza della tabella, questa imprecisione aumenta via via che la frequenza aumenta.
Tenendo fissi i valori di SR e TL di cui sopra e cambiando solo F, si vede che, se a 100 Hz si saltano 2.32199546485 campioni a ogni passo, a 400 Hz S.I. diventa 9.28798185941, a 800 Hz è 18.5759637188. La cosa assume proporzioni notevoli con frequenze molto alte: a 5000 Hz, SI è 116.099773243, a 15000 Hz è 348.299319728 a e 20000 Hz (prossima a Nyquist) è 464.399092971 (solo due campioni per ogni ciclo).
NYQUIST
Il teorema del campionamento di Nyquist-Shannon definisce la minima frequenza necessaria per campionare un segnale analogico e per poterlo ricostruire. Il teorema afferma che, data una funzione nella sua conversione A/D, la minima frequenza di campionamento - per evitare aliasing (distorsione, sotto campionamento) e perdite di informazioni - deve essere maggiore del doppio della sua frequenza massima.
Quando diciamo ad un software SR = 44100, stabilite:
- il minimo intervallo temporale che il software può concepire, calcolare, gestire è pari a 1/SR (la sua realtà temporale)
- la scala dei tempi che è formata da multipli di 1/SR (vive in 1/SR)
- Se la frequenza di campionamento = 44100
- E la lunghezza tabella T.L. = 1024
- La frequenza richiesta = 100 Hz
- 441 campioni (SR/F)
- S.I. = T.L./441 = 1024/441
Inseriamo tanti indici quanta la è freq. di campionamento (a 44100, per 441 Hz ci servono 100 punti, per un’onda di 220,5 Hz 200 punti, per un’onda di 110,25 Hz 400 punti) oppure possiamo utilizzare indici frazionari interpolando gli indici mancanti.
Questa tecnica si chiama interpolazione lineare che dato il punto A e B, calcola un valore intermedio. Questa tecnica di permette di ridurre la distorsione lineare, ovvero i gradini del campionamento.
Le interpolazioni sono
– LINEARE (divisione lineare in segmenti dati A e B).
– POLINOMIALE (quadratica, cubica) con maggiore riduzione della distorsione armonica (delle componenti).
Apri un sito e guadagna con Altervista - Disclaimer - Segnala abuso - Privacy Policy - Personalizza tracciamento pubblicitario