Linguaggi di programmazione per linformatica musicale Conservatorio di Musica Antonio Buzzolla di Adria Diego Catania, Luca A. Ludovico LIM (Laboratorio di Informatica Musicale) DICo – Università degli Studi di Milano
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale2 Digital Sound Production 1957 – Max V. Mathews (Bell Labs) a computer could synthesize sounds according to any pitch scale or waveform
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale3 Digital Sound Production 1957 – Max V. Mathews (Bell Labs) IBM 704 Vacuum tube 36 bit, floating point, 32k words core memory Istruzioni in linguaggio macchina Risultato su nastro (digitale) magnetico Computer a 12 bit (vacuum tube) Conversione digitale-analogico
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale4 Digital Sound Production 1957 – Max V. Mathews (Bell Labs) Music I Segnale a forma di triangolo equilatero Possibilità di controllo Pitch Forma donda Durata Guttman, Newman (1957) – In a silver scale Prima composizione (con conversione digitale- analogico)
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale5 Digital Sound Production 1958 – Max V. Mathews (Bell Labs) Music II 4 voci indipendenti 16 forme donda IBM 7094 Transistor Programmabile in assembler Guttman, Newman (1958) – Pitch Variation Primo concerto di CM - Svizzera
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale6 Digital Sound Production 1960 – Max V. Mathews & Joan Miller (Bell Labs) Music III Introduzione degli UG
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale7 Digital Sound Production Unit Generator (UG) Moduli per il trattamento dei segnali: Oscillatori Filtri Amplificatori Etc… Configurabili in patch Modellazione di numerosi algoritmi di sintesi
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale8 Digital Sound Production 1963 – Max V. Mathews (Bell Labs) Music IV Linguaggio macro assembly
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale9 Digital Sound Production 1968 – Max V. Mathews (Bell Labs) Music V Linguaggio standard per lelaboratore Fortran IV 70 - Diffusione negli ambiti universitari e di laboratori di ricerca (art of digital synth)
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale10 Digital Sound Production Music V Modello seguito da: Music 4BF Music 360 Music 7 Music 11 Csound MUS10 Cmusic Common Music Lisp Tutti appartenenti alla famiglia Music N
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale11 Digital Sound Production Software Synthesis Versus Hardware Synthesis
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale12 Software Synthesis Tutti i calcoli necessari per la computazione di un flusso di campioni vengono realizzati da un programma, modificabile arbitrariamente dallutente. La risorsa hw è un general purpose computer
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale13 Software Synthesis Flessibile Uso di elaboratori poco costosi Si possono implementare una varietà di algoritmi di sintesi Real-time Non-Real-Time
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale14 Software Synthesis Categorie Editor grafico di strumenti Linguaggi di sintesi
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale15 Software Synthesis Graphical instrument editor UG -> Icone Icone + Interconnessioni -> Patch
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale16 Software Synthesis Real-time La computazione di un campione della forma donda finale, avviene allinterno di un periodo di campionamento
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale17 Software Synthesis Synthesis Language Codice -> Testo Testo -> Interprete
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale18 Hardware Synthesis Circuiteria dedicata alla produzione sonora Computazioni in tempo reale Flessibilità ridotta (algoritmi predefiniti)
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale19 DSP Synthesis Digital Signal Processors Elaborazioni ad alta capacità computazionale Programmabile
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale20 Algoritmi e Metodi Obiettivo: generare una successione di numeri, che rappresentino i campioni di una forma donda sonora
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale21 Algoritmi e Metodi Obiettivo: generare una successione di numeri, che rappresentino i campioni di una forma donda sonora Tabella con valori precalcolati Funzione matematica
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale22 Algoritmi e Metodi - Table-lookup Wavetable: locazione di memoria in cui vengono memorizzati i valori di un ciclo della forma donda Table-lookup: metodologia di produzione sonora, basata sulla lettura ciclica della wavetable (digital oscillator)
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale23 Algoritmi e Metodi – Table-lookup Fixed waveform synthesis La forma donda non cambia durante tutto levento sonoro Definizione della frequenza di output: Frequenza di campionamento della tabella Lettura con incremento
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale24 Algoritmi e Metodi – Table-lookup Fixed waveform synthesis 1. phase_index = modL(prev_phase + increment) 2. output = amp x wavetable [phase_index] Dove: increment = L x OutFreq / SamplingFreq Se increment non è intero?
23 ottobre 2004Linguaggi di programmazione per lInformatica Musicale25 Algoritmi e Metodi – Table-lookup Time-varying waveform synthesis Uno (o piu) parametri della forma donda varia durante lestensione dellevento sonoro Concetto di Inviluppo (Envelope)