Realizzazione di algoritmi avanzati nei sintetizzatori musicali digitali

Transcript

Realizzazione di algoritmi avanzati nei sintetizzatori musicali digitali
Rivista Italiana di Acustica
Vol. 38 (2014), N. 3-4, pp. 1-16
ISSN: 2385-2615
www.acustica-aia.it
REALIZZAZIONE DI ALGORITMI AVANZATI NEI SINTETIZZATORI
MUSICALI DIGITALI
ADVANCED ALGORITHMS FOR AUDIO QUALITY IMPROVEMENT
IN MUSICAL KEYBOARDS INSTRUMENTS
Andrea Primavera *
Università Politecnica delle Marche
* Indirizzo dell’autore di riferimento - Corresponding author’s address:
Via Brecce Bianche 1 - 60100, Ancona, Italia
e-mail: [email protected]
(Ricevuto il 15/07/2014, accettato il 25/02/2015)
RIASSUNTO
L’evoluzione del linguaggio musicale è stata fortemente influenzata dal progresso scientifico e dai processi tecnologici utili alla creazione di dispositivi e strumenti musicali.
Anche il ruolo dei fabbricanti di strumenti si è adattato a questa evoluzione, ed oggi alla figura dell’artigiano si affianca quella dell’ingegnere. Approcci differenti ma accomunati dal fine
ultimo di modificare i mezzi di espressione musicale adattandoli alle esigenze dell’odierno contesto culturale.
Su queste basi, l’articolo analizza le principali tecniche utilizzate per il miglioramento della
qualità audio degli strumenti musicali elettronici considerando le più avanzate tecniche di processamento digitale.
ABSTRACT
The evolution of musical language has been strongly influenced by scientific progress and
technological processes useful for the production of sounding devices and methodologies.
Also, the role of musical instruments manufacturers has adapted to this change, and now the
figure of the engineer joins that of traditional craftsman. Different approaches, united by the ultimate goal of altering the means of musical expression, adapting to the needs of today's sociocultural context.
On this basis, the main techniques used to improve the audio quality of electronic musical
instruments taking into consideration the most employed audio effect and the cutting edge technologies are widely analyzed and described in this article.
Parole chiave: Elaborazione del Segnale Digitale; Effetti audio; Tastiere Musicali.
Keywords: Digital Signal Processing; Digital Audio Effects; Music Keyboards.
© Associazione Italiana di Acustica, 2014
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
1. Introduzione
La tecnologia è lo strumento che ha permesso alla musica di svilupparsi nel tempo
garantendo agli artisti sempre più ampie possibilità di comunicazione e di espressione.
L’evoluzione scientifica che ha determinato la costruzione di pianoforti o violini, oggi,
grazie alle tecniche di elaborazione del segnale digitale, permette la realizzazione di
nuove metodologie e strumenti per la produzione del suono.
Ad un contesto prettamente artigianale si è quindi affiancata l’attività ingegneristica
volta a modificare i mezzi di espressione musicale adattandoli all’odierno contesto socio
culturale.
A partire dagli anni ‘70 il progresso tecnologico ha permesso, attraverso l'ingegneria
del suono e le tecniche di elaborazione del segnale digitale, di riprodurre artificialmente
molti effetti sonori utilizzabili in ogni forma di espressione musicale. Da allora, la creazione e la recente diffusione di sistemi commerciali integrati (embedded) ad elevata capacità computazionale hanno gettato le basi per lo sviluppo di prodotti commerciali innovativi, caratterizzati da elevata qualità sonora, espressività e realismo.
Al fine di evidenziare i più recenti contributi scientifici ed i futuri margini di sviluppo caratteristici in questo settore dell’acustica musicale, nel presente manoscritto vengono riportati i principali e più importanti risultati ottenuti nel corso dell’attività svolta
dall’autore durante il dottorato di ricerca effettuato presso l’Università Politecnica delle
Marche in collaborazione una azienda leader nella produzione di tastiere musicali elettroniche.
In particolare, questo articolo ha lo scopo di fornire una panoramica degli effetti audio più utilizzati prendendo in considerazione le tecnologie d'avanguardia e i più recenti
algoritmi utili a garantire una riproduzione sonora ad elevata qualità negli odierni strumenti elettronici.
Sebbene focalizzata sull'analisi e sulla realizzazione di effetti audio, l’attività di ricerca si è concentrata anche sugli aspetti implementativi di tali algoritmi. In dettaglio,
per la maggior parte delle tecniche analizzate, sono state proposte implementazioni in
tempo reale utilizzando piattaforme Digital Sound Processing (DSP) commerciali, evidenziandone gli espedienti ed i trucchi introdotti al fine di soddisfare i vincoli di progettazione dettati dall’azienda e diminuendo la richiesta del costo computazionale necessario.
Nei paragrafi seguenti sono descritti in dettaglio i risultati scientifici dell’attività di
ricerca per gli effetti audio più comunemente utilizzati negli strumenti di natura elettronica: riverberazione artificiale, analisi ed emulazione di sistemi non lineari, tecniche di
audio morphing ed equalizzazione di ambienti.
2. Riverberazione Artificiale
Tra gli effetti audio, il riverbero è sicuramente il più utilizzato da sempre [1]. Tipicamente prodotto utilizzando strutture ricorsive (i.e., filtri IIR) [2], che non sempre garantiscono un'elevata qualità dell'effetto sonoro simulato, nuovi sistemi per la riverberazione artificiale basati su tecniche di convoluzione veloce, stanno affiancando gli approcci tradizionali [3]. Partendo da questa considerazione, una parte considerevole
dell’attività di ricerca è stata focalizzata sull’analisi e sull’implementazione di tecniche
avanzate per il calcolo della convoluzione a basso carico computazionale (workload) e
ridotta latenza I/O, vincoli progettuali indispensabili per l’utilizzo di tali algoritmi in
strumenti musicali elettronici.
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 2
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
2.1 Fast Convolution
La convoluzione rappresenta una delle operazioni più utilizzate nel campo del elaborazione del segnale digitale. Considerando un sistema lineare tempo invariante la convoluzione lineare tra un ingresso x e una risposta all’impulso h è definita come segue:
N −1
(1)
y[n] = x[n] ∗ h[n] = ∑ x[n − m]h[m]
n =0
dove N è la lunghezza della risposta all’impulso (IR). Ampiamente utilizzata nel settore dell’acustica musicale per l’esatta riproduzione di sistemi lineari, l’impiego di questa operazione per la produzione di riverbero artificiale a bassa latenza comporta
un’elevata richiesta in termini di prestazioni computazionali. Per questo motivo, sono
stati effettuati numerosi sforzi negli ultimi decenni in questo campo, portando alla definizione di due principali modalità di calcolo della convoluzione in funzione del dominio
di applicazione: dominio del tempo e della frequenza.
Sebbene semplice da implementare in contesti in tempo reale a bassa latenza, la
convoluzione nel dominio del tempo risulta particolarmente inefficiente specialmente
per lunghe risposte all’impulso. Per questo motivo, al fine di ridurre il carico computazionale richiesto, è stato proposto l’approccio di fast convolution per il calcolo di questa
operazione nel dominio della frequenza. Sfruttando il Teorema di Convoluzione, per il
quale la trasformata di Fourier della convoluzione di due funzioni è il prodotto delle trasformate delle funzioni stesse, gli algoritmi di fast convolution permettono di ridurre
notevolmente il carico computazionale richiesto per l’operazione di filtraggio rispetto
alla classica implementazione nel dominio del tempo. Classici esempi di algoritmi utilizzati per il calcolo veloce della convoluzione nel dominio della frequenza sono
l’Overlap and Save (OLS) e Overlap and Add (OLA) [4]. Tuttavia, sebbene tali approcci permettano di ridurre notevolmente il carico computazionale dell’operazione di filtraggio, queste tecniche non garantiscono il rispetto del vincolo di ridotta latenza I/O dal
momento che per definizione la dimensione del blocco di campioni (framesize)
dell’algoritmo deve risultare maggiore/uguale alla lunghezza della risposta all’impulso
filtrata (e.g., se la risposta all’impulso di una stanza di medie dimensioni presenta un
tempo di riverberazione (T60) di circa uno secondo, la latenza I/O risulterà maggiore/uguale ad uno secondo).
Pertanto nel corso degli anni sono state proposte nuove tecniche utili ad ottenere una
convoluzione a zero latenza sfruttando il principio di partizionamento della risposta
all’impulso: Uniform Partitioned Overlap and Save (UPOLS) e Non Uniform Paritioned
Overlap and Save (NUPOLS) [5]. Nel primo approccio la risposta all’impulso viene
partizionata in blocchi della stessa dimensione, mentre nel secondo approccio la risposta
viene partizionata in blocchi di dimensione sempre maggiore. Risulta importante considerare che il valore della latenza I/O in questi algoritmi è definito dalla dimensione del
blocco più piccolo utilizzato per il calcolo della convoluzione.
Al fine di fornire un’analisi completa e soddisfacente della fattibilità implementativa
di un effetto di riverberazione artificiale sfruttando un algoritmo di convoluzione a bassa latenza su una piattaforma DSP general purpose, è stata proposta un'implementazione
efficiente di un algoritmo di fast convolution (UPOLS/NUPOLS) applicata ad un sistema integrato (i.e., OMAPL137 TI platform costituito da un DSP floating point ed un
ARM9 a entrambi a 300 MHz) [6].
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 3
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
Sono stati introdotti numerosi espedienti DSP con l’obiettivo di ridurre il carico
computazionale richiesto dall’operazione di convoluzione:
- partizionamento uniforme/non uniforme della risposta all’impulso;
- gestione efficiente della memoria attraverso istruzioni DMA non bloccanti per la parallelizzazione delle operazioni di elaborazione (i.e., moltiplicazioni complesse) e lettura/scrittura dei dati verso la memoria esterna;
- utilizzo di un approccio psico-acustico per la riduzione del numero di moltiplicazioni
complesse richieste.
I risultati ottenuti sono riportati in Figura 1 dove è raffigurato il carico computazionale in funzione della lunghezza della risposta all’impulso. In dettaglio nei grafici vengono indicati:
- massimo carico computazionale per l’implementazione standard (a);
- medio carico computazionale per implementazione standard (b);
- massimo carico computazionale utilizzando l’approccio psicoacustico (c);
- medio carico computazionale utilizzando l’approccio psicoacustico (d).
In particolare si può notare che, rispettando il vincolo progettuale di latenza I/O corrispondente a 64 campioni e sample rate pari a 48 kHz, risulta possibile effettuare una
convoluzione stereo con una risposta all’impulso di lunghezza pari a 6 secondi utilizzando il 50% della potenza di calcolo del DSP. Si sottolinea che la dimensione del blocco di campioni è indicata con il parametro K. Nel caso di una convoluzione a partizionamento non uniforme il termine K1 indica la dimensione del blocco di campioni della
prima convoluzione mentre il termine K2 indica la dimensione del blocco di campioni
della seconda convoluzione.
a)
c)
b)
d)
Fig. 1 - (a) UPOLS carico computazionale. NUPOLS carico computazionale con
3 differenti partizionamenti: (b) K1 = 64, K2 = 512; (c) K1 = 64, K2 =
1024; (d) K1 = 64, K2 = 2048. – (a) UPOLS workload. NUPOLS workload with 3 different partitioning: (b) K1 = 64, K2 = 512; (c) K1 = 64, K2
= 1024; (d) K1 = 64, K2 = 2048.
I risultati presentati dimostrano la fattibilità di tale approccio e gettano le basi per lo
sviluppo di prodotti commerciali innovativi ad elevata qualità sonora sfruttando piattaforme DSP a basso costo.
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 4
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
Sulla base delle stesse considerazioni, è stata proposta una implementazione per architetture Personal Computer (PC) di un algoritmo per il calcolo veloce della convoluzione [7] considerando: un'implementazione multithreading, espedienti psico-acustici, e
un partizionamento automatico e non uniforme della risposta all’impulso.
Sono stati inoltre proposti differenti algoritmi, [7,8], per la riduzione del carico
computazionale richiesto dagli approcci di fast convolution basati su tecniche di analisi
della risposta all’impulso quali Energy Decay Relief (EDR) e Absoulte Threshold of
Hearing (ATH). In dettaglio questi algoritmi permettono di ridurre il numero di moltiplicazioni complesse richieste durante il calcolo dell’operazione di convoluzione limitandosi a valutare solamente quelle componenti in frequenza che producono un comportamento apprezzabile della caratteristica acustica definita nella risposta all’impulso.
2.2 Riverberatore Ibrido
Sempre nel campo della riverberazione artificiale sono state proposte alcune tecniche per l'approssimazione dell'operazione di convoluzione con strutture ricorsive a basso costo computazionale (i.e. FIR/IIR filter network) [9-12]. In dettaglio questi approcci
permettono di riprodurre le caratteristiche acustiche di un certo ambiente attraverso una
data risposta all’impulso utilizzando però una struttura computazionalmente molto efficiente denominata riverberatore ibrido.
La Figura 2 riporta lo schema a blocchi della struttura riverberante impiegata negli
approcci proposti. Questa struttura risulta principalmente composta da due dispostivi:
l’early reflection device ed il late reflection device; il primo permette l’esatta emulazione delle prime riflessioni mediante l’impiego di un filtro FIR, mentre il secondo, composto da una rete di filtri IIR, permette la simulazione della coda di riverbero garantendo un basso costo computazionale.
Fig. 2 - Schema a blocchi del riverberatore Ibrido. – Overall scheme of hybrid
reverberator.
In particolare il principale elemento di innovazione dell’algoritmo proposto ricade
nella procedura definita per l’autodeterminazione dei parametri della struttura riverberante.
In maggior dettaglio, definita la risposta all’impulso da emulare è possibile trovare,
attraverso un procedimento automatico basato sulla minimizzazione dell’errore, la lunghezza esatta del filtro FIR utilizzato per la riproduzione delle early relfections ed i parametri della struttura ricorsiva impiegata per l’approssimazione delle late reflections.
Tale procedura di autodeterminazione dei parametri si basa su un algoritmo utilizzato per la stima del gradiente denominato Simultaneous Perturbation Stochastic Approximation (SPSA) ed una serie di funzioni di minimizzazione impiegate per valutare il
grado di somiglianza acustico tra le due risposte all’impulso, artificiale e reale. A tal fine, è stato affrontato uno studio comparativo sulle funzioni di minimizzazione utili a garantire un elevato grado di fedeltà e qualità audio. In [13] è stato dimostrato che la minimizzazione di una singola funzione nel dominio cepstrale (i.e., MFCC, PLP, o PNCC)
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 5
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
permette di ottenere una buona riproduzione ed emulazione delle caratteristiche tempo/frequenza della risposta all’impulso originale.
Al fine di dimostrare l’efficacia dell’approccio presentato, è stata presa in considerazione in [12] la riproduzione della caratteristica acustica del teatro “Le Muse”di Ancona. Misurata la risposta all’impulso del teatro, la stessa è stata utilizzata nella procedura
di autodeterminazione dei parametri del riverberatore ibrido precedentemente descritto.
Differenti test sono stati condotti al fine di valutare la qualità dell’effetto di riverberazione prodotto, fornendo confronti con le tecniche attualmente presenti nello stato
dell’arte in termini di misure oggettive e soggettive, e considerando un implementazione in tempo reale su una piattaforma integrata. In merito ai confronti oggettivi effettuati,
Figura 3 riporta le risposte all’impulso reale ed artificialmente ottenute utilizzando
l’approccio presentato in [12] del teatro “Le Muse”, mentre Figura 4 presenta le EDR
calcolate dalle risposte all’impulso in questione.
(a)
(b)
Fig. 3 - (a) Risposta all’impulso reale. (b) Risposta all’impulso artificiale derivata
con l’approccio proposto [12]. – (a) Real impulse response. (b) Artificial
impulse response derived with the proposed approach [12].
a)
b)
Fig. 4 - Energy decay relief: (a) Risposta all’impulso reale. (b) Risposta
all’impulso derivata con l’approccio proposto [12]. – Energy decay relief: (a) Real impulse response. (b) Artificial impulse response derived
with the proposed approach [12].
L’efficacia dell’approccio presentato è pertanto dimostrata dal momento che la risposta reale e quella artificiale mostrano lo stesso contenuto armonico e lo stesso tempo
di riverberazione.
Sempre in merito alla valutazione oggettiva dell’algoritmo e al fine di evidenziare il
miglioramento in termini di prestazioni per la rappresentazione acustica dell’ambiente
sfruttando la piattaforma DSP OMAPL137, sono stati analizzati il carico computazionale (workload) e la quantità di memoria interna . In dettaglio i valori ottenuti sono stati
confrontati con quelli richiesti per effettuare, sulla stessa piattaforma e rispettando i medesimi vincoli progettuali (i.e., sample rate 48 kHz e dimensione del
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 6
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
blocco di campioni pari a 64), l’emulazione della caratteristica acustica del teatro “Le
Muse” utilizzando un algoritmo di Fast Convolution basato sul partizionamento non uniforme della risposta all’impulso [6]. Il carico computazionale richiesto per la riproduzione dell’effetto di riverberazione è del 26% e del 36% utilizzando rispettivamente il
riverberatore ibrido [12] e l’algoritmo di fast convolution [6]. Il consumo di memoria
interna richiesto per la riproduzione dell’effetto di riverberazione è di 10 kB e di 100 kB
utilizzando rispettivamente il riverberatore ibrido [12] e l’algoritmo di fast convolution
[6]. Anche in questo caso risulta evidente il miglioramento delle prestazioni ottenute,
specialmente in termini di riduzione della memoria interna.
Infine, sono stati effettuati una serie di test acustici soggettivi basati sulle norme ITU
[14] utilizzando la metodologia MUltiple Stimuli with Hidden Reference and Anchor
(MUSHRA) Utilizzata per la valutazione di codec audio, l’approccio MUSHRA si adatta perfettamente al contesto in questione permettendo la realizzazione di un “blind test”
tra il segnale audio creato con la risposta all’impulso reale ed i segnali creati utilizzando
le risposte all’impulso artificiali. In particolare, dai numerosi test effettuati considerando
differenti risposte all’impulso e vari segnali audio in ingresso, si è notato che la qualità
audio ottenuta utilizzando l’algoritmo proposto risulta molto simile all’originale, convalidando così l’efficacia dell’approccio presentato.
3. Analisi ed Emulazione di Sistemi non Lineari
Molte ricerche sono state effettuate negli ultimi anni al fine di emulare il comportamento acustico di dispositivi elettro-acustici non lineari (i.e. compressori, distorsori,
amplificatori), impiegando tecniche di signal processing.
Tuttavia, a differenza del caso lineare, il modeling di un dispositivo non lineare rappresenta un problema molto complesso e sebbene siano state proposte numerose soluzioni, in letteratura non esiste ad oggi un approccio unico, utile e funzionale per
l’emulazione di un qualsiasi sistema non lineare tempo invariante. Le soluzioni più comunemente adottate sono:
- kernel di Volterra [15];
- kernel diagonali di Volterra [16,17];
- convoluzione dinamica [18,19];
- tecniche adattative [20].
L’attività di ricerca si è focalizzata principalmente sull’impiego di tecniche di modeling basate su convoluzione dinamica e approcci adattativi.
La convoluzione dinamica permette di estendere il concetto di convoluzione lineare,
riportata nell’equazione 1, introducendo una matrice di risposte all’impulso caratterizzante il sistema per differenti valori di ampiezza. In dettaglio la seguente equazione riporta la formulazione matematica dell’operazione di convoluzione dinamica:
N −1
(2)
y[n] = ∑ x[n − m]H [m, S ( x[n − m]) .
m=0
dove, diversamente dalla convoluzione lineare, la risposta all’impulso è sostituita da
una matrice H e da una funzione selettrice S che permettono di selezionare, campione
per campione, la risposta all’impulso da utilizzare in funzione all’ampiezza del segnale
in ingresso.
In questo contesto, è stata proposta una tecnica per l’approssimazione
dell’operazione di convoluzione dinamica sfruttando la Principal Component Analysis
(PCA) [21], il cui obiettivo è quello di ridurre il carico computazionale della
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 7
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
convoluzione senza alterare la qualità del segnale audio percepito [22,23] permettendo
l’utilizzo di algoritmi di fast convolution che altrimenti non potrebbero essere utilizzati
a causa dell’elaborazione eseguita campione per campione.
Lo schema a blocchi dell’algoritmo proposto per l’approssimazione della convoluzione dinamica è riportato in Figura 5. In dettaglio, sfruttando la tecnica presentata è
possibile approssimare l’operazione di convoluzione utilizzando un dato numero di
coppie di Waveshaper statici (i.e., senza memoria) e filtri FIR. Mentre il Waveshaper
permette l’emulazione della non linearità statica il filtro FIR tiene conto della memoria
del sistema.
Fig. 5 - Schema a blocchi dell’algoritmo proposto per l’approssimazione
dell’operazione di Convoluzione Dinamica – Block diagram of the proposed algorithm for Dynamic Convolution approximation.
Al fine di dimostrare l’efficacia dell’approccio proposto, sono stati effettuati numerosi test fornendo confronti in termini di misure oggettive e soggettive, considerando
anche un’implementazione in tempo reale su una piattaforma integrata.
In merito all’analisi oggettiva dell’algoritmo, la Figura 6 riporta il carico computazionale richiesto dall’algoritmo in funzione della risposta all’impulso, ottenuto attraverso l’implementazione dell’approccio sulla piattaforma integrata OMAPL137 rispettando
i vincoli progettuali precedentemente descritti (i.e., latenza I/O pari a 64 campioni e
sample rate uguale a 48kHz).
E’ facile notare come l’approccio proposto permetta di ridurre considerevolmente il
carico computazionale richiesto dall’algoritmo, specialmente all’allungarsi della risposta all’impulso.
Questo è dovuto al fatto che mentre nella convoluzione dinamica tradizionale non
possono essere utilizzati approcci di fast convolution, nella tecnica proposta ciò risulta
possibile poiché la non linearità è emulata grazie ad un waveshaper statico e la risposta
all’impulso del sistema non cambiano per ogni campione in ingresso.
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 8
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
Fig. 6 - Carico computazionale richiesto in funzione della lunghezza della risposta all’impulso. (a) Convoluzione dinamica, (b) approccio proposto utilizzando 1 PC, (c) utilizzando 2 PC, (d) utilizzando 3 PC. – Workload as
a function of the IR length. (a) Dynamic convolution, (b) proposed approach using 1 PC, (c) using 2 PCs, (d) using 3 PCs.
In merito all’analisi soggettiva, sono stati effettuati numerosi test per dimostrare che
una o al massimo due componenti principali sono sufficienti per ottenere una buona approssimazione del sistema.
Inoltre, è stata proposta in [24] una procedura di identificazione adattativa basata su
funzioni non lineari ortogonali mentre in [25] è stato descritto un approccio basato
sull’impiego di spline cubiche.
4. Audio Morphing
Al fine di fornire una maggiore flessibilità all’espressione artistica dei musicisti, lo
studio ha interessato anche le principali tecniche di audio morphing che permettono di
combinare due o più segnali audio per creare nuovi suoni acusticamente interessanti con
caratteristiche intermedie di timbro e durata. Questo studio, svolto in collaborazione con
il Center For Digital Music della Queen Mary Univeristy of London, ha permesso lo
sviluppo di un algoritmo per il morphing di segnali audio di natura percussiva [26] basato sulla pre-elaborazione nel dominio della frequenza dei campioni originali e sulla
successiva elaborazione, mediante interpolazione lineare, eseguita nel dominio del tempo. Lo schema a blocchi dell’algoritmo proposto è riportato in Figura 7.
In dettaglio, lo scopo principale della fase di pre-elaborazione è quello di scalare
temporalmente (time stretching) le porzioni di release di entrambi i suoni al fine di allinearli temporalmente. Al contrario le porzioni di attacco non sono modificate evitando
così l’introduzione di distorsioni e artefatti innaturali tipici in suoni percussivi.
Tale operazione è costituita da tre fasi:
- Time Align: dal momento che possono essere utilizzati differenti campioni percussivi,
è necessario allineare automaticamente i campioni prima di eseguire il morphing.
- Modello ACT: poiché la procedura presentata risulta valida solamente per suoni di natura percussiva, è stato utilizzato il modello Attack/Release (AR). In particolare le
porzioni di attack e release sono determinate utilizzando la tecnica Amplitude Centroid Trajectory (ACT) basata sulla valutazione della centroide spettrale.
- Time Stretching: le porzioni di release sono allungate o ridotte temporalmente in funzione del fattore di interpolazione.
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 9
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
Fig. 7 - Schema a blocchi dell’algoritmo di audio morphing proposto per la generazione di suoni percussivi ibridi. – Block diagram of the proposed audio
morphing algorithm for percussive hybrid sound generation.
In merito alla fase di elaborazione, è stato impiegato l’algoritmo di interpolazione lineare, invece di altre tecniche ampiamente utilizzate come quelle basate sulla sintesi
additiva, sebbene tale algoritmo non sia in genere utilizzato negli algoritmi di audio
morphing, dal momento che i suoni di origine percussiva (i.e., tom, rullante, charleston
e piatti) sono di solito caratterizzati da un pitch simile e da uno spettro particolarmente
rumoroso.
Dati due segnali audio, s1 ed s2, e il fattore di interpolazione α, il suono ibrido y generato mediante interpolazione lineare è descritto dalla seguente relazione:
y[ n ] = α s1 [ n ] + (1 − α ) s 2 [ n ]
(3)
Attraverso confronti soggettivi e oggettivi, sono stati condotti diversi test per valutare l'efficacia del metodo proposto [26], utilizzando campioni di natura percussiva estratti dal database BFD2 [27] e due differenti approcci, basati su tecniche di audio morphing, per la realizzazione di suoni ibridi: interpolazione lineare (LI) e sintesi additiva
(SMS) [28].
In merito alle misure soggettive utili alla valutazione delle prestazioni audio
dell’algoritmo, i dati ottenuti dall’analisi effettuata sulla valutazione del fattore di interpolazione stimato (se il fattore di interpolazione è pari a 0.5 la percezione del suono ibrido deve essere intermedia rispetto ai due campioni originali di partenza) sono riportati in Figura 8.
Fig. 8 - Risultati del test di ascolto soggettivo: fattore di interpolazione stimato. –
Subjective listening test results: estimated interpolation factor.
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 10
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
Il risultato di questa analisi conferma che l’approccio proposto permette di ottenere
un suono in cui il fattore di interpolazione stimato varia linearmente al variare del fattore di interpolazione lineare, cosa che non accade invece nelle altre due tecniche analizzate.
In tabella 1 sono riportati altri risultati del test di ascolto soggettivo basato sulla valutazione della qualità audio percepita (agli ascoltatori è stato chiesto di valutare quanto
il segnale audio generato con le varie tecniche di audio morphing sembrasse naturale).
In dettaglio, i risultati sono estrapolati effettuando la media delle valutazioni ottenute
per i differenti valori del fattore di interpolazione utilizzati.
Tab. 1 – Risultati test di ascolto soggettivo: qualità audio percepita espressa in scala
da 0 ad 1 (0 pessima – 1 eccellente) – Listening test results: perceived audio quality expressed in a scale from 0 to 1 (0 bad - 1 excellent).
Qualità Audio
Deviazione Standard
Interpolazione
lineare
(LI)
0.90
0.06
Approccio
proposto
(LIP)
0.88
0.07
Sintesi
additiva
(SMS)
0.10
0.08
Anche in questo caso si è dimostrato come l’approccio proposto permetta di ottenere
suoni ibridi ad elevata qualità audio a differenza della sintesi additiva che si è rivelata
inefficace a causa della natura rumorosa tipica dei segnali percussivi.
5. Equalizzazione di ambienti
Infine, sono state trattate le tecniche di equalizzazione per il miglioramento della
qualità del segnale riprodotto da un sistema audio (i.e., tastiera musicale). Tali approcci
permettono di migliorare la qualità audio di un sistema di riproduzione compensando
l'effetto di equalizzazione introdotto dalla funzione di trasferimento che caratterizza il
percorso dell’onda sonora dagli altoparlanti all’ascoltatore.
In questo contesto, esistono diversi approcci che possono essere classificati in due
principali categorie: algoritmi di equalizzazione a singolo punto e multi punto [29-31].
Si ha poi un’ulteriore classificazione di questi algoritmi a seconda della tipologia del filtro di equalizzazione impiegato: equalizzatori a coefficienti fissi o adattativi. Nel primo
caso i coefficienti del filtro sono fissi, cioè calcolati a priori dopo aver effettuato
l’analisi della stanza in un determinato istante temporale. Nel secondo caso invece i coefficienti del filtro sono tempo varianti e sono calcolatati adattativamente mediante algoritmi speciali. Questo secondo approccio permette di considerare le caratteristiche
tempo varianti dell’ambiente di ascolto migliorando così le prestazioni
dell’equalizzatore.
In particolare, nel corso dell’attività di ricerca, sono stati proposti due algoritmi per
l’equalizzazione multi-punto basati sull’equalizzazione adattativa a fase minima [29]
[30] ed un algoritmo per l’equalizzazione mista (i.e., modulo e fase) basato sulla valutazione di risposte all’impulso note a priori [32].
In merito agli approcci presentati in [29] e [30], la Figura 9(a) mostra lo schema generale degli algoritmi proposti: i microfoni posizionati nella zona da equalizzare vengono utilizzati per catturare il segnale riprodotto dall’altoparlante ed alterato dalla funzione di trasferimento della stanza. Tali segnali vengono quindi utilizzati per
l’identificazione delle risposte impulsive come mostrato in Figura 9(b).
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 11
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
a)
b)
Fig. 9 - (a) Schema generale degli algoritmi di equalizzazione adattativa proposti.
(b) Schema per l'identificazione delle risposte all’impulso – (a) Overall
scheme of the proposed approaches. (b) Scheme for the impulse responses identification.
Le risposte identificate vengono quindi utilizzate per il progetto del filtro di equalizzazione, effettuando una media iterativa delle risposte impulsive considerate e calcolando la funzione prototipo mediante l’operazione di deconvoluzione con regolarizzazione
proposta da Kirkeby in [31] e riportata nella seguente equazione:
H inv [k ] =
(4)
H p * (k )
2
H p (k ) + β
β rappresenta il fattore di regolarizzazione, * indica il complesso coniugato e Hp descrive la funzione prototipo espressa nel dominio di applicazione dell’algoritmo. Il fattore di regolarizzazione permette di evitare guadagni eccessivi specialmente alle alte
frequenze. Per gli approcci presentati un piccolo fattore di regolarizzazione è stato impiegato con valore pari a 0.00001. In particolare i due approcci presentati in [29] e [30]
si differenziano a seconda della modalità con cui viene calcolato il filtro di equalizzazione: nel primo l’equalizzatore viene progettato nel dominio delle frequenze mentre nel
secondo viene utilizzato il dominio ri-mappato non linearmente per ottenere qualitativamente migliori prestazioni dal momento che tale dominio si adatta meglio alle caratteristiche fisiche dell’apparato uditivo umano.
Per verificare le prestazioni dell’algoritmo, sono stati effettuati test sia oggettivi che
soggettivi, prendendo in considerazione diversi ambienti reali. La Figura 10 mostra la
posizione dell’altoparlante e dei cinque microfoni utilizzati per uno dei test effettuati.
Fig. 10 -
Posizione di altoparlanti e microfoni all’interno della stanza - Microphones and loudspeaker position in the room.
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 12
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
Le Figure 11(a) e (b) riportano i risultati della procedura di equalizzazione considerando gli approcci proposti rispettivamente in [30] e [29], ed una curva target piatta.
a)
b)
Fig. 11 - (a) Risposta in frequenza finale ottenuta dopo la procedura di equalizzazione proposta in [30]. (b) Risposta in frequenza finale ottenuta dopo la
procedura di equalizzazione proposta in [29].– (a) Final frequency response obtained exploiting the equalization procedure proposed in [30].
(b) Final frequency response obtained exploiting the equalization procedure proposed in [29].
In conclusione, entrambi gli algoritmi permettono di ottenere buoni risultati dopo la
procedura di equalizzazione determinando un appiattimento delle risposte iniziali. In
particolare, risulta evidente come la tecnica di equalizzazione proposta [30] permetta di
ottenere migliori prestazioni specialmente alle basse frequenze. Questo è dovuto
all’introduzione del dominio rimappato non linearmente nel calcolo del filtro inverso.
Tale dominio permette infatti di ottenere migliori prestazioni rispetto al classico approccio in frequenza specialmente alle basse frequenze.
Un ulteriore approccio per l’equalizzazione multi punto di ambienti acustici è stato
presentato in [32]. Basato sulla valutazione di risposte all’impulso note, l’algoritmo implementa l’equalizzazione mista fase-modulo. Infine ,[33-35] propongono una serie di
algoritmi per l’equalizzazione singolo punto in ambienti automotive.
Conclusioni
Questo articolo si focalizza sulle tecniche di elaborazione del segnale più utilizzate
per aumentare la qualità audio in strumenti musicali digitali. In dettaglio, tenendo conto
degli effetti audio più comuni impiegati nelle tastiere elettroniche, sono stati ampiamente analizzati quattro differenti argomenti: la riverberazione artificiale, l'analisi e l'emulazione dei dispositivi non lineari, le tecniche di audio morphing, e l’equalizzazione multi
punto di un sistema audio avanzato.
Su questa base, al fine di migliorare la qualità audio dei riverberatori artificiali, sono
state esplorate le tecniche di convoluzione veloce e le strutture a basso costo computazionale basate sul modello del riverberatore ibrido. In particolare, si è scoperto che è
possibile effettuare l'emulazione acustica in tempo reale a bassa latenza di ambienti reali
considerando DSP general purpose. Tenendo conto del problema dell’emulazione di un
sistema non lineare, sono state proposte una tecnica per l’approssimazione dell'operazione di convoluzione dinamica sfruttando la principal component analysis ed una procedura di identificazione adattiva basata su funzioni non lineari ortogonali. Al fine di
fornire una maggiore espressione artistica al musicista, è stato presentato un algoritmo
di generazione ibrido di suoni percussivi. Infine, sono stati sviluppati diversi approcci
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 13
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
per l’equalizzazione di ambienti multi punto, prendendo in considerazione la stima adattativa della funzione di trasferimento della stanza.
Tutto questo a dimostrazione che c’è ancora molto lavoro da fare in questo campo e
che, con l’avanzare delle prestazioni computazionali dei dispositivi hardware, nuovi algoritmi sempre più performanti potranno essere sviluppati e impiegati nel settore della
musica digitale adattandosi a quelle che sono le esigenze espressive degli musicisti.
Summary
This paper focuses on the signal processing techniques used to increase the audio
quality in musical keyboard instruments. In greater detail, taking into account the most
common audio effects employed in electronic musical instruments, four different issues
have been analyzed: artificial reverberation, analysis and emulation of nonlinear devices, audio morphing, and room response equalization.
On this basis, in order to enhance the audio quality of artificial reverberators, fast
convolution techniques and hybrid reverberator structures have been explored. In detail,
it has been discovered that it is possible to perform the low latency real-time acoustic
emulation of real environment also considering general purpose DSP. Taking into account the nonlinear system emulation problem, a technique for the approximation of the
dynamic convolution operation by exploiting the principal component analysis and
adaptive identification procedure based on nonlinear orthogonal functions have been
proposed. In order to provide a major artistic expression to musician, an algorithm for
hybrid percussive sound generation has been presented. Finally, several approaches for
multipoint room response equalization have been developed considering the adaptive
estimation of the room transfer function.
All this demonstrates that there is still much work to be done in this field and that
with the advance of computational performance of hardware devices ever more efficient
algorithms can be developed and used in the field of digital music evolving and adapting to those that are the expressive needs of today's musicians.
Ringraziamenti
Si ringrazia l’azienda Korg Italy per avere finanziato economicamente l’attività di
ricerca effettuata nel corso dei tre anni di dottorato. Si ringraziano inoltre il Professore
Francesco Piazza, l’Ingegnere Stefania Cecchi e l’Ingegnere Marco Moschetti per il
supporto dato nella realizzazione e implementazione di tutti gli algoritmi proposti.
Bibliografia
[1] Valimaki V., Parker J.D., Savioja L., Smith J., Abel J., Fifty Years of Artificial
Reverberation, IEEE Trans. on Audio, Speech and Language Processing, 20(5)
(2012), pp. 1421-1448
[2] Schroeder M., Logan B., Colorless artificial reverberation, Journal of the AES,
9(3) (1961), pp. 192–197
[3] Gardner W.G., Reverberation algorithms, Applications of Digital Signal
Processing to Audio and Acoustics, Kluwer, 1997
[4] Oppenheim A.V., Schafer R.W., Buck J.R., Discrete-Time Signal Processing,
Prentice Hall, New Jersey, 1999
[5] Gardner W. G., Efficient Convolution without Input-Output Delay, Journal of the
AES, 43(3) (1995), pp. 127-136
[6] Primavera A., Cecchi S., Romoli L., Piazza F., Moschetti M., An Efficient DSPBased Implementation of a Fact Convolution Approach with non Uniform Parti-
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 14
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
[21]
[22]
tioning, In Proceedings of EDERC 2012, Amsterdam (Netherlands), 13-14 September 2012
Primavera A., Cecchi S., Romoli L., Peretti P. Piazza F., A Low Latency Implementation of a Non Uniform Partitioned Overlap and Save Algorithm for Real
Time Applications, In Proceedings of the 131st AES Convention, New York
(USA), 20-23 October 2011
Primavera A., Cecchi S., Romoli L., Peretti P., Piazza F., A Low Latency Implementation of a Non-Uniform Partitioned Convolution Algorithm for Room Acoustic Simulation, Journal of Signal, Image and Video Processing, 8(5) (2014), pp.
985-994
Primavera A., Cecchi S., Romoli L., Peretti P. Piazza F., Approximation of Real
Impulse Response Using IIR Structures, In Proceedings of EUSIPCO 2011, Barcelona (Spain), 29 August- 2 September 2011
Primavera A., Cecchi S., Romoli L., Peretti P. Piazza F., An Advanced Implementation of a Digital Artificial Reverberator, In Proceedings of the 130th AES Convention, London (UK), 13-16 May 2011
Primavera A., L. Palestini, Cecchi S., Piazza F. Moschetti M., A Hybrid Approach
for Real-Time Room Acoustic Response Simulation, In Proceedings of the 128th
AES Convention, London (UK), 23-25 May 2010
Primavera A., Gasparini M., Cecchi S., Romoli L. Piazza F., Hybrid Reverberation Algorithm: a Practical Approach, In Proceedings of the AIA-DAGA Conference, Meran (Italy), 18-21 March 2013
Primavera A., Cecchi S., Junfeng L., Piazza F., Objective and Subjective Investigation on a Novel Method for Digital Reverberator Parameters Estimation, IEEE
Trans. on Audio, Speech and Language Processing, 22(2) (2014), pp. 441-452
Method for subjective listening tests of intermediate audio quality, ITU-R BS.
1534, Geneva, 2001
Schetzen M., The Volterra and Wiener Theories of Nonlinear Systems, JohnWiley & Sons, New York, 1980
Farina A. Farina A., Real-Time Auralization Employing a Not-Linear, Not-TimeInvariant Convolver, In Proceedings of the 123th AES Convention, New York
(USA), 5-8 October 2007
Tronchin L., Non Linear Convolution and Its Application to Audio Effects, In Proceedings of the 131st AES Convention, New York (USA), 20-23 October 2011
Farina A. Armelloni E., Emulation of Not-Linear, Time-Variant Devices by the
Convolution Technique, In Atti del Congresso AES, Como (Italia), 3-5 Novembre
2005
Kemp M., Analysis and Simulation of Non-Linear Audio Processes using Finite
Impulse Responses Derived at Multiple Impulse Amplitudes, Proceedings of the
106th AES Convention, Munich (Germany), 8-11 May 1999
Ogunfunmi T., Adaptive Nonlinear System Identification: The Volterra and Wiener Model Approaches, Springer, 2007
Papoulis A., Pillai S., Probability, Random Variables and Stochastic Process, 4th
Edition, McGrawHill, 2002
Primavera A., Cecchi S., Romoli L., Gasparini M., Piazza F., Approximation of
Dynamic Convolution Exploiting Principal Component Analysis: Objective and
Subjective Quality Evaluation, Proceedings of the 133rd AES Convention, San
Francisco (USA), 26-29 November 2012
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 15
Andrea Primavera
Algoritmi avanzati per il miglioramento della qualità audio nei sintetizzatori musicali digitali
Advanced algorithms for audio quality improvement in musical keyboards instruments
[23] Primavera A., Cecchi S., Romoli L., M Gasparini, Piazza F., An Efficient DSP
Implementation of a Dynamic Convolution Approach Using Principal Component
Analysis, In Proceedings of EDERC 2012, Amsterdam (Netherlands), 13-14 September 2012
[24] Romoli L., Gasparini M., Cecchi S., Primavera A., Piazza F., Adaptive Identification of Nonlinear Models Using Orthogonal Nonlinear Functions, Proceedings of
the 48th AES Conference, Munich (Germany), 21-23 September 2012
[25] Gasparini M., Primavera A., Romoli L., Cecchi S., Piazza F., Audio System Identification based on Hammerstein Models using Cubic Splines, Proceedings of the
134th AES Convention, Rome, 4-7 May 2013
[26] Primavera A., Piazza F., Reiss J., Audio Morphing for Percussive Hybrid Sound
Generation, Proceedings of the 45th AES Conference, Helsinki (Finland), March
2012
[27] BFD2 version 2.0.1 Acoustic Drum Production Environment, fxpansion. Available: http://www.fxpansion.com/
[28] Zoelzer U., DAFX Digital Audio Effects. John-Wiley & Sons, New York, 2010
[29] Cecchi S. Primavera A., Piazza F. and Carini A., An Adaptive Multiple Position
Room Response Equalizer, In Proceedings of EUSIPCO 2011, Barcelona (Spain),
29 August- 2 September 2011
[30] Cecchi S., Carini A., Primavera A., Piazza F., An Adaptive Multiple Position
Room Response Equalizer In Warped Domain, Proceedings of the EUSIPCO
2012, Budapest, August 2012
[31] Kirkeby O., Nelson P. A., Hamada H., Orduna F., Fast Deconvolution of Multichannel Systems using Regularization, IEEE Trans. Speech Audio Process., 6(2)
(1998), pp. 189–194
[32] Primavera A., Cecchi S., Piazza F., Carini A., Mixed Time-Frequency approach
for Multipoint Room Response Equalization, Proceedings of the 45th AES Conference, Helsinki (Finland), 1-4 March 2012
[33] Cecchi S., Primavera A., Piazza F., Bettarelli F., Ciavattini E., Toppi R., Couthino
J.G.F., Luk W., Pilato C., Ferrandi F., Sima V.M., Bertels K., The hArtes CarLab:
A New Approach to Advanced Algorithms Development for Automotive Audio,
Proceedings of the 129th AES Convention, San Francisco (USA), 5-7 November
2010
[34] Cecchi S., Primavera A., Piazza F., Bettarelli F., Ciavattini E., Toppi R., Couthino
J. G. F., Luk W., Pilato C, Ferrandi F., Sima V. M. Bertels K., The hArtes CarLab: A New Approach to Advanced Algorithms Development for Automotive Audio, Journal of the AES, 59(11) (2011), pp. 858-869
[35] Cecchi S., Palestini L., Peretti P., Primavera A., Piazza F., In Car applications,
Hardware/Software Co-design for Heterogenous Multi-Core Platforms The hArtes
Toolchain, Springer, October 2011
Rivista Italiana di Acustica
Vol. 38, N. 3-4, p. 16