Комментарии 7
Чем бы дитя не тешилось, лишь бы не руками…
О музыка программным кодом - надо попробовать!
Лично мне такая идея в голову пришла ещё в конце прошлого века (я тогда как раз баловался под DOS с своим музыкальным редактором для PC-Спикера; а более серьёзно музыку сочинял в Cakewalk, Cubase и в предшественнике Sony Vegas - запамятовал как он назывался) - но тогда мне было не до реализации подобной затей (не по зубам, я ещё только в школе учился) - да и во многом я пришёл к мысли, что у подобного проекта успех напрямую зависит от качественной мат модели и продвинутой IDE - это всё мне было не по моим знаниям! А потом меня жизнь уже направила совсем в другую стезю - и о данном проекте я вспоминал очень редко!
Но вот, свершилось чудо, и кто-то всё-таки взялся за реализацию подобной идеи. Интересно - насколько глубоко пошли разработчики (смотрю - это уже далеко не первый проект на данном поприще, но ранее я ещё ни одного не встречал).
В конце XX программирование музыки мне казалось удобным следующим (как я это представлял и представляю до сих пор - если ничего не забыл):
Можно чётко в цифрах задавать ритмику, в т.ч. динамически меняющуюся; так же чётко в цифрах можно было бы задавать настройки звуковых эффектов и так же динамически их менять
Использовать циклические паттерны, и паттерны абстрагирования, включая наследование с полиморфизмом - для сокращения объёма вводимого повторяющегося кода и быстрого внесения правок в эти сокращённые объёмы
Применять программные техники для чёткой синхронизации отдельных семплов и эффектов на разных звуковых дорожках
Использовать подпрограммы и библиотечные функции для увеличения коэффициента повторного использования
Иметь возможность параметризировать субалгоритмы - делая их ещё более настраиваемыми, более абстрактными и ещё более с повторным использованием; с возможностью легко вносить изменения (от семплов до аранжировки), которые тут же отражались бы на всей композиции
Ну и работать с текстовым представлением мне казалось куда более удобно - когда можно свободно перемещаться по строкам и операторам кода, сворачивать/разворачивать блоки кода, пользоваться буфером обмена. Писать отдельные подпрограммы для текстовой генерации отдельных фрагментов музыкального кода...
Ну а самое главное - это возможность создавать динамическую музыку - как бесконечную и не повторимую, так и зависящую от внешних нестатических факторов - например музыку для игр - которая подстраивалась бы под текущую игровую ситуацию. Ну или упаковывать очень длинные композиции в небольшие программные блоки - как это например практикуется в Демо-сцене, откуда, собственно, и растут ноги программного котинга музыкальных произведений. Но это может быть и не только развлечение - это может быть, например, и лечебная музыка - которая подстраивается под биометрические показатели, считываемые с организма датчиками.
На у самые невероятные возможности - это, конечно, AI-творчество - когда искусственный интеллект мог бы сам творить музыку, из заданных программных паттернов, а попутно создавая новые, и анализируя имеющиеся. Программный музыкальный код тут мог бы быть более удобным - и для AI и для человека, отлаживающего такую систему
А ещё можно писать разные тулзы и сопрограммы для анализа и отладки программного код музыки - в текстовом виде это куда проще
Добавлю:
Делать программную генерацию тонов и звуковых волн семплов, или их программную модификацию. В том числе с применением разных воспитательных программных фишек, музыке напрямую не относящихся
Производить различный программный мультисемплинг семплов, применяя различные алгоритмы смешивания звуковых волн
Музыка как код — опробовать концепцию можно прямо в браузере