О звуке простыми словами42Производители Hi-Fi.
Истории и интервью111Репортажи с заводов65Репортажи с Hi-Fi выставок69"Сделай сам"44Готовые проекты Аудиомании42Пресса об Аудиомании50Видео499Фотогалерея100Интересное о звуке806Новости мира Hi-Fi2580Музыкальные и кинообзоры624Глоссарий
Что такое музыкальное программирование — кто и почему им занимается, устраивая настоящие live-сессии
Ранее мы говорили об инструменте OpenMusic. Он позволяет писать музыку, используя объектно-ориентированный подход. Сегодня речь пойдет о людях, которые создают композиции с помощью специализированных языков программирования. И зачастую делают это «в прямом эфире».
Краткая история компьютерной музыки
Первым компьютером, который использовали для создания музыки, был CSIRAC. Его спроектировала группа австралийских инженеров в конце 40-х годов. Тогда математик Джеф Хилл (Geoff Hill) разработал специальную алгоритмическую программу для синтеза музыкальных произведений. В 1951 году CSIRAC успешно исполнил популярный «Марш полковника Боги» («Colonel Bogey March»). Но на этом его музыкальные достижения закончились.
Поэтому первым «компьютерным музыкантом» считают Макса Мэтьюса (Max Mathews). Он начал воспроизводить музыку с помощью мейнфрейма IBM. Пример такой композиции:
С тех пор музыкальное программирование проделало большой путь. Под этим термином чаще всего понимают процесс создания треков с помощью секвенсоров, синтезаторов и специального ПО. Но некоторые инженеры-музыканты считают такой подход моветоном. Сторонники этой точки зрения используют программный код и специализированные ЯП для создания своих композиций.
Кто программирует музыку
В качестве примера можно привести инженера Эндрю Соренсена (Andrew Sorensen). Он доктор компьютерных наук и обладатель степени бакалавра в сфере джаза. Эндрю пишет музыку с 2005 года. Примеры треков можно найти на его Vimeo-канале. Вот одна из его работ (музыка начинается со второй минуты). Такие музыканты часто устраивают live-сессии и пишут треки перед живой аудиторией. Например, этим занимается Эллисон Уокер (Allison Walker) — саунд-дизайнер в игрострое из Мельбурна. По её словам, на таких выступлениях аудитория лучше понимает, насколько сложную работу проделывает композитор цифровой музыки.
К слову, на подобные перформансы можно попасть и в России. Например, в минувшие выходные в Екатеринбурге прошел алгорейв — дискотека, на которой диджеи в реальном времени писали код. Слушатели могли наблюдать, как наборы переменных и цифр превращаются в мелодию.
Некоторые авторы не просто программируют цифровую музыку. Они создают системы машинного обучения, которые помогают составлять музыкальные композиции и даже пишут их самостоятельно.
В этом направлении работает композитор Дэвид Коп (David Cope) из Университета Калифорнии. Он разработал и запатентовал алгоритм, генерирующий музыкальные треки на основе существующих. Например, на видео выше представлена композиция, основанная на творчестве Баха.
На чем пишут
Для создания музыки такого рода используют специальные языки программирования. Их число довольно обширно, поэтому дальше мы приведем лишь некоторые из них.
Примером может быть ORCA — это эзотерический ЯП для создания процедурных секвенсоров, в котором каждая буква алфавита представляет собой отдельную операцию. Один из резидентов Hacker News отметил, что написание мелодии с помощью операторов ORCA напоминает сборку пазла. Исходники и подробную инструкцию можно найти в репозитории на GitHub.
Вот пример мелодии, сгенерированной на ORCA:
Некоторые музыканты создают собственные языки. Например, уже упомянутый Эндрю Соренсен представил Extempore. Он разработан специально для проведения живых выступлений.
В 2014 году Эндрю выступил на конференции для разработчиков OSCON. Там он продемонстрировал возможности своего языка и написал мелодию с нуля. Запись есть на YouTube.
Также стоит выделить язык ChucK, который разработали инженеры из Принстонского университета еще в 2003 году. Он поддерживает параллельное выполнение нескольких потоков и дает возможность изменять программу прямо во время её исполнения. Подробная документация с примерами есть на сайте проекта.
Считать ли программную музыку искусством
Есть мнение, что программно-сгенерированные треки — это не настоящая музыка («искусственная»). В прошлом многие музыканты отказывались играть мелодии, сгенерированные программой Дэвида Копа, когда он просил их об этом. По словам Дэвида, они считали, что это негативным образом повлияет на их профессиональный имидж. Но ситуация изменилась.
Все больше людей и композиторов считает, что компьютеры и вычислительные системы созданы для расширения человеческих возможностей и развития творческих способностей. И все чаще музыканты экспериментируют с новым ПО, техникой и звуками — подбирают и создают необычные семплы. Едва ли музыкальное программирование станет массовым. Но это определенно то явление на стыке сразу нескольких областей знаний и культур, на которое стоит обратить внимание.