Come scrivere musica usando la programmazione orientata agli oggetti

Parliamo della storia dello strumento software OpenMusic (OM), analizziamo le sue caratteristiche, raccontiamo dei primi utenti. Inoltre, portiamo esempi simili.

Come scrivere musica usando la programmazione orientata agli oggetti
Foto James Baldwin / Unsplash

Che cos'è OpenMusic

È un ambiente di programmazione visiva per la sintesi del suono digitale. L'utility è basata su un dialetto del linguaggio LISP — Common Lisp. È interessante notare che OpenMusic può essere utilizzato come un'interfaccia grafica universale per questo linguaggio di programmazione.

Lo strumento è stato sviluppato negli anni '90 da ingegneri dell'Istituto francese di ricerca e coordinamento acustico e musicale (IRCAM). Sono state presentate sette versioni di OpenMusic, l'ultima delle quali è stata rilasciata nel 2013. In quell'anno, l'ingegnere di IRCAM Jean Bresson (Jean Bresson) ha riscritto l'utility da zero, prendendo come base il codice originale della sesta versione (OM6). Oggi OM7 è distribuito sotto licenza GPLv3 — il suo codice sorgente può essere trovato su GitHub.

Come lavorarci

I programmi in OpenMusic sono creati manipolando oggetti grafici invece di scrivere codice. Ne risulta una sorta di diagramma a blocchi, noto come "patch". Analogamente ai sintetizzatori modulari, dove si utilizzavano patch cord per le connessioni.

Ecco un esempio di programma OpenMusic, prelevato dal repository su GitHub:

Come scrivere musica usando la programmazione orientata agli oggetti

In OpenMusic ci sono oggetti di due tipi: base e partiturali (Score Object). I primi rappresentano varie operazioni matematiche per lavorare con matrici, colonne e forme testuali.

Gli oggetti partiturali sono necessari per lavorare con il suono. Possono essere ulteriormente suddivisi in due gruppi:

Gli oggetti partiturali sono controllati tramite funzioni partiturali, ad esempio, che uniscono più componenti in uno per creare suoni polifonici. Ulteriori funzioni possono essere trovate nelle librerie collegate — l'elenco completo è disponibile sul sito ufficiale.

Un esempio di melodia generata da OpenMusic può essere ascoltato in questo video:

Riproduci video

Per conoscere lo strumento e le sue funzionalità, ti consigliamo di consultare la documentazione. Guida per OM7 è ancora in fase di sviluppo. Ma puoi dare un'occhiata alla guida per OM6 — è necessario seguire il link e nell'angolo a sinistra espandere la voce Manuale utente.

Chi lo utilizza

Secondo i progettisti, OpenMusic può essere utilizzato per creare e modificare tracce audio, generare modelli matematici di composizioni e analizzare frammenti musicali registrati. Gli ingegneri di ITCAM hanno impiegato lo strumento in diverse ricerche. Ad esempio, per creare un sistema di intelligenza artificiale che riconosce gesti musicali nell'audio registrato.

Inoltre, OpenMusic è utilizzato anche da artisti professionisti — essi impiegano l'utility per studiare gli spettri armonici. Un esempio è il compositore svizzero Mikaël Jarrell, vincitore del premio Beethoven. Le sue opere, eseguite dall'orchestra sinfonica di Hong Kong, possono essere ascoltate qui.

Vale anche la pena menzionare Tristan Murail. È uno dei più grandi compositori che lavora nel campo della musica spettrale.. Ad esempio, su YouTube ci sono le sue opere Gondwana e La condivisione delle acque, create con OpenMusic.

Riproduci video

Compositore e pedagogo inglese Brian Ferneyhough ha utilizzato OpenMusic per lavorare con il ritmo. Oggi la sua musica fa parte del repertorio dei maggiori ensemble e artisti contemporanei — Quartetto Arditti e Pierre-Yves Artaud.

Analoghi

Esistono diverse sistemi analoghi a OpenMusic. Probabilmente il più noto è lo strumento commerciale Max/MSP. È stato sviluppato da Miller Puckette alla fine degli anni '80, quando lavorava per l'IRCAM. Il sistema consente di sintetizzare audio e video in tempo reale.

Nel video sottostante è presentata un'installazione su uno degli edifici nella città italiana di Cagliari. Il colore degli schermi cambia in base al rumore delle automobili di passaggio. L'installazione è controllata da una combinazione di Max/MSP e Arduino.


È importante notare che Max/MSP ha un analogo open source. Si chiama Pure Data, ed è stato sviluppato anch'esso da Miller Puckette.

Vale anche la pena menzionare il sistema visivo ChucK, ideato da Perry Cook e dai suoi colleghi dell'università di Princeton nel 2003. Supporta l'esecuzione parallela di più thread, e consente di apportare modifiche direttamente durante l'esecuzione. Rilasciato con licenza GNU GPL.

La lista degli strumenti per la sintesi musicale digitale non finisce qui. Ci sono anche Kyma e Overtone, che permette di programmare mix direttamente sul palco. Di questi cercheremo di parlarvi la prossima volta.

Ulteriori letture — dal nostro «Mondo Hi-Fi» e dal canale Telegram:

Come scrivere musica usando la programmazione orientata agli oggetti Come il PC ha conquistato l'industria dei media grazie a software di successo
Come scrivere musica usando la programmazione orientata agli oggetti Dove trovare campioni audio per i vostri progetti: una selezione di nove risorse
Come scrivere musica usando la programmazione orientata agli oggetti Musica per i vostri progetti: 12 risorse tematiche con tracce sotto licenza CC
Come scrivere musica usando la programmazione orientata agli oggetti Innovation SSI-2001: la storia di una delle schede audio più rare per IBM PC
Come scrivere musica usando la programmazione orientata agli oggetti Storia delle tecnologie audio: sintetizzatori e campionatori
Come scrivere musica usando la programmazione orientata agli oggetti Un appassionato ha ricreato la scheda audio Sound Blaster 1.0
Come scrivere musica usando la programmazione orientata agli oggetti Come sono cambiati i formati musicali negli ultimi 100 anni
Come scrivere musica usando la programmazione orientata agli oggetti Come un'azienda IT ha lottato per il diritto di vendere musica

Fonte: habr.com

Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster