How to write music using OOP

Vi taler om historien bag det softwareværktøj, OpenMusic (OM), analyserer dets struktur og fortæller om de første brugere. Derudover præsenterer vi alternativer.

How to write music using OOP
Foto James Baldwin / Unsplash

Hvad er OpenMusic

Det er en objektorienteret visuel programmeringsmiljø til syntese af digital lyd. Værktøjet er baseret på en dialekt af programmeringssproget LISP — Common Lisp. Det skal bemærkes, at OpenMusic kan bruges som et universelt grafisk interface for dette programmeringssprog.

Værktøjet blev udviklet i 90'erne af ingeniører fra det franske institut for forskning og koordinering af akustik og musik (IRCAM). I alt blev der præsenteret syv versioner af OpenMusic — den sidste blev udgivet i 2013. Dengang tilbageskrev ingeniøren fra IRCAM, Jean Bresson (Jean Bresson), værktøjet fra bunden, baseret på den originale kode fra den sjette version (OM6). I dag distribueres OM7 under licens GPLv3 — dens kildekoder kan findes på GitHub.

Hvordan man arbejder med det

Programmer i OpenMusic oprettes ved at manipulere grafiske objekter i stedet for at skrive kode. Resultatet er en slags blokdiagram kendt som et 'patch'. På samme måde som modulære synthesizere, hvor patch-kabler blev brugt til forbindelser.

Her er et eksempel på et program OpenMusic, taget fra et repository på GitHub:

How to write music using OOP

I OpenMusic findes der to typer objekter: basale og partiturobjekter (Score Object). De første repræsenterer forskellige matematiske operationer til arbejde med matricer, kolonner og tekstformer.

Partiturobjekter er nødvendige til arbejde med lyd. De kan også opdeles i to grupper:

Partiturobjekter styres ved hjælp af partiturfunktioner, der f.eks. samler flere komponenter til at skabe polyfonisk lyd. Yderligere funktioner kan findes i tilsluttede biblioteker — en komplet liste af dem er tilgængelig på den officielle hjemmeside.

Et eksempel på en melodi genereret af OpenMusic kan lyttes til i denne video:

Afspil video

For at blive bekendt med værktøjet og dets muligheder, anbefaler vi at konsultere dokumentationen. Håndbogen til OM7 er endnu under udvikling. Men du kan se håndbogen for OM6 — du skal følge linket og i venstre vindue udvide punktet User Manual.

Hvem bruger

Ifølge udviklerne kan OpenMusic bruges til at oprette og redigere lydspor, generere matematiske modeller af værker og analysere optagne musikuddrag. Ingeniører fra ITCAM har anvendt værktøjet i flere videnskabelige undersøgelser. For eksempel til skabelsen et kunstig intelligenssystem, der genkender musikale gestus i lydoptagelser.

Professionelle kunstnere arbejder også med OpenMusic – de bruger værktøjet til at studere harmoniske spektre. Et eksempel er den schweiziske komponist Mikaël Jarrell, som er vinder af Beethoven-prisen. Hans værker, udført af Hongkong symfoniorkester, kan lyttes til her.

Det er også værd at nævne Tristan Murail. Han er en af de største komponister, der arbejder inden for spektromusik. For eksempel findes hans værker på YouTube Gondwana og Le partage des eaux, skabt med OpenMusic.

Afspil video

Den engelske komponist og underviser Brian Ferneyhough har anvendt OpenMusic til at arbejde med rytme. I dag indgår hans musik i repertoiret for de største moderne ensembler og kunstnere – Arditti Quartett og Pierre-Yves Artaud.

Analoger

Der findes flere systemer, der ligner OpenMusic. Måske det mest kendte er det kommercielle værktøj Max/MSP. Det blev udviklet af Miller Puckette i slutningen af 80'erne, mens han arbejdede ved IRCAM. Systemet muliggør realtids-syntese af digital lyd og video.

I videoen nedenfor præsenteres en installation på en af bygningerne i den italienske by Cagliari. Farverne på skærmene ændrer sig afhængigt af støjen fra forbipasserende biler. Installationen styres af en kombination af Max/MSP og Arduino.


Det er værd at bemærke, at Max/MSP har en open-source analog. Den kaldes Pure Data, og dens udvikler var også Miller Puckette.

Det er også værd at fremhæve det visuelle system ChucK, som blev opfundet af Perry Cook og kolleger fra Princeton University i 2003. Det understøtter parallel udførelse af flere tråde, og der kan foretages ændringer i programmet under udførelsen. Det distribueres under GNU GPL.

Listen over værktøjer til syntese af digital musik stopper ikke her. Der er også Kyma og Overtone, som gør det muligt at programmere mixes direkte på scenen. Dem vil vi forsøge at fortælle om næste gang.

Yderligere læsning — fra vores "Verdens Hi-Fi" og Telegram-kanal:

How to write music using OOP Hvordan PC'en erobrer medieindustrien med succesfuld software
How to write music using OOP Hvor kan man finde lydeksamples til dine projekter: en samling af ni ressourcer
How to write music using OOP Musik til dine projekter: 12 tematiske ressourcer med spor under CC-licens
How to write music using OOP Innovation SSI-2001: historien om et af de sjældneste lydkort til IBM PC
How to write music using OOP Historien om audioteknologi: synthesizere og samplers
How to write music using OOP En entusiast har genskabt lydkortet Sound Blaster 1.0
How to write music using OOP Hvordan musikformater har ændret sig i løbet af de sidste 100 år
How to write music using OOP Hvordan et IT-firma kæmpede for at få ret til at sælge musik

Kilde: habr.com

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster