Счетчики








РобоМьюзика, или музыка механической сборки

Музыка может иметь глубокое по смыслу наполнение или полниться пустым звоном, быть сделанной изящно или бездарно, привлекать милозвучием или пугать какофонией, радовать оригинальностью или дразнить однообразием. Между крайними мнениями существует множество неприхотливых, далеких от классической строгости, но все же не менее важных оценок, как например "так себе", "устраивает", "неплохо" и так далее. Даются последние, как правило, обычными слушателями, и варьируются такие оценки в зависимости от пристрастий меломана, заведомого знания уровня мастерства сочинителя, избранного музыкального направления и тому подобных моментов, ключевых для конкретного слушателя.

Есть и другая музыка, в сочинении которой человек участвует косвенно, посредством реализации механических, программных или иных прибамбасов, разработки всяких методик, частично имитирующих живого аранжировщика, моделирующих специфичные аспекты работы композитора, кои вкупе и берут на себя собственно сам процесс "сочинительства" музыки. Здесь на первых ролях системы оценочных критериев оказываются вопросы правдоподобной имитации, а проблемы глубокомысленности, изящности, милозвучия и прочего отходят на последний план, поскольку автоматизированная сборка музыки, опирающаяся на грубое и смутное представление о том, как человек сочиняет, и исполненная в основном строгими математическими функциями, может лишь подражать отдаленно каким-то моментам акта творения, но никак не способна значимо приблизиться к причудливому проявлению в музыке многогранной человеческой психики.

Когда, как и зачем

Механическая музыка ведет свое начало с того предалекого мгновения, когда человеческий разум отважился облечь принцип творения музыкальных произведений в форму рациональной научной теории. Тут как тут подоспели практики - истязатели карандаша и бумаги, маги молотка и зубила. И мир стал полниться самодействующими "игрушками" удивительных конструкций, подлинными шедеврами инженерной и научной мысли. Музыкальное искусство от этого не страдало, потому что все эти неживые "музыканты" и "композиторы" не грозили обрушить его устои своим ювелирно точным копированием отдельного произведения или тонким подражанием акту творения методом минимального стилевого переделывания сотворенных человеком мелодий. Однако само по себе это было ново, свежо.

Вскоре впряглись и математики, поклали на партитуры (нотная запись многоголосного музыкального произведения) число, присмотрелись и заявили: "Все это изображается рядом чисел и вот такой зависимостью. Больше ничего!" Сателлиты орлов и решек изображения не разглядели, но речь о зависимостях их привлекла, особенно последнее: >0. Так обществу явилось очередное чудо: купи конструктор вальсов (танго, регги или любое другое по вкусу) и сочини собственную музыку. Идея этой диковинки простая. Кидается два кубика, по их числам имеется координата ячейки в специально рассчитанной математиками таблице (собственно, музыканты в создании таких таблиц принимали участие наравне с математиками). Из указанной ячейки извлекается номер ноты или аккорда. Еще бросок - получи следующую ноту. Через N бросков готов вполне приятный на слух паттерн (небольшой, как правило законченный по мотиву, фрагмент мелодии). Повтор по кругу такого паттерна дает музыку, только быстро надоедливую. Тройка же пяток их, с умом расставленных, махом придадут музыке блеска. Правда, если руки распальцованы только под новорусский аккорд, а то и вовсе играть на музыкальных инструментах не умеешь, воспользоваться этим для изумления ближайшей округи не получится.

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

На помощь снова позвали математиков. Разобравшись в проблеме, они забранились: "На дворе третья десять в третьей лет. На кой леший соваться в хлам старых доктрин? Отменных паттернов итак настрогано людьми до чертиков. Зовутся только теперь они лупами (loop - зацикленный кусочек партии одного или нескольких инструментов). Бери да ставь их в плейлист (компьютерный усеченный вариант партитуры) по определенному правилу. Не здорово привирая, можно заявить, что современные напевы в духе транса, рейва, трип-хопа, хауса и прочих модных стилей подчас делаются чуть ли не по схожему сценарию. Научите только машину подбирать семплы (образец звука музыкального инструмента, сегодня так еще именуют лупы) и в каналах сочетать их по уму".

Вторая проблема решается легче, хотя бы за тот же счет избитого формирования базы данных фрагментарным расчленением инструментальных партий выдуманных человеком композиций. С первой проблемой посложнее. Не хватает конкретных идей, как идентифицировать приемлемость в данной теме того или иного выбранного лупа. Один может стоять к месту, другой на его посту запорет в корне всю мелодию.

И начинают сыпаться из голов автоматизаторов выдумки одна почище другой. Кое-что приносит несомненную пользу. Скажем, деление голосов (на компьютерном сленге, каналов) по категориям: Beat Main, Beat Slave, Beat FX, Bass Main, Bass Contour и так далее по инструментам. К соответствующим каналам подбираются соответствующие лупы, потому в канале какого-нибудь контурного баса будет именно звук, негромко подыгрывающий в коротких местах временного умолчания основного баса. По причине соответствия генерация канального плейлиста может происходить не из базы, а только определенными функциями, в теле которых все тот же генератор случайных чисел может запросто быть задействован под управлением логических операторов. Результат операции вида A=Random(FFFFFFFF) or Random(FFFFFFFF), экстраполированный (каждый бит управляет использованием целой серии последовательных позиций канального плейлиста) на большое количество тактов, неплохо имитирует партию какого-нибудь аккомпанемента. Операции вида B=Random(FFFFFFFF) and Random(FFFFFFFF), или еще лучше инверсная B=A xor FFFFFFFF, годятся для FX-каналов, где изредка основную музыку поддерживают некие звуковые эффекты.

Шаг за шагом приходят мысли более широкой классификации семплов. Не только размещение их навалом в папках по категориям (ударные, басы, вокал, клавишные и тому подобное), но и маркирование какими-нибудь признаками, допустим амплитудными вида "стабильный", "набегающий", "убывающий" и прочими. Во многом это позволит правильнее изменить канальный плейлист, включив семпл в более подходящем месте композиции, а не где он пойдет в разнос с соседними каналами. Хорошо еще лупы обычно делают в одном ключе, отчего не так явственно проявляются проблемы тональной совместимости.

В общем, тяжел и несладок труд истинного автоматизатора. Тяжел потому, что слишком много мелочей должно быть учтено. Чем-то можно пренебречь, что-то обойти, что-нибудь упростить. Благо, способов генерации придумано немало, от совсем уж примитивной смены семплов до заумного формирования всего и вся сызнова. Однако и при этом занятие остается не из легких. А несладок труд потому, что ни одна современная логика пока не в состоянии на основе анализа звуковых отсчетов семпла дать однозначный ответ на вопрос, чем выбранный звук лучше другого сочетается с компилируемым мотивом, как он согласуется со всей темой в целом. Это здорово осложняет алгоритм выбора лупов. Как ни крути, случайный выбор все еще превосходит иные методы, несмотря на несомую с ним проблематику (а там своих заморочек по горло) подконтрольного человеку повторного переизбрания на уровне "не пойдет, выбери заново" отдельных несостоятельных звуков.

И если некий ди-джей ТыцьБум, всеми доступными средствами вылепливая музыку из записанных на пластинке семплов, имеет хоть какое-то право назвать ее сделанной собственными руками и причислять к нехилым творениям, то в сфере производства музыки механической сборки вообще не принято утверждать дюжую музыкальную даровитость механизатора Кнопкодава, от чьего щелчка мышкой она сгенерировалась, хотя тот Кнопкодав мог битый час, а то и до победного конца, морить генератор выбора (да и свои уши), пока последний не исторгнет взамен неудачно найденному оптимальный семпл. Соответственно, на вопрос "зачем?" ответ один: из интереса. Да, искусством тут вроде и не пахнет, такая музыка ни о чем толковом не поведает. Что ж уж поделать, и без этого порядочная доля современной музыки смахивает на бесплодное подражание. Так почему бы не позабавиться попытками подражать подражанию. Своего рода искусство. Человеческое естество подчас ищет творческих развлечений в делах строго утилитарной тенденции. Как пример, зачем делать механические устройства, которые без каких-либо в точной аналогии смоделированных "мозгов" имитируют манеры движения некоторого живого существа, скажем гусеницы, змеи, паука? Только ли из испытательной, концептуальной и технологической необходимости? Ан нет, здесь присутствует и сторонний к целесообразным идеям интерес: а получится подражать в принципе?

Дмитрий Сахань, 29 июля 2006 года