В данном случае я сделал инструмент идеально соответствующий именно такой парадигме создания музыки. Для меня важно воздействовать на инструмент в реалтайме и экспериментировать с ним, импровизировать, искать, исследовать. Для меня важно за короткое время перебрать много вариантов и выбрать самый вкусно звучащий. В общем именно под такой процесс я писал эту программу.
Я вообще анализировал музыку как явление. С принципами музыкальной гармонии я разобрался и это в программе полностью автоматизировано. С принципами ритмических структур тоже мне все довольно понятно. По сути вся музыка всегда состоит из паттернов - неких устоявшихся структур и ритмических рисунков. Если в музыке монотонно повторяется по кругу один и тот же паттерн - это конечно скучно и не интересно. Поэтому в своей программе я заложил принцип банка паттернов - т.е. паттерны постоянно накапливаются и пополняются новыми, а во время создания композиции ты в любой момент можешь переключаться между любыми из десятков, сотен, или тысяч паттернов накопленных тобой в базе - сколько душе угодно. При этом паттерны не обязательно играть целиком - можно играть начало от одного а концовку от другого или любым другим образом резать и переставлять куски паттернов, тасовать и перемешивать их - и все это в реальном времени. Полная импровизация. Даже мелодии можно сочинать не по нотам а тоже экспериментируя из кусков паттернов в реальном времени.
Возможно такой способ создания музыки может показаться непривычным. Но я уверен - он понравится любому кто просто попробует с этим поиграть в реальном времени. Мне во всяком случае точно.
Вообще вся музыка основана на двух столбах - это чувство музыкальной гармонии и чувство ритма. И оба этих аспекта я хорошо изучил за все эти годы пока интересовался и занимался музыкой. Вот на моем понимании этих вещей я и построил эту программу.
Сейчас я создаю (и собираю из всяких источников, скачиваю) самые разные сэмплы для разнообразия инструментов и хочу на днях попробовать поиграть на своей программе полноценную сложную композицию с большим количеством инструментов и ритмических рисунков. Думаю к концу недели смогу показать что у меня из всего этого получилось
В итоге я вижу эту программу в реализации на планшетах под Android - сенсорные экраны как раз идеально подходят для манипулирования музыкальной композицией в реальном времени, для управления пальцами множеством элементов на экране одновременно. Но это конечно будет после того как я достаточно долго поработаю с программой в таком виде как она есть сейчас. В самом процессе работы с программой становится понятно какие улучшения нужно сделать или что в программе изменить и сделать по другому - т.е. нужен достаточно длительный период прокатки программы чтобы довести ее до идеального состояния. А тогда уже можно будет ее портировать под другие платформы и приделывать к ней красивый визуальный интерфейс. Сейчас об этом думать еще слишком рано.