ПК в студии и студия в ПК | ![]() |
| 17:09:2006 г. | |
Автор: Александр ЧЕРВЯКОВ О СЕКВЕНСЕРАХ И …Сказать по правде, я терпеть не могу различного рода вступлений, введений и т.п. Однако правила хорошего тона обязывают напомнить о том, что данное эссе является вторым по счёту в цикле «ПК в студии & студия в ПК». Первая статья представляла собой обзор различных категорий ПО в стиле «галопом по Европам». А теперь самое время сконцентрироваться на чём-нибудь одном, глубоко вдохнуть и нырнуть как можно глубже. В предыдущем материале мы придерживались хронологического порядка изложения, будем же следовать ему и теперь – поговорим о MIDI-секвенсерах. В свою очередь, серьёзный разговор о секвенсерах нельзя начинать без более-менее подробного разговора о протоколе MIDI. Любой (подчеркиваю – любой!) профессиональный секвенсер представляет собой исключительно мощную программу для работы со звуком. Но для того, чтобы воспользоваться этими мощностями, человек должен чётко представлять себе, как данная программа работает. Никто не спорит - её вполне реально освоить, особо «не парясь», методом «научного тыка»; аналогично можно воспользоваться столь любимым в различных быстро-компьютерно-обучающих конторах методом «делай, как я». Однако при таком подходе можно получить только базовые (sic!) навыки работы с программой. Соответственно, 90% процентов её возможностей останется «за бортом», вне поля зрения пользователя. Применительно к секвенсерам это выглядит так: «Секвенсер записывает на треки то, что я играю на синтезаторе. Записанные куски я могу редактировать, копировать и удалять. Я также могу откорректировать тембр, громкость, панораму и эффекты каждого трека». Казалось бы, все правильно, ну, не учтены какие-то мелочи – и черт с ними! Однако, как известно, профессионала от дилетанта отличает именно знание тех самых мелочей. И, в какой-то момент, пользователь-дилетант понимает, что принадлежащая ему связка «синтезатор + секвенсер» перестала его устраивать. Ему требуется что-то новое, творческое, неожиданное – а здесь всё те же звуки, всё те же эффекты… И начинается погоня за новыми версиями программ, за свежими сэмплами, за «незаигранными» лупами…Кстати, такое вот поверхностное знакомство с секвенсерами в 90% случаев шагает под ручку с незнанием возможностей собственного синтезатора. Если руки приложить и голову, секвенсер в паре с несчастной Yamaha PSR-550 способен выдавать такие вещи, что у людей, «вкратце знакомых» с этим инструментом, глаза на лоб лезут. «А откуда у неё такие спецэффекты? А что это был за тембр, откуда взялся? А она что, с сэмплами работает?». И наоборот, роскошный инструмент Korg Triton кому-то через три месяца перестаёт нравиться – дескать, и тембры поднадоели, а тут ещё и на отечественном радио постоянно его звуки узнаёшь, и т.д., и т.п. В общем, в итоге всё снова заканчивается виртуальными семплерами, а Triton получает «выговор с понижением в должности», сиречь используется сугубо в качестве MIDI-клавиатуры. Вот так – Рик Уэйкман с Питером Гебриэлом оным синтезатором не брезгуют, а вот Вася Пупкин из деревни Гадюкино уже из этого инструмента, так сказать, «творчески вырос». Грустно, правда? Что же требуется для того, чтобы реализовать на все 100% возможности связки «инструмент + секвенсер»? Совсем немного: а) выучить наизусть таблицу «MIDI Implementation» в конце руководства для синтезатора; б) с не меньшей скрупулезностью изучить прилагающиеся таблицы «MIDI Data Format»; в) освоить секвенсер «от и до». Всего и делов-то – начать и кончить! В результате гарантируется: а) существенное снижение наркотической зависимости от семплерных библиотек; б) необычайно долгая и интересная работа с синтезатором; в) не хилая денежная компенсация, поскольку потребность в покупке CD с новыми версиями софта/свежими семплами упадет в разы. На сегодняшний день «фасадом» любого секвенсера является окно Track Pane/Clip Pane. Слева находится общая информация о дорожках (номер канала, громкость, тембр, панорама), справа – MIDI-данные в треке, представленные тем или иным образом (чёрные квадратики в Orchestrator, раскрашенные клипы в Cubase и т.д.). Над панелью Clip Pane размещается линейка, на которой отмечены такты, и указатель (song position pointer, SPP). Для записи простенькой пьески этого вполне достаточно – выбираем тембр, ставим трек на запись, нажимаем кнопочку, играем партию на клавиатуре. Повторить, пока не надоест. Записанные фрагменты, естественно, можно копировать, удалять и т.д. Однако для серьёзной работы этих двух окон будет явно недостаточно. рис. 1: Окно Track/Clip Для начала вспомним о том, что синтезатор представляет собой тот же самый компьютер, только очень узкоспециализированный. Тем не менее, у него, как и у всякого компьютера, существует центральный процессор, оперативная память (не путайте с волновой памятью, в которой хранятся звуки) и порты для обмена данными с внешним миром. Из них нас более всего интересует MIDI-порт. В большинстве случаев процессор синтезатора интерпретирует поступающие с MIDI-порта сообщения, как команды. Например, получение сообщения «CA 00*» будет обозначать выбор тембра №1 для MIDI-канала №10, а «9A 3C 7F» будет расшифровано как «Начать воспроизведение ноты «До» первой октавы на канале номер 10 текущим тембром, скорость нажатия 127». Игра на клавиатуре, послекасание (давление на уже нажатую клавишу), нажатие педалей, любые манипуляции с кнопками и регуляторами синтезатора, работа с настройками эффектов с помощью экранного меню – всё это в итоге преобразуется в MIDI-команды. Таким образом, сообщение «установить на канале 1 громкость 100» будет выглядеть «B0 07 64». Секвенсер «снимает» с выхода синтезатора MIDI OUT копии поступающих на процессор команд и сохраняет их в памяти компьютера в той же самой последовательности. Соответственно, при воспроизведении этих данных секвенсером, данные поступают на вход MIDI IN, далее - на MIDI-порт, и обрабатываются процессором синтезатора точно так же, как если бы они были сгенерированы при работе с синтезатором в реальном времени. Обратите внимание на следующие особенности: - Существуют 16 MIDI-каналов, сообщения для которых передаются в едином потоке. Их разбиение на «треки» в секвенсере в известной степени условно. Файлы MIDI формата 0 не содержат информации о треках и раскрываются по схеме «1 канал – 1 трек», то есть даже записанная на нескольких дорожках секвенсера ударная партия (канал 10) будет открываться на одном треке. Файлы MIDI формата 1 сохраняют информацию об отдельных дорожках***. Если вдруг MIDI-файл раскрывается целиком, как одна дорожка, это не глюк секвенсера и не «защита от копирования», как пытался уверить меня один аранжировщик. Для решения этой проблемы в секвенсере Cubase достаточно выполнить команду MIDI a` Dissolve Part a` Separate by Channel. Если используете Cakewalk – сохраните этот MIDI-файл в формате 0 и откройте повторно. - MIDI представляет собой последовательный протокол – попросту говоря, «только следующий приказ отменяет предыдущий». Если после сообщения Note On не поступило сообщение Note Off – возникает так называемая «повисшая» нота. Если при записи фрагмента колесо модуляции было выкручено до максимума, а затем запись была остановлена, не удивляйтесь, если следующий фрагмент на том же треке начнет воспроизводиться с максимальной модуляцией безо всякой на то санкции с вашей стороны, то же самое касается Pitch-колеса. Если где-то в треке прописано сообщение Program Change – в этом месте (а также при запуске секвенсера с любой точки после него) непременно будет происходить смена тембра. - Большинство сообщений Control Change могут принимать только 128 возможных значений (длина 7 бит). Для управления громкостью и панорамой этого вполне достаточно, однако при интенсивной работе с такими параметрами, как, например, Brightness (яркость, прозрачность) или глубина резонанса фильтра, этой дискретизации недостаточно, и будут заметны на слух характерные «ступеньки». Поэтому производители синтезаторов с аналоговым моделированием вынуждены для управления подобными параметрами использовать более сложные, 16-битные типы MIDI-сообщений, такие, как NRPN и т.д. Свободно редактировать, удалять и добавлять все без исключения MIDI-команды, включая Sysex-сообщения (см. чуть ниже) можно только с помощью так называемого MIDI-списка (List View, Event List). Здесь MIDI-сообщения хранятся почти что «в первозданном виде», за исключением того, что шестнадцатеричные числа заменены на более осмысленные текстовые сообщения. Это наиболее «древний», но и наиболее подробный метод редактирования, хотя и не самый удобный с точки зрения пользовательского интерфейса. Во всяком случае, в «железных» синтезаторах он до сих пор благополучно процветает – бывают ситуации, когда без этого списочка просто не обойтись. рис. 2: окно Event Edit В современных синтезаторах система генерации и обработки звука исключительно сложна. Она предусматривает работу с отдельными слоями (parts) тембров, возможность взаимодействия между различными параметрами (например, между глубиной вибрато и послекасанием), а также глубокую настройку эффектов – для серьёзного синтезатора список параметров может содержать несколько тысяч позиций! Возможностей стандартных команд MIDI для этих целей недостаточно – прежде всего, по причине нехватки быстродействия. Как было видно из таблицы 1, каждое канальное MIDI-сообщение занимает 2-3 байта, а, к примеру, передача одного 16-битного значения NRPN – целых 9 байт, для чего стандартной для MIDI скорости передачи 31250 бит/сек уже недостаточно. Обойти данное препятствие можно только с помощью системных сообщений (system exclusive, сокращенно sysex). Системные сообщения позволяют синтезатору или секвенсеру обращаться непосредственно к памяти процессора. Дело в том, что каждому параметру синтезатора соответствует одна (8 бит) или две (16 бит) ячейки памяти, расположенные по определённому адресу. Например, в XG-совместимых синтезаторах параметр «тип реверберации» находится по адресу 020100 (2 байта). Для выбора алгоритма «Hall 1» в эту ячейку следует записать значение 0100, и наоборот, если мы считаем содержимое данной ячейки и обнаружим там число 0301, можно точно сказать, что в данный момент ревербератор работает в режиме «Stage 2». Все параметры ревербератора расположены следом, по адресам от 020102 до 02010D, всего полная настройка ревербератора занимает 14 байт. Если бы мы решили установить все эти параметры при помощи сообщений NRPN, нам пришлось бы потратить на это 42 байта, плюс добавьте время на обработку команд процессором. Признаком начала системного сообщения является команда «F0». Далее идет идентификатор фирмы-изготовителя (43 – Yamaha, 42 – Korg, 41 – Roland и т.д.), номер подключенного устройства и модель синтезатора (например, 4С обозначает «XG-совместимый»). После этого указывается длина сообщения, стартовый адрес и значения для отдельных последовательно расположенных ячеек памяти. Наконец, указывается контрольная сумма (для проверки того, правильно ли была передана информация) и признак конца системного сообщения «F7». Таким образом, сообщение «F0 43 01 4C 00 0E 02 01 00 03 01 … F7» длиной всего в 24 байта позволит нам установить все без исключения параметры ревербератора - сравните это с 42 байтами, которые нам требовались для передачи информации через контроллеры. При этом запись осуществляется непосредственно в память процессора и не требует никакой дополнительной обработки! Если вам это кажется несущественным – пример посолиднее. Системное сообщение, полностью перепрограммирующее тембр синтезатора Yamaha QS-300 (4 слоя), занимает 762 байта. Для передачи этой информации через стандартные MIDI-команды потребовалось бы более двух килобайт данных и Бог знает сколько времени. Современные синтезаторы используют sysex-сообщения очень широко и в самых разнообразных целях, начиная с управления отдельными параметрами тембров и заканчивая обновлением по протоколу MIDI операционной системы (никогда не задавались вопросом, как такое может быть? а вот именно так!). При работе с секвенсером пользователь, не общавшийся с sysex накоротке, рискует обнаружить, что при записи происходит что-то неладное – записывается одно, а воспроизводится нечто «слегка другое», особенно после перезагрузки синтезатора… Когда настройки эффектов слетают в значения по умолчанию – это ещё из самых безобидных случаев! Если при работе с вашим синтезатором подобные вещи наблюдались, сделайте следующее. Во-первых, убедитесь, что на sysex-сообщения при записи не установлен фильтр (в Cakewalk это команда меню Options a` Global a` MIDI, в Cubase – Preferences a` MIDI a` Filter). Убедитесь, что синтезатор также не фильтрует sysex-сообщения при передаче по MIDI. Во-вторых, настройте пустой трек и запишите туда какую-либо манипуляцию с синтезатором (например, выбор тембра). В-третьих, откройте окно Sysex View, настройте его на приём (обычно это «you start MIDI-dump on instrument») и ещё раз произведите ту же самую манипуляцию. Теперь вы можете просмотреть, много ли информации оставалось «за бортом» ранее – сначала в окне Event Edit, затем - в окне Sysex Edit. Скорее всего, будете приятно удивлены. рис. 3: Окно Sysex Edit рис. 4: Окно Event Edit c sysex-сообщениями Ну что же, пойдём дальше. Для редактирования уже записанного нотного материала и управляющих звуком контроллеров окно Event Edit вообще-то пригодно, но чертовски неудобно. Да и не всегда на панели синтезатора присутствуют регуляторы для всех содержащихся в длиннющем списке MIDI Implementation контроллеров. Поэтому, практически у каждого уважающего себя секвенсера, в том или ином виде, обязательно есть окошко Piano Roll (менее распространено название Finger-Prints). С его помощью, буквально несколькими движениями мыши, все неправильно сыгранные нотки можно поправить, лишние удалить, а недостающие – дорисовать. В нижней части экрана расположена область Controllers Pane, позволяющая просматривать и редактировать значения скорости нажатия на клавиши, а также все доступные контроллеры, за исключением системных сообщений. Небольшое замечание. При записи с синтезатора все сообщения обычно прописываются по так называемому «мастер MIDI-каналу» (Master Channel), чаще всего это - канал 1. И, открывая для редактирования контроллеров определённый фрагмент фонограммы, об этом стоит вспомнить. |
| « Novation Remote SL, Motu Ultralite, Motu 828MKLL, Lynx Aurora | Железо домашний студии » |
|---|












