# Sintesi granulare

La sintesi granulare è un metodo base della sintesi del suono che opera con degli elementi acustici elementari chiamati microsound o grani.

## Il metodo

La sintesi granulare è spesso basata sullo stesso principio del campionamento ma include anche tecnologie di tipo analogico. L'idea è quella di creare suoni complessi a partire da una grossa quantità di suoni semplici. I grani sono di durata compresa tra 1 e 50 millisecondi e possono essere combinati e riprodotti insieme a velocità, fase e ampiezza variabili. Il risultato non è un unico tono, ma una nuvola di suoni che viene manipolata in maniera differente da qualsiasi altro suono naturale o da qualsiasi altro metodo di sintesi. Cambiando la forma d'onda, l'inviluppo, la durata, la posizione spaziale e la densità dei grani possono essere creati molti suoni diversi. Il risultato può essere utilizzato nella musica o come materiale per ulteriori modifiche con altri metodi. Le possibilità di effetti che possono essere prodotti includono la modulazione d'ampiezza, il time stretching, lo scattering stereo o multicanale, il riordinamento random, il morphing.
La teoria della sintesi granulare nasce dalle ricerche di Dennis Gabor su come l'uomo comunica e ascolta. In passato c'è stata una disputa fra Gabor e il compositore greco Iannis Xenakis che rivendicava l'invenzione di questa tecnica. Curtis Roads è spesso accreditato come la prima persona che ha implementato una tecnica digitale di sintesi granulare. Il compositore canadese Barry Truax è stato uno dei primi a implementare una versione sistema real-time di questa tecnica di sintesi.
Dennis Gabor considerava il suono come una somma di funzioni gaussiane elementari traslate nel dominio del tempo e della frequenza. Queste funzioni elementari venivano chiamate acoustic quanta ed usate come base per la creazione di un suono. Secondo la formulazione di Gabor un segnale $x(t)$ era considerato come una combinazione di diverse versioni $g_{mk}(t)$ di una finestra di sintesi $g(t)$:
    $x(t)=\sum _{m=1}^{|m|}\sum _{k=1}^{|k|}a_{mk}g_{mk}(t)$
con:
    $g_{mk}=g(t-m\alpha T)\cdot e^{jk\beta \Omega t}$
l'intervallo di tempo $\alpha T$ e l'intervallo di frequenza $\beta \Omega$ soddisfano la relazione $\Omega T=2\pi$ e $\alpha \beta$≤$1$.
Iannis Xenakis sviluppò la sintesi granulare come esigenza nel periodo dei nastri magnetici in cui non c'era una grande varietà di timbri e di suoni da poter manipolare, ma solo oscillatori e filtri. In questo contesto si ottenevano suoni in maniera dinamica ritagliando parti di nastri e riassemblando il tutto assieme. Da qui si sviluppò la sua tecnica che consisteva nello specificare la durata e la velocità (frequenza) di riproduzione di ogni singolo grano.

## Approcci

Si possono individuare due approcci differenti alla sintesi granulare:
* sound granulation: basato sui grani sonori acquisiti da una sorgente o una registrazione precedente
* grani sintetici: basato sulla sintesi astratta di grani

### Sound granulation

La costruzione del suono attraverso grani avviene mediante la loro sovrapposizione con il metodo dell'Overlap and Add cioè attraverso sovrapposizioni parziali dei grani. Con questo sistema è possibile riprodurre suoni reali in maniera accurata e successivamente modificarli nelle loro caratteristiche dinamiche. Ogni singolo grano è moltiplicato per una finestra temporale che provvede a creare fade-in e fade-out. I grani lunghi tenderanno a mantenere l'identità timbrica del suono originale. I grani corti tenderanno invece ad assumere un carattere di tipo impulsivo (cioè un comportamento come quello che si riscontra nell'attacco di ogni suono).
È importante l'organizzazione temporale dei grani per evitare artefatti a causa delle discontinuità. Questo rende il controllo del suono creato molto delicato e meritevole di attenzione. È possibile estrarre grani da differenti tipologie di suoni per creare texture ibride ad esempio cominciando da una texture e finendo con un'altra texture.

### Sintesi astratta

In questo caso i grani sono forme d'onda arbitrarie il cui inviluppo e la cui ampiezza sono funzioni gaussiane. I grani sono organizzati in una nuvola su di un piano cartesiano con in ordinata i tempi e in ascissa le frequenze.
Nella sintesi granulare asincrona si immagina di scorrere l'asse dei tempi, all'incontro con un grano posizionato in alto o in basso a seconda della sua frequenza si attiva e si fa cominciare l'esecuzione. Ogni grano avrà il suo timbro, la sua durata e la sua frequenza e il suono sarà creato dalla somma di tutti i singoli grani che cominciano via via che si incontrano nello scorrere dell'asse dei tempi creando un effetto complessivo.
Alcuni esempi sono:
* un applauso formato dalle mani di molte persone che cominciano ed eseguono il gesto in maniere e in momenti diversi
* il cadere delle foglie dato dalla somma del suono di ogni singola foglia
Con questo metodo è possibile modellare molti suoni rumorosi o di tipo texture perché le proprietà statistiche complessive, in questi casi, sono più importanti dell'esatta evoluzione del suono. Proprio come nel mondo reale quando ci sono realizzazioni multiple dello stesso evento/fenomeno (come negli esempi sopra riportati) ci si può aspettare questo tipo di suoni.
La durata dei suoni caratterizza la texture. Una durata breve produce un suono rumoroso, una media durata (decine di millisecondi) produce gorgoglio/sbattimento, una durata lunga (centinaia di millisecondi) suoni come tremolo aperiodici o jittering della posizione spaziale. Quando i grani sono distribuiti in una regione di frequenze limitata il suono assumerà un carattere da cui si riconosce il pitch (la nota corrispondente), mentre se la regione di frequenze è ampia la texture avrà un carattere complessivo più confuso.

## Libri

* Curtis Roads Microsound, 2001, Cambridge, MIT Press, ISBN 0-262-18215-7.
* E. R. Miranda Computer Sound Design: Synthesis Techniques and Programming, 2002, Oxford, Focal Press, ISBN 0-240-51693-1.

## Software

* Chaosynth
* Reason
* Density

## Linguaggi di programmazione

* Csound linguaggio e software per la musica che include la tecnica di sintesi granulare
* SuperCollider linguaggio di programmazione per sintesi audio in real time
* Max/Msp linguaggio di programmazione grafico per audio e video in real time
* Puredata (Pd) linguaggio di programmazione grafico per audio e video in real time
* ChucK linguaggio di programmazione audio per tecniche di sintesi in real time
* Real-time Cmix linguaggio di programmazione audio per tecniche di sintesi in real time che includono molti algoritmi di sintesi granulare