Steinberg Cubase 5. Запись и редактирование музыки Глава 6. Подробно о работе с MIDI

В этой главе мы подробно рассмотрим все средства редактирования MIDI-сообщений, имеющиеся в Cubase 5. А их очень даже немало. Как известно, в программу Cubase 5 по наследству перешли лучшие находки, зарекомендовавшие себя в ее более ранних версиях. История развития и совершенствования продуктов, в имени которых присутствует слово "Cubase", началась с программного MIDI-секвенсора. Звук, аудиоэффекты и виртуальные инструменты появились в Cubase позже. Неудивительно, что разработчики программы довели ее MIDI-составляющую почти до совершенства. В программе представлены все ставшие классическими способы численного и графического редактирования MIDI-данных, все мыслимые функции их обработки, масса интересных MIDI-эффектов.

Итак, приступим к изучению тех возможностей записи и редактирования MlDI-сообщений. которые таятся в Cubase 5.

И начнем с того, что подготовим программу к работе с MIDI-данными, причем сделаем это более тщательно и детально, чем при подготовке к выполнению элементарных операций на начальном уровне, описанных в разд. 1.6.

6.1. Подготовка к работе с MIDI-данными

Подготовка к работе с MIDI-данными включает довольно много операций. В предыдущих главах мы уже рассмотрели многие из них:

□ настройка MIDI-портов (разд. 2.7)\

□ создание проекта и настройка его параметров (разд. 2.9)\

□ загрузка файла проекта, открытие и закрытие проекта, сохранение проекта (разд. I.6)-,

□ настройка метронома (разд. 2.4)-,

□ импортирование MIDI-файла (разд. 1.6.7)\

□ настройка Cubase на работу с внешними MIDI-устройствами (синтезаторами) (разд. 2.6)\

□ выбор параметров фильтрации MIDI-сообщений, поступающих через входные MIDI-порты (разд. 2.7)\

□ работа с атрибутами MIDI-трека, применение элементов секции инспектора MIDI-трека, подключение MIDI-эффектов (разд. 4.2)-,

□ использование пресетов MIDI-трека (разд. 4.2.3)\ П создание MIDI-части (разд. 4.7.1)-,

П рисование отпечатков MIDI-клавиш в окне Key Editor или непосредственно в окне проекта (разд. 4.7.1)-,

□ подготовка MIDI-треков к записи и выполнение записи (разд. 4.7.3).

Осталось познакомить вас лишь с несколькими операциями из тех, которые есть смысл проводить до начала работы с MIDI-проектом. и среди них:

□ выбор параметров отображения MIDI-сообщений;

□ выбор опций записи и воспроизведения MIDI-сообщений;

□ выбор параметров функции Chase;

□ выбор опций экспорта и импорта MIDI-файлов.

6.1.1. Выбор параметров отображения MIDI-сообщений

Командой File > Preferences главного меню откройте окно Preferences и в левой части окна выберите раздел Event Display-MIDI. В правой части окна будут доступны опции управления отображением MIDI-сообщений (рис. 6.1). В раскрывающемся списке Default Edit Action вы можете по своему вкусу выбрать тот MIDI-редактор, который будет открываться двойным щелчком левой кнопки мыши на части, находящейся на MIDI-треке в окне проекта. По умолчанию будет открываться окно Key Editor, которое, и в самом деле, используется чаще остальных редакторов (List Editor, Logical Editor, Drum Editor).

Раскрывающийся список Part Data Mode позволяет выбрать форму отображения сообщений типа Note на MIDI-треке в окне проекта:

□ No Data — не отображать никак;

□ Lines — отображать в виде горизонтальных линий, длина которых пропорциональна длительности ноты;

□ Scores — отображать в виде символов нот (без признаков длительности);

□ Drums — отображать в виде символов, принятых для записи партий ударных инструментов.

Если установлен флажок Show Controllers, то кроме сообщений типа Note в частях на MIDI-треках в окне проекта будут отображаться и другие сообщения (например, типа Controller) в виде вертикальных линий, высота которых пропорциональна значению параметра контроллера.

Если установлен флажок Edit as Drums when Drum Map is assigned, то в частях на MIDI-треках, которые ассоциированы с барабанными картами, сообщения типа Note будут отображаться в виде символов, принятых для записи партий ударных инструментов. Кроме того, двойным щелчком на такой части будет открываться окно Drum Editor (независимо от того, какой редактор выбран в раскрывающемся списке Default Edit Action).

В раскрывающемся списке Note Name Style вы можете выбрать систему обозначения нот, которая будет использоваться при их отображении в окнах редакторов:

□ MIDI — символами А, В, С, D. Е. F, G и # в сочетании с обозначением номера MLDI-октавы (от -2 до 8);

□ MIDI and Value — кроме символов, характерных для предыдущего варианта, будут отображаться также номера MIDI-нот (от 0 до 127);

□ DoReMi — в виде слоговых обозначений ног (Do, Re, Mi, Fa, Sol, La, Si и #) в сочетании с обозначением номера MlDI-октавы;

□ Classic— символами А, В, С, D, Е, F, G и # (для MIDI-октав с -2 по 1), причем октава обозначается количеством штрихов в нижнем индексе (для MIDI-октав с -2 по 0); символами а, Ь, с, d, е, f, g и Jt (для MIDl-окгав со 2 по 8), причем октава обозначается количеством штрихов в верхнем индексе (для MIDI-октав с 3 по 8);

□ Classic (German) — обозначения аналогичны предусмотренным в варианте Classic за одним исключением: вместо символа альтерации Л (диез) к символу, обозначающему ноту, добавляется окончание is. Например, Cis — до-диез первой октавы, dis — ре-диез второй октавы (в системе нумерации Cubase 5).

6.1.2. Выбор опций записи, воспроизведения MIDI-сообщений и параметров функции Chase

Командой File > Preferences главного меню откройте окно Preferences и в левой части окна выберите раздел MIDI. В правой части окна будут доступны опции записи и воспроизведения MIDI-сообщений (рис. 6.2).

При установленном флажке MIDI Thru Active автоматически будет обеспечен мониторинг записываемого MIDI-трека. В результате вы будете слышать то, что играете на MIDI-клавиатуре (мониторинг подробно описан в разд. 2.2, 2.3). Если между клавиатурой и звуковой картой связь по MIDI организована в обоих направлениях, то для предотвращения самовозбуждения MIDI-системы вы должны на MIDI-клавиатуре выбрать режим "Local Off".

При установленном флажке Reset on Stop сообщение Reset будет формироваться при остановке записи или воспроизведения. Эта опция может быть полезной для того, чтобы в следующих сеансах записи или воспроизведения не сохранялись те установки параметров синтеза, которые использовались ранее.

В поле ввода Length Adjustment вы можете выбрать интервал времени (в тиках), на который начало следующей ноты отстоит от окончания предыдущей. Такой интервал необходим для корректного управления по одному и тому же MIDI-каналу формированием нот. имеющих одинаковые номера.

Напомним назначение функции Chase. В частях на MIDI-треках записаны, как правило, не только сообщения о нажатии МЮЬклавиши, но и сообщения других типов. Это могут быть, например, сообщения об изменении различных параметров синтеза, о смене MIDI-инструмента и т. д. Если воспроизведение происходит с самого начала трека, то все сообщения последовательно считываюгся с трека и посылаются синтезатору. Все в порядке. А что будет, если воспроизведение запускается не с начала трека? Некоторые сообщения будут пропущены, останутся "за бортом". Синтезатор даже и "не узнает", что они записаны где-то там на треке в частях, которые не были воспроизведены. Получится, что музыка будет воспроизводиться совсем не тем инструментом, совсем не с теми громкостью, панорамой и ревербераций, что были задуманы вами. Так вот, чтобы такого не случалось, в Cubase и предусмотрена функция Chase.

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

В группе Chase Events можно выбрать те типы MIDI-сообщений, которые не будут учитываться функцией Chase. Напомним смысл типов сообщений, перечисленных в группе Chase Events:

□ Note — сообщения о нажатии MIDI-клавиш;

□ Poly Pressure — давление на отдельные нажатые клавиши;

□ Controller — сообщения об изменениях значений контроллеров;

□ Program Change — смена инструмента;

□ Aftertouch — усредненное давление на нажатые клавиши в одном MIDI-канале;

□ Pitchbend — сдвиг высоты тона;

□ SysEx — привилегированные системные сообщения.

Отдельно поясним назначение флажка Chase not limited to Part Boundaries.

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

Приведем пример. Допустим, что для некоторого трека в основной секции инспектора выбран инструмент Harmonica. Пусть при этом в части на треке записано сообщение о смене MIDI-инструменга: в начале 32-го такта выбран инструмент Viola. Вы мышью переместили указатель текущей позиции в 33-й такт и включили воспроизведение. Если флажок Program Change установлен, то вы услышите губную гармонику (сообщение о смене инструмента не будет воспринято программой), а если флажок снят — скрипку.

В поле MIDI Display Resolution: 1/16 = можно изменить разрешающую способность отображения временных параметров MIDI-сообщений (начального момента и протяженности). Максимальная разрешающая способность составляет 1000 тиков в одной шестнадцатой доле такта. Справа от поля ввода отображается число тиков, приходящееся на четверть такта (PPQBase:), которое вычисляется программой автоматически. Отметим, что параметр MIDI Display Resolution не влияет на разрешающую способность фактического расположения во времени уже записанных MIDI-сообщений.

Если установлен флажок Insert Reset Events after Record, то сообщение Reset будет формироваться после записи каждой очередной части. В противном случае могут возникнуть ситуации, когда запись части завершена, а, например, не освобождена сустейн-педаль или колесо сдвига тона не возвращено в исходное положение. Поэтому запись следующей части начнется совсем не в тех условиях, которые вы предполагали создать.

При установленном флажке Audition through MIDI Inserts/Sends функция Chase будет анализировать также и MIDI-сообщения, формируемые различными эффектами в режимах вставки и посыла (соответствующие слоты имеются на панели инспектора трека).

MIDI Max, Feedback in ms — в этом поле ввода устанавливается максимальная длительность нот при использовании приемов MIDI-редакгироваиия, основанных на принципах акустической обратной связи.

6.1.3. Выбор опций экспорта и импорта MIDI-файлов

Командой File > Preferences главного меню откройте диалоговое окно Preferences и в левой части окна выберите раздел MIDI-MIDI File (рис. 6.3). В правой части окна будут доступны две группы, опции которых позволяют настраивать режимы экспорта и импорта MIDI-сообщений.

Рассмотрим группу Export Options. При установленных флажках с MIDI-треков Cubase 5 в MIDI-файл будут экспортироваться соответствующие параметры:

□ Export Inspector Patch — банк и MIDI-инструмент, выбранные в основной секции инспектора MIDI-трека;

□ Export Inspector Volume/Pan — уровень громкости и панорама, установленные в основной секции инспектора MIDI-трека;

□ Export Automation — данные автоматизации, преобразованные в сообщения типа Controller;

□ Export Inserts — если в режиме вставки используются MIDI-эффекты, то в файле будут сохранены не оригинальные MIDI-сообщения, имеющиеся в частях на треках, а сообщения, которые получились бы в результате их обработки MIDI-эффектами;

□ Export Sends — эта опция аналогична предыдущей (Export Inserts), но только в файле будут сохранены данные, преобразованные эффектами, используемыми в режиме посыла;

□ Export Marker — любые имеющиеся маркеры будут сохранены как маркеры стандартного MIDI-файла;

□ Export as Type 0 — данные с MIDI-треков Cubase 5 будут экспортированы в стандартный MIDI-файл типа 0 (все сообщения будут соответствовать единственному треку); если этот флажок снят, экспорт осуществится в стандартный MIDI-файл типа 1 (каждому MIDI-каналу будет соответствовать отдельный трек);

□ Export Locator Range — если установлен этот флажок, то экспортируются только MIDI-сообщения, находящиеся в промежутке между позициями левого и правого локаторов;

□ Export includes Delay — если установлен этот флажок, то экспорт данных в MIDI-файл будет выполнен с учетом временного сдвига, установленного вами в поле Track Delay in Milliseconds основной секции панели инспектора каждого из треков.

В поле Export Resolution следует задать разрешающую способность по времени, с которой записанные MIDI-сообщения будут храниться в файле. Допустимые значения находятся в пределах 24-960 тиков, приходящихся на четвертную долю такта.

Установленные флажки группы Import Options определяют то, какие данные и каким образом будут импортироваться из MIDI-файла на трек Cubase 5:

□ Extract First Patch — в качестве банка и MIDI-инструмента для трека будут выбраны те, что определяются самыми первыми сообщениями Bank Select и Program Change, имеющимися в импортируемом MIDI-файле;

□ Extract First Volume/Pan — в качестве исходных значений громкости и панорамы для трека будут выбраны те, что определяются самыми первыми соответствующими MIDI-сообщениями, имеющимися в импортируемом MIDI-файле;

□ Import Controller as Automation Tracks — данные об изменении состояния контроллеров, имеющиеся в MIDI-файле, при импортировании в Cubase 5 будут помещены на трек автоматизации;

□ Import to Left Locator — сообщения будут вставлены на MIDI-треки, начиная с позиции левого локатора;

□ Import Marker — если этот флажок установлен, маркеры стандартных MIDI-файлов при импорте будут конвертированы в специфические маркеры Cubase 5;

□ Import dropped File as single Part — если этот флажок установлен, то при переносе MIDI-файла в проект методом перетаскивания (Drag and Drop) файл целиком будет размещен на одном MIDI-треке;

□ Ignore Master Track Events on Merge — если этот флажок установлен, то при импорте файла в проект будут игнорироваться данные об оригинальном темпе композиции, хранящейся в файле; импортированный файл будет воспроизводиться в соответствии с текущим темпом проекта;

□ Auto Dissolve Format 0 — если этот флажок установлен, то при импортировании стандартного MIDI-файла формата 0 MIDI-данные будут автоматически распределены по отдельным трекам в соответствии с номерами треков, содержащимися в файле; в противном случае в проекте Cubase для всех MIDI-данных будет создан единственный трек;

□ Import to Instrument Tracks — если этот флажок установлен, то при импортировании MIDI-файла в проект вместо каждого из MIDI-треков будет создан инструментальный трек (Instrument Track); кроме того, программа загрузит соответствующий пресет для инструментального трека (основанный на сообщениях Program Change, включенных в MIDI-файл) и подключит к каждому из треков по экземпляру ромплера HALion ONE (см. разд. 11.1).

Подготовив программу, можно перейти непосредственно к записи и редактированию MIDI-сообщений. В Cubase 5 есть несколько редакторов для работы с MIDI-данными, представленными в самых различных формах (см. разд. 1.5). Пожалуй, есть смысл начать с того редактора, в котором вы можете работать непосредственно с MIDI-сообщениями.

6.2. Работа в окне List Editor

Окно List Editor относится к наиболее важным редакторам программы. В принципе, практически все, на что способна программа Cubase 5 в части работы с MIDI-сообщениями, можно реализовать в этом редакторе, хотя сделать это будет не всегда легко. Информация в окне List Editor отображается в форме, наиболее близкой к представлению информации в MIDI-системе — в виде сообщений (с параметрами), привязанных к определенным моментам времени и относящихся к конкретному треку.

Командой MIDI > Open List Editor главного меню откройте окно редактора List Editor (рис. 6.4).

6.2.1. Назначение секций окна List Editor

Давайте осмотримся. Основное пространство окно редактора List Editor по

вертикали поделено на три секции:

□ левая секция — список сообщений (List), предназначенный для численного отображения и редактирования параметров сообщений;

□ средняя секция — графический дисплей (Event Display), предназначенный для отображения и графического редактирования сообщений;

□ правая секция — столбец Value (Value Display), предназначенный для графического редактирования некоторых параметров сообщений.

В левой секции окна List Editor находится таблица — список всех MIDI-сообщений в выделенной части, записанных подряд так, как они реально расположены в файле. Исключение составляют только MIDI-сообщения Note Off (MIDI-клавиатура формирует такое сообщение, когда вы отпускаете нажатую клавишу). Для удобства просмотра сами они не выводятся на экран, зато у MIDI-сообщений Note On (нажатие клавиши), обозначенных в списке как Note, есть параметр End (время окончания звучания ноты).

Каждое сообщение (Event) занимает в списке одну строку и, по существу, представляет собой указание, которое должен выполнить музыкальный синтезатор в определенный момент. Каждая строка в списке соответствует какому-либо сообщению (событию). Все события привязаны ко времени. Чем раньше наступает событие, тем выше в списке находится строка.

В списке отображаются сообщения, содержащиеся в той части, которую вы выделили в окне проекта. Если в части много сообщений, то не все они одновременно доступны для просмотра и редактирования. Вывести на экран любой фрагмент списка можно с помощью вертикальной полосы прокрутки.

Возможность просмотра всех MIDI-сообщений подряд в одном списке оказывается полезной в тех ситуациях, когда не удается другими способами найти ошибку (лишнее или неправильное MIDI-сообщение).

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

В первом из них, обозначенном как L, отображается перемещение указателя текущей позиции при воспроизведении: стрелочка указывает на то сообщение, которое в данный момент воспроизводится (или на котором воспроизведение было остановлено). Для того чтобы переместить эту стрелочку, пользуйтесь клавишами <+> или <->.

Строку списка можно выделить щелчком на любом ее месте. Если на панели

инструментов нажата кнопка щ, а в выделенной строке записана нота, то вы услышите ее звучание. Пошаговое прослушивание в прямом направлении производится с помощью клавиши <-1> (происходит движение вниз по списку), в обратном — клавиши > (происходит движение вверх по списку).

Во втором столбце (Туре) указывается тип сообщения (Note. Program Change. Controller и т. д.).

В третьем столбце (Start) указывается позиция MIDI-события в партии в формате такт.доля, часть доли.тик. Для сообщения Note в четвертом столбце (End) в том же формате указывается время окончания звучания ноты, а в пятом столбце (Length) — ее длительность.

В шестом столбце (Data 1) отображается первый байт значения сообщения: для сообщений Note это высота тона в формате, выбранном в окне Preferences (см. разд. 6.1.1 )\ для сообщений Controller— номер контроллера или его имя; для сообщений Program Change — номер программы (тембра, MIDI-инструмента, патча); для сообщений Aftertouch и Polv Pressure — значение силы давления на клавишу; для сообщений Pitchbend — значение первого байта, соответствующего грубой настройке высоты тона.

В седьмом столбце (Data 2) отображается второй байт значения сообщения: для сообщений Note это значение параметра Velocity; для сообщений Controller — значение контроллера; для сообщений других типов значение в этом столбце отсутствует.

В восьмом столбце (Data 3) для сообщений Note отображается значение параметра Velocity сообщения Note Off.

В девятом столбце (Channel) отображается номер MIDI-канала, с которым ассоциировано данное сообщение. В Cubase 5 этот номер канала имеет значение, только если весь MIDI-трек направлен в канал ANY (в инспекторе трека, доступном в окне проекта). В противном случае MIDI-сообщения трека выводятся в MIDI-канал, указанный в окне проекта, а значения номеров каналов, содержащиеся в MIDI-сообщениях, игнорируются.

Десятый столбец (Comment) может содержать текстовые комментарии, например, пометки, позволяющие легче ориентироваться в списке сообщений, или любые сведения, которые автор композиции пожелает сообщить пользователям.

Редактирование содержания таблицы производится с клавиатуры компьютера или мышью с помощью меню и полей ввода. Щелкнув на любом MIDI-сообщении, вы его выделите. Двойной щелчок на любом параметре позволяет редактировать его значение. Нельзя изменять только значения в столбце Туре, а также в пустых полях. Поочередно щелкая на MIDI-сообщениях при нажатой клавише <Shift>, можно выделить несколько MIDI-сообщений. Далее к ним можно применить какую-либо функцию. Их можно удалить с помощью клавиши <Delete>, а также команды Edit > Delete главного или контекстного меню.

В средней секции окна List Editor расположена область графического редактирования сообщений. По горизонтали здесь отложены такты и их доли, по вертикали — позиция в списке. Поскольку в списке все события расположены последовательно, в графической секции редактора они располагаются "лесенкой". Здесь с помощью инструмента (Draw) редактируются существующие и записываются новые сообщения, а нежелательные сообщения удаляются с помощью инструмента ^J (Erase). Применимы также другие

инструменты, о которых мы расскажем чуть позже.

В правой секции окна List Editor располагается столбец Value (Value Display), предназначенный для графического редактирования некоторых параметров сообщений: для сообщений Note это Velocity; для сообщений Controller — значение контроллера; для сообщений Program Change— номер программы (тембра, MIDI-инструмента, патча); для сообщений Aftertouch и Poly Pressure — значение силы давления на клавишу; для сообщений Pitchbend — значение первого байта, соответствующего грубой настройке высоты.

Регулируемый параметр отображается в виде горизонтально расположенных столбиков. Длина столбика пропорциональна величине параметра. Каждый столбик, по сути, служит регулятором. Для того чтобы помочь пользователю быстрее сориентироваться, регуляторы параметра Velocity выделены черным цветом, а остальных параметров — серым. Из всех инструментов, имеющихся в окне List Editor, здесь фактически действует только 0_ (Draw). Не случайно при перемещении в правую секцию окна редактора указатель мыши приобретает форму карандаша. Щелкнув на столбике, его можно укоротить, уменьшив тем самым величину соответствующего параметра. А если захватить столбик мышью и перемещать ее влево-вправо, то вы получите в свое распоряжение плавный регулятор. Чтобы перейти к редактированию соседних параметров, необязательно отпускать кнопку мыши.

Обратите внимание на то. что при изменении длины столбика одновременно будет изменяться число в ячейке одного из столбцов левой секции (Data 1 или Data 2), а также цвет прямоугольника, отображающего соответствующее сообщение в средней секции окна редактора.

В назначении правой секции окна редактора вы теперь, вероятно, разобрались. Давайте сравним роли левой (список сообщений List) и средней (Event Display) секций окна List Editor. С одной стороны, они частично дублируют друг друга: в обеих можно изменять время поступления и длительность сообщения типа Note. Правда, в левой секции это делается численным способом (а значит, с высокой точностью), а в правой — графическим (т. е. приближенно). Но главное отличие не в этом, а оно принципиальное. В левой секции можно отредактировать любые параметры любого сообщения и удалить его, но нельзя вставить новое сообщение. Сделать это можно, только работая в средней секции.

До сих пор мы лишь учились ориентироваться в окне List Editor. Настало время научиться работать в нем.

6.2.2. Инструменты окна List Editor. Редактирование сообщений

В настоящем разделе мы познакомимся с инструментами окна List Editor, подробнее остановимся на некоторых приемах, позволяющих более эффективно использовать возможности окна List Editor. Речь пойдет о поиске сообщений определенного типа, методике вставки новых сообщений, работе с сообщениями типа NRPN и SysEx, редактировании ног с MIDI-клавиатуры, пошаговом вводе нот.

Обзор инструментов окна List Editor

В верхней части окна List Editor располагаются его инструменты — кнопки, раскрывающиеся списки и поля ввода и т. д.

Пользователь может изменить состав инструментов. Для этого следует правым щелчком на панели инструментов открыть контекстное меню. В его первых 16 строках перечислены все имеющиеся в программе инструменты. На панели отображаются те инструменты, которые помечены. Если выбрать строку Show All, то отобразятся все инструменты. При выборе команды Default на панели останутся инструменты, предусмотренные по умолчанию. Команда Setup контекстного меню открывает диалоговое окно, с помощью которого можно не только выбрать отображаемые инструменты, но также изменить порядок их размещения на панели и сохранить удобную для вас конфигурацию панели в качестве пресета.

На рис. 6.5 представлены только инструменты, предусмотренные по умолчанию. Даже в этом случае панель оказывается столь длинной, что не умещается в окне, и для ее просмотра приходится пользоваться горизонтальной полосой прокрутки.

Заметим, что аналогичные инструменты имеются не только в окне List Editor, но и в окнах ряда других MIDI-редакторов программы Cubase 5. Поэтому сейчас мы рассмотрим назначение только тех инструментов, которые могут понадобиться вам в первую очередь, об остальных речь пойдет в других разделах.

171 Solo Editor — кнопка включения режима "соло" для части, редактируемой в окне List Editor. Иными словами, работая с каким-то треком, вы можете слушать только его, а звучание остальных треков отключить. Кнопка не связана с аналогичными инструментами, находящимися в окне проекта (например, в основной секции инспектора трека). После закрытия окна List Editor режим "соло", включенный в нем, автоматически отменяется.

Acoustic Feedback— кнопка включения режима прослушивания звучания нот при выборе в левой секции окна сообщений типа Note.

Show Filter View — кнопка, которая открывает/скрывает панель фильтра

отображаемых сообщений.

Event Type Mask — раскрывающийся список для выбора сообщений. отображаемых в окне List Editor.

40 Show List Value View — кнопка, которая открывает/скрывает правую секцию окна (Value Display).

[У| Object Selection — инструмент выделения объектов в левой и средней секциях окна List Editor. Пользуясь им, можно выделить как отдельное сообщение, так и целую группу сообщений. Для этого в левой секции окна достаточно нажать левую кнопку мыши и провести ее указателем по нескольким строкам списка. В средней секции нужно "нарисовать" пунктирный прямоугольник, охватывающий выделяемые объекты.

10 | Draw — основной инструмент, с помощью которого в окне производится вставка сообщений и редактирование их параметров.

Erase — инструмент удаления сообщений.

Zoom — инструмент изменения масштаба отображения по горизонтали (в средней секции окна). При его применении в сочетании с нажатой клавишей <Alt> изображение уменьшается, без клавиши <Alt> — увеличивается.

| X | Mute — инструмент мыотирования (заглушения) отдельного сообщения или целой группы сообщений (действует в средней секции окна). Затушенные сообщения не удаляются из части, однако при воспроизведении они игнорируются.

■> Autoscroll — кнопка включения режима автоматической прокрутки по вертикали изображения в окне в режиме записи или воспроизведения. Если кнопка нажата, то на экране всегда видно сообщение, которое воспроизводится в данный момент. Кнопка доступна, если выключен режим пошагового ввода, т. е. не нажата кнопка (Step Input).

|п| Show Part Borders — кнопка включения отображения названия части. [ё7| Edit Active Part Only — кнопка включения разрешения редактирования

только активной части.

List of Part on Editor — раскрывающийся список, предназначенный для выбора отображаемой части, когда в окне Cubase 5 Project выделено несколько частей.

ins..vel - 100

Inserted Notes Velocity — поле и раскрывающееся меню ввода значения параметра Velocity записываемых сообщений Note (громкости звучания нот). Пользуясь полем ввода, вы зададите для каждой ноты произвольное значение Velocity (от 0 до 127). Меню позволяет быстро выбрать одно из пяти значений Velocity, причем эти значения предварительно можно установить с помощью окна MIDI Insert Velocities, открываемого командой Setup этого меню.

— раскрывающийся список, предназначенный для выбора типа вставляемого сообщения.

Insert type Note

Snap — кнопка, предназначенная для включения режима привязки вставляемых сообщений к долям тактов.

Ч Snap Туре — раскрывающийся список, предназначенный для выбора режима привязки сообщений к сетке (см. разд. 4.7.4).

Я Quantize — раскрывающийся список, предназначенный для выбора шага квантизации, с которым располагаются вставляемые сообщения.

I Length Quantize — раскрывающийся список, предназначенный для выбора шага квантизации длительности сообщений.

>1<

.н Qj,"> > Г* М — 6 кнопок, с которыми мы познакомим вас несколько

позже.

mouse position

2. 2. 3. 1S

позиция указателя мыши, если он расположен в средней

секции окна. При нажатой кнопке (Step Input) здесь находится поле вво-

да РИИЁГЮИД. в котором отображается и может быть отредактирована позиция вставки сообщения.

Independent Track Loop— кнопка включения режима независимого за-

цикливания одного трека. Пусть, например, композиция состоит из двух треков. Если локаторами выделить первые три такта и для первого трека вклю-чить кнопку

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

Nudge Pallette — инструменты, реализующие функцию Mudge. суть которой в том, что вместо буксировки мышью перемещение выбранного объекта осуществляется с помощью клавиш со стрелками, маленькими шагами (приращениями). Две левые кнопки позволяют изменять начальный момент сообщения типа Note, две правые — конечный (тем самым изменяется длительность ноты). Пара средних кнопок обеспечивает перемещение ноты во времени без изменения ее длительности. Шаг приращения/перемещения соответствует значению, установленному в раскрывающемся списке Quantize, предназначенном для выбора шага кванти

ченный для выбора цветовой гаммы отображения napav гров сообщений. ■ — поле, в котором отображается текущая нота или аккорд.

Если в контекстном меню панели инструментов выбрать строку Show ЛИ. то в окне List Editor отобразятся все инструменты. Фактически к тем. с кото-

зации.

Open Devices — кнопка, нажатием которой открывается панель вирту

►ш

ального инструмента, подключенного к редактируемому MIDI-треку.

Управление отображением сообщений

Часть может содержать очень много сообщений. Если все они будут отображаться в окне List Editor, то поиск нужного сообщения может стать очень утомительным, требуя концентрации внимания. Для того чтобы упростить поиск сообщений, некоторые из них можно временно скрыть. Для этого в окне List Editor есть специальные средства. Среди инструментов, распо

ложенных в верхней области окна, найдите кнопку (Show Filter View). Нажав ее, можно открыть (или, наоборот, скрыть) панель управления отображением сообщений различных типов (рис. 6.6).

Если не установлен ни один флажок, то в списке будут отображаться все сообщения, имеющиеся в выделенной части. Установив какой-либо флажок, вы скроете сообщения определенного типа. Например, можно оставить видимыми на экране только сообщения типа Note или только сообщения типа Program Change. Согласитесь, что работать только с определенной группой сообщений удобнее, чем со всеми сразу.

В окне List Editor предусмотрено еще одно средство выбора отображаемых сообщений: раскрывающийся список (Event Type Mask). Как им

пользоваться?

Выделите в списке окна List Editor MIDI-сообщение того типа, который вы хотите видеть на экране, и затем выберите в раскрывающемся списке Event Type Mask строку Event Types. В списке окна List Editor останутся только сообщения выбранного типа, а остальные будут скрыты. Например, если вы выделили в списке сообщение типа Note, то только сообщения этого типа и останутся на экране в результате применения функции Event Type Mask.

Если же в списке окна List Editor выбрать сообщение типа Controller, а в раскрывающемся списке Event Type Mask выбрать строку Event Types and Data 1, то вы увидите только те сообщения, у которых с выбранным совпадает не только тип, но и значение поля Data 1. Например, если вы выбрали Controller — Sustain, то после выбора варианта Controller and Event Types в списке сообщений будут видны только контроллеры сустейн-педали, а если выбрали ноту СЗ — 64. то в списке останутся только сообщения о включении нот СЗ с Velocity = 64.

Если в раскрывающемся списке Event Type Mask выбрать строку Event Channels, то в списке останутся только сообщения, ассоциированные с определенным MIDI-каналом.

В раскрывающемся списке Event Type Mask вы увидите также подменю, с помощью которых можно фильтровать отображаемые сообщения по нескольким заранее выбранным признакам. А произвольные условия фильтрации сообщений задаются посредством логического редактора, окно которого открывается командой Setup.

Для того чтобы снова перейти в режим просмотра всех сообщений, нужно в раскрывающемся списке Event Type Mask выбрать строку Nothing.

Вставка новых сообщений

Теперь расскажем о том, как вставлять новые сообщения. Пусть в список, представленный на рис. 6.4, нужно вставить сообщение о смене MIDI-инструмента (программы)- В начале трека выбран MIDI-инструмент Acoustic Piano (в стандартном GM-банке— MIDI-инструмент № 1), а нам хочется', чтобы партию, записанную в части на этом треке, начиная с 17-го такта, исполнял MIDI-инструмент Electric Piano (в стандартном GM-банке — № 3).

Первым делом уберем с экрана все лишние сообщения, установив на панели управления отображением сообщений (см. рис. 6.6) все флажки, кроме флажка Program Change. Картина существенно упростится (рис. 6.7).

Теперь выберем инструмент вставки сообщений (Draw) и в средней секции окна указатель текущей позиции поставим на начало 17-го такта (рис. 6.8, справа).

В раскрывающемся списке insert type, расположенном в верхней части окна среди других инструментов, выберем тип вставляемого сообщения (в данном случае Program Change). Наведем указатель мыши на начало 17-го такта, чуть ниже последней заполненной строки списка, и сделаем щелчок левой кнопкой мыши. В списке появится еще одна строка с сообщением типа Program Change (рис. 6.8, слева).

Взглянем на плоды своих трудов. Во-первых, видно (поле в столбце Start), что сообщение вставлено не точно в позицию начала 17-го такта. Ошибка при наведении указателя мыши на 17-й такт в средней секции окна составила в данном случае 163 тика. Если это принципиально (когда, например, первая нота в 17-м такте звучит раньше), то щелкнем на поле тиков в ячейке Start и введем в нем число 0.

Во-вторых, вставленным оказался инструмент № 1. Щелкнем на ячейке столбца Data 1 и вместо числа 1 с клавиатуры введем в ней 3 (можно также воспользоваться клавишами <Т> и <nL>). Вот теперь наконец-то дело сделано. Смена инструмента завершена (рис. 6.9).

Заметим, что установка сообщений точно в начало доли та ктавс ред не й зоне окна возможна, если на панели инструментов нажата кнопка (Snap). Шаг сетки, к которой будут привязаны вставляемые сообщения, выбирается в раскрывающемся списке Quantize.

В списке Length Quantize выбирают дискретные значения длительности вставляемых сообщений типа Note.

Методика записи и редактирования сообщений других типов аналогична рассмотренной.

6.2.3. Работа с сообщениями типа NRPN

В документации на звуковые карты сведения о нерегистрируемых параметрах (NRPN), как правило, приводятся в виде таблиц, в которых содержатся значения младшего и старшего байтов номеров NRPN. В Cubase 5 они (LSB и MSB) также вводятся раздельно.

Значения LSB и MSB в документации на звуковые карты приводятся в шестна-дцатеричной системе счисления, а в окне List Editor значения параметров этих сообщений необходимо указывать в десятичной. Поэтому, чтобы ввести в программе номер NRPN. значения его старшего и младшего байтов необходимо перевести в десятичную систему счисления. Для этого откройте калькулятор (в инженерном режиме) из набора стандартных программ Windows и выберите шестнадцатеричную систему счисления (опция Hex). Введите шестнадцатеричное значение NRPN LSB и поменяйте систему счисления на десятичную (опция Dec). Калькулятор покажет десятичное значение NRPN LSB. Таким же образом получите десятичное значение NRPN MSB.

Рассмотрим пример. В синтезаторах, поддерживающих MIDI-спецификацию XG, предусмотрена возможность управления частотой среза фильтра— параметром Filter Cutoff Frequency — посредством NRPN, у которого LSB = 20h и MSB = 01h (символ h означает шестнадцатеричную систему счисления). С помощью калькулятора получим десятичные значения: LSB = 32 и MSB = 01.

Для ввода NRPN LSB предназначен контроллер № 98, а для ввода NRPN MSB — контроллер № 99. Для ввода старшего байта (MSB) значения NRPN предназначен контроллер № 6 (Data Entry MSB). Младший байт (LSB) значения NRPN нам не понадобится, т. к. для XG-совместимых MIDI-устройств он по умолчанию равен нулю.

Допустим, вы хотите установить максимальную частоту среза фильтра (десятичное значение 127). Для этого в окне List Editor вы должны вставить три сообщения типа Controller, в ячейках столбцов Data 1 выбрать имена контроллеров СС 99 NRPN MSB, СС 98 NRPN LSB и СС 6 DataEnt MSB. а в ячейках столбцов Data 2 ввести значения контроллеров: 1, 32 и 127 (рис. 6.10).

Заметим, что пример приведен для иллюстрации принципа работы с NRPN. На практике применять NRPN для управления синтезаторами, совместимыми с XG, особого смысла нет (вы легко сможете найти очень удобные графические редакторы, см., например, книгу 14]), а управлять частотой среза проще с помощью контроллера № 74. Тем не менее, есть синтезаторы, у которых "достучаться" до большинства параметров синтеза можно только посредством NRPN.

6.2.4. Работа с привилегированными системными сообщениями

Вероятно, вы уже заметили, что в раскрывающемся списке insert type есть строка SysEx. Это означает, что в окне List Editor можно создавать и редактировать привилегированные системные MIDI-сообщения (SysEx — System Exclusive Message).

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

Системные сообщения представляют собой последовательность двузначных шестнадцатеричных чисел (одно такое число соответствует байту). Каждое системное сообщение начинается с числа F0 — идентификатора начала системного сообщения. Затем следует идентификатор устройства (фирмы-производителя этого устройства) или устройства, с которым совместим данный синтезатор. Например, синтезаторы фирмы Yamaha кодируются числом 43, фирмы Roland — 41, EMU — 18. После идентификатора идет последовательность кодов, длина и формат которой определяется моделью синтезатора (устанавливается производителем) и типом передаваемых сообщений. Завершается системное сообщение всегда числом F7 — идентификатором конца системного сообщения (ЕОХ — End Of exclusive).

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

11110000

F0

Exclusive status

01000011

43

YAMAHA ID

0001/1/Ш/1

Device Number

01001100

XG Model ID

0ааааааа

аа

Address High

0ааааааа

аа

Address Mid

0ааааааа

аа

Address Low

0ddddddd

dd

Data

11110111 F7 End of Exclusive

В первом столбце содержатся двоичные коды системных сообщений, во втором— их шестнадцатеричные коды. Прописными (большими) буквами обозначаются шестнадцатеричные цифры от А до F (что в десятичной системе соответствует числам от 11 до 15), а строчными (маленькими)— переменные. В приведенном примере nnnn — номер устройства (синтезатора), которому адресовано сообщение; aa— адрес одной или нескольких ячеек памяти синтезатора, содержащих параметр, значение которого нужно изменить. В данном случае для передачи адреса используется три сегмента: старший (High), средний (Mid) и младший (Low) байты. Переменные dd — это данные, которые необходимо записать в память по указанному адресу. В правом столбце приведены сведения о назначении байта.

Конкретные значения переменных в системных сообщениях следует искать в других таблицах, которые, в свою очередь, могут содержать ссылки на следующие таблицы. Разобраться с этими таблицами не так-то просто, но можно, если захотеть. Чтобы, например, для звуковой карты, поддерживающей спецификацию XG, выбрать реверберацию типа Tunnel (звук, как в тоннеле), последовательность системных сообщений должна выглядеть так: F0 43 10 4С 02 01 00 11 00 F7. О применении системных сообщений для смены типа эффекта в некоторых звуковых картах мы подробно рассказали в книгах [6,9, 11, 19].

Наиболее распространенное применение системных сообщений— передача синтезатору команды сброса в исходное состояние.

Итак, если вы хотите получить доступ ко всем без исключения ресурсам синтезатора, без редактора системных сообщений SysEx вам не обойтись. Как добраться до такого редактора в Cubase 5? Сейчас мы вам об этом расскажем на примере записи сообщения о системном сбросе синтезатора, соответствующего спецификации GM. Оно необходимо для того, чтобы привести систему управления синтезатора в правильное исходное состояние. Подобное сообщение желательно вставлять в начале каждого проекта в часть на один из его MIDI-треков. Слово "подобное" означает здесь то, что сообщение о сбросе должно соответствовать стандарту, который поддерживается синтезатором. Конкретно, следует формировать следующие сообщения:

□ для GM-синтезатора — F0 7Е 7F 09 01 F7;

□ для XG-синтезатора — F0 43 10 4С 00 00 7Е 00 F7;

□ для GS-синтезатора — F0 41 10 42 12 40 00 7F 00 41 F7.

В раскрывающемся списке Insert выберите строку SysEx и уже известным вам способом вставьте в начало списка сообщение типа SysEx (рис. 6.11).

Сообщение типа SysEx" вставлено, но оно пока пусто (содержит только признаки начала и конца SysEx). Обратите внимание на ячейку в столбце Comment,

именно там отображается содержание сообщения, в данном случае символы F0,F7. Щелкните на этой ячейке для того, чтобы открыть диалоговое окно редактора системных сообщений MIDI SysEx Editor (рис. 6.12).

Сообщение может быть очень длинным, тогда оно займет много строк. Чтобы было легче ориентироваться в строках, они автоматически нумеруются по мере ввода байтов сообщения: в столбце Address приводится шестнадцате-ричный номер первого байта в строке. Для сведения в правом столбце (ASCII) приводится содержание каждой строки сообщения, отображенное в виде символов кодировки ASCII. Это — вспомогательные элементы окна. Главное здесь — столбцы 1-7 и инструменты записи байтов. Напомним, что мы собираемся сформировать следующее содержание сообщения: F0 7Е 7F 09 01 F7 (здесь все числа шестнадцатеричные). Начальный и конечный байты уже введены (удалить их невозможно). Для ввода нового байта первым делом нажмите кнопку Insert. Строка удлинится на одну позицию, в которой пока будет записано два нуля. Щелчком на этой позиции сделайте ее доступной для ввода и с клавиатуры введите 01. Дело в том, что последовательность вводится в обратном порядке, и сейчас для ввода доступно содержание предпоследнего байта. Затем опять нажмите кнопку Insert и введите 09. Повторяйте так, пока не введете все содержание сообщения (рис. 6.13).

Если содержание сообщения в руководстве пользователя представлено в десятичной или двоичной системе счисления — не беда. В окно редакто-pa системных сообщений MIDI SysEx Editor встроен калькулятор, позволяющий вводить в поле Binary двоичное число, которое после нажатия клавиши <Enter> программа автоматически преобразует в десятичное (поле Decimal) и введет в ту позицию на рабочем поле окна, которая в данный момент выделена зеленой рамкой. Аналогичным образом будет обстоять дело, если начать с ввода десятичного числа в поле Decimal. Оно будет преобразовано и в двоичную и в шестнадцатеричную формы. Калькулятор "умеет считать" до десятичного числа 127, а большего от него и не требуется.

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

После проверки и исправления (при необходимости) введенной последовательности байтов нажмите кнопку ОК. Содержание сообщения SysEx появится в столбце Comment окна List Editor (рис. 6.14).

6.2.5. Редактирование нот с MIDI-клавиатуры

Всем хороши описанные выше способы редактирования MIDI-сообщений в окне List Editor. Но есть одно неудобство: пользуясь ими, трудно передать ощущение, присущее реальной игре на инструменте. Нота разложена на некие математические составляющие. И не каждый музыкант сможет научиться быстро оценивать влияние того или иного редактируемого параметра на звучание, получающееся в итоге всех манипуляций с кнопками и полями ввода. Хорошо бы иметь возможность вместо этого просто сыграть необходимую ноту с необходимой громкостью! И, конечно, в программе Cubase 5 предусмотрена такая функция. Она включается кнопкой <2> (MIDI Input). Вид па-

Параметры сообщения, которые будут восприниматься редактором при нажатии вами MlDI-клавиш, выбираются специальными кнопками:

нели инструментов после этого несколько изменяется (рис. 6.15). Становятся доступными кнопки, предназначенные для выбора опций записи сообщений с MIDI-клавиатуры.

[У] Rccord Pitch — будет записываться номер MIDI-ноты;

|7Г| Record NoteOn Velocity — будет записываться значение параметра Velocity сообщения Note On (скорость перемещения клавиши при ее нажатии, которую можно считать пропорционально связанной с громкостью звучания ноты); '.

j~«j| Record NotcOff Velocity— будет записываться значение параметра Velocity сообщения Note Off (скорость возвращения нажатой клавиши в исходное положение после того, как вы ее отпустите). Трудно однозначно ассоциировать параметр Velocity сообщения Note Off с конкретным свойством звучания ноты, тем более что далеко не все клавиатуры формируют в сообщении Note Off значение Velocity.

Итак, подключите MIDI-клавиатуру. Нажмите кнопку [©] (MIDI Input). Нажмите в любом необходимом сочетании кнопки [71 (Record Pitch), [7Г] (Record NoteOn Velocity), (Record NoteOff Velocity). В окне List Editor

выберите ноту, которую вы хотите отредактировать.

Сыграйте на MIDI-клавиатуре необходимую ноту с необходимой силой удара по клавише. Выделение "перескочит" на следующее сообщение в списке. Но главное — в столбцах Data 1 и Data 2 сообщения, которое вы редактировали, появятся значения параметров, введенные в результате вашей "живой" игры. Если результат не понравится, можно вновь выделить необходимое сообщение и повторить попытку.

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

6.2.6. Пошаговый ввод нот

Режим пошагового ввода полезен в том случае, когда вы по каким-то причинам не в состоянии сыграть определенный фрагмент композиции в реальном времени, точно выдерживая моменты взятия и снятия нот или аккордов.

Приступая к пошаговому вводу нот, не забудьте подключить MIDI-клавиатуру!

Для перехода в пошаговый режим нажмите кнопку (Step Input). Панель инструментов после этого несколько изменит свой вид (рис. 6.16). Станет доступной кнопка »> (Insert Mode), а поле mouse position изменит свое на

звание на insert position.

Выберите записываемые параметры, нажав кнопки [J] (Record Pitch), (Record NoteOn Velocity), j^j (Record NoteOf'f Velocity) в любом необходимом сочетании. Если кнопка [У] (Record Pitch) останется выключенной, то вместо тех нот, которые вы в дальнейшем сыграете на MIDI-клавиатуре. будет записываться нота СЗ.

С помощью инструмента [ч] или клавишами «->, <—s> установите позицию начала пошаговой записи (в средней секции окна она отмечается вертикальной синей линией). При необходимости уточните ее в поле ввода insert position. В раскрывающемся списке Quantize выберите шаг, с которым будут записываться очередные ноты, а в раскрывающемся списке Length Quantize — длительность записываемых нот.

А теперь можете нажимать клавиши MIDI-клавиатуры. извлекая отдельные ноты или целые аккорды. Соответствующие сообщения будут появляться в окне List Editor. Если нужно ввести паузу— воспользуйтесь клавишей <—i>, и указатель позиции ввода перескочит через долю.

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

Если, прослушав полученный результат, вы придете к выводу, что где-либо посредине записанной последовательности вы пропустили ноту, не спешите удалять все ноты, расположенные после места, где возникла ошибка. Нажми-(Insert Mode) и установите указатель позиции записи в точку.

те кнопку

где должна быть записана пропущенная нота. Сыграйте ее на MIDI-клавиатуре. Нота будет вставлена на свое место, а остальные сообщения, располагавшиеся в точке записи и правее ее, будут одновременно (как единое целое) сдвинуты еще дальше вправо на величину шага квантизации.

По окончании сеанса пошаговой записи не забудьте выключить кнопку (Step Input).

Теоретически с помощью опций окна List Editor можно вставлять в список сообщения любых типов и выполнять операции по их редактированию. Однако на практике оказывается, что сообщения некоторых типов удобнее записывать, пользуясь другими средствами, имеющимися в программе. Ноты лучше наиграть на MIDI-клавиатуре, записать Ь нотаторе (окно Scores) или в редакторе отпечатков фортепианных клавиш (окно Key Editor). Уровнем громкости и значениями контроллеров непрерывного действия удобнее управлять, рисуя графики изменения параметров в окне Key Editor или огибающие автоматизации в окне Cubase 5 Project.

6.3. Работа в окне Key Editor

Окно (редактор) Key Editor программы Cubase 5 предназначено для выполнения двух чрезвычайно важных функций:

□ графического редактирования отпечатков клавиш;

□ графического редактирования параметров MIDI-сообщений.

Окно открывается командой MIDI > Open Key Editor при условии, что в окне проекта выделена хотя бы одна из MIDI-частей.

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

Возможно, некоторым музыкантам это покажется странным, но именно в окне Key Editor (рис. 6.17) удобнее всего редактировать MIDI-информацию.

6.3.1. Инструменты окна Key Editor

В окне Key Editor две секции: верхняя — секция отпечатков клавиш (Note Display) и нижняя — секция графического редактирования параметров MIDI-сообщений (Controller Display). Верхняя секция служит для отображения собственно отпечатков клавиш фортепиано, а нижняя — для графического управления параметрами синтеза звука. Изменять размеры секций можно, перемещая мышью разделительную линию вверх или вниз.

В верхней секции имеется вертикальная полоса прокрутки. Пользуясь ею, можно просмотреть любой участок виртуальной MIDI-клавиатуры (от ноты С-2 до ноты G8).

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

В верхней части окна расположены инструменты редактирования отпечатков клавиш и параметров MIDI-сообщений.

Если нажать кнопку щ (Show Info), то под панелью инструментов появится информационная строка (рис. 6.18), в которой отображаются параметры Start, End, Length, Pitch, Velocity, Channel, Off Velocity выделенного отпечатка клавиши.

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

Следующие два инструмента знакомы вам: такие же точно элементы есть и в окне List Editor.

s Solo Editor— кнопка включения режима "соло" для части, редактируемой в окне Key Editor.

<)с Acoustic Feedback — кнопка включения режима прослушивания звуча

ния нот при их записи и редактировании в верхней секции окна Key Editor. С назначением кнопки ™ (Show Info) вы уже познакомились. Далее следуют инструменты редактирования различных графических объектов. [Vj Object Selection — инструмент выделения объектов в верхней и нижней

секциях окна Key Editor. С помощью этого инструмента можно выделить как отдельные объекты, так и целые их группы. Выделенные отпечатки клавиш можно перетаскивать на любое место верхней секции, удалять или копировать в буфер обмена. Выделенные в нижней секции графики можно удалять. Одновременно с этим будут удалены и те отпечатки клавиш, которым удаленные графики соответствовали. С помощью этого инструмента можно не только перемещать отпечатки клавиш, но и изменять их размер. Захватив мышью левую или правую сторону выделенного отпечатка, можно изменить длительность звука. Захватив мышью среднюю часть прямоугольника, можно изменить положение отпечатка клавиши во времени или изменить высоту тона. Любые изменения отпечатков клавиш будут вызывать соответствующие изменения в списке MIDI-сообщений и в нотной записи.

Инструментом j^j (Draw) окна Key Editor производится вставка отпечатков клавиш и редактирование их параметров.

В рассматриваемом окне имеется еще один инструмент, предназначенный для "рисования" вставляемых объектов. По умолчанию инструмент выглядит так: Г/Ч. А называется он Line. Треугольная стрелка на кнопке инструмента означает, что двойным щелчком на кнопке / открывается меню, в котором можно выбрать разновидность инструмента вставки. То есть под этой кнопкой "скрываются" сразу несколько инструментов. С их помощью можно рисовать графики, составленные из элементов определенной формы, например, параболических, пилообразных, синусоидальных и т. д. На наш взгляд, эта возможность актуальна только при редактировании параметров в нижней секции окна. Если применить данный набор инструментов в верхней секции, то ноты, расположенные на созданных таким путем траекториях, вряд ли будут выражать какую-либо осмысленную музыкальную идею. Исключение составляет разве что такой вариант инструмента, как (Paint). Проведя им в горизонтальном направлении, можно нарисовать последовательность отпечатков клавиш, местоположение и длина которых будут определяться установками, выполненными в полях Quantize и Length Quantize.

Erase — инструмент удаления звуков. Этим инструментом работают точно

так же, как обычным канцелярским ластиком. Нажмите левую кнопку мыши

и протащите указатель мыши по тем отпечаткам клавиш (или графикам изменения значений параметров MIDI-сообщений), которые вам не нужны. Удалить выделенные отпечатки клавиш или графики можно и с помощью клавиши <Delete>.

Trim — инструмент, которым можно разрезать отпечаток клавиши на две

части и одновременно удалить правую часть (укоротить отпечаток, не изменяя положение его начала).

[у] Split — инструмент, которым можно разрезать отпечаток клавиши на две части, причем ни одна из вновь образованных частей не будет удалена. Если выделены несколько отпечатков, расположенных на одной вертикали, то все они будут разрезаны.

^ Glue — инструмент для склеивания отпечатков клавиш, расположенных на

одной и той же горизонтали. Пощелкайте им, и вы увидите, как относительно короткие отпечатки удлиняются и объединяются. При этом всем последующим отпечаткам назначаются свойства (например, значение параметра Velocity) того из них, который был расположен левее.

Mute — инструмент мьютирования (заглушения) отдельного отпечатка

X

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

(Mute) к группе отпечатков. Для того чтобы отменить их мьютирование, вам нужно будет вспомнить, какую именно рамку вы рисовали, заглушая отпечатки, и нарисовать точно такую же еще раз. Вряд ли это удастся сделать, поэтому с части отпечатков мьютирование будет снято, но зато заглушатся какие-нибудь другие отпечатки, впервые попавшие в рамку.

Zoom — инструмент изменения масштаба отображения по горизонтали.

Правее находится кнопка Time Warp, которая служит средством растяжения

и сжатия шкалы времени. По умолчанию кнопка имеет вид II1J (Warp Grid). Нажав эту кнопку, вы получаете в свое распоряжение инструмент, действие которого зависит от условий его применения. Если щелкнуть им на части грека и, удерживая нажатой левую кнопку мыши, перемещать указатель по горизонтали, то шкала времени будет растягиваться или сжиматься, а сообщения, имеющиеся на треках, останутся на своих местах.

Если щелкнуть на кнопке Time Warp в области стрелки, то откроется меню, в котором кроме команды Warp Grid есть команда Warp Grid (musical

events follow). Ее выбор преобразует вид кнопки: HW . Пользуясь таким инструментом, вы сможете в процессе растяжения/сжатия шкалы времени перемещать и сообщения, имеющиеся на MIDI-треках. Фактически это приводит

к изменению темпа их воспроизведения. Если кнопкой £3 Range Selection (находится в окне Cubase 5 Project) выделить часть, то после этого инстру-в произвольных точках шкалы можно расставлять сообщения об

I-HII

ментом

изменении темпа.

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

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

JJm

Если нажата кнопка Indicate Transpositions, то после транспонирования средствами трека Transpose в окне Key Editor отпечатки клавиш будут отображаться не на тех позициях, которые они занимают фактически, а на тех, которые они занимали бы после транспонирования.

Все остальные инструменты, имеющиеся по умолчанию на панели, знакомы вам, т. к. они ничем не отличаются от тех, что имеются в окне List Editor (см. разд. 6.2). Поэтому просто перечислим их.

Если нажата кнопка

■Т» Autoscroll — кнопка включения режима автоматической прокрутки изображения в окне (по горизонтали) в режиме записи или воспроизведения. [Й] Show Part Borders — кнопка включения отображения названия части (название появляется на тактовой линейке вблизи начала части).

Edit Active Part Only — кнопка разрешения редактирования отпечатков

е!

клавиш, принадлежащих только активной части.

I List of Part on Editor— раскрывающийся список, предназначенный для выбора отображаемой части, когда в окне Cubase 5 Project выбрано

несколько частей.

ins. VgJ.

• 100:

Inserted Notes Velocity — поле ввода и меню, где можно выбрать одно из пяти значений параметра Velocity, которое будет автоматически присваиваться сообщениям типа Note, когда вы будете вставлять отпечатки клавиш. Меню также содержит команду Setup, которая открывает диалоговое окно MIDI Insert Velocities, предназначенное для смены любого из пяти фиксированных значений параметра Velocity и сохранения настройки данного инструмента в пресете. Это же окно можно открыть командой MIDI > Insert Velocities главного меню.

JDIiQJYfiS— Note

— раскрывающийся список, предназначенный для выоора типа вставляемого сообщения.

Snap — кнопка, предназначенная для включения режима привязки вставляемых сообщений к долям тактов (она действует и применительно к графикам в нижней секции окна).

И Snap Туре — раскрывающийся список, предназначенный для выбора режима привязки сообщений к сетке (с.и. разд. 4.7.4).

Раскрывающийся список ВЩЙВВ Quantize предназначен для выбора шага квантизации, с которым располагаются вставляемые сообщения. Раскрывающийся список Ш'ДШ?Я Length Quantize предназначен для выбора шага квантизации длительности сообщений.

>|<

Step Input — кнопка, предназначенная для включения пошагового режи

ма записи отпечатков клавиш с MIDI-клавиатуры.

О MIDI Input — кнопка, предназначенная для включения режима редактирования отпечатков клавиш с MIDI-клавиатуры.

Insert Mode — кнопка включения режима сдвига существующих отпе-

->

чатков клавиш вправо от позиции вставки.

[7] Record Pitch, [fT] Record NoteOn Velocity, [tj] Record NoteOff Velocity — кнопки выбора параметров сообщения, которые будут восприниматься редактором при нажатии вами MIDI-клавиш.

_Mouse Note Value и Mouse Time Value — поля, в которых отображаются координаты указателя мыши при условии, что он находится

аж2я8

3. 4. 2. 97

в пределах средней секции окна. Если нажата кнопка (Step Input), то на месте нижнего поля появляется поле, в котором отображается и может быть отредактирована позиция вставки сообщения (совпадает с позицией левого локатора).

Independent Track Loop — кнопка включения режима независимого зацикливания фрагмента одного трека. Справа от кнопки одно над другим расположены поля, в которых отображаются и с высокой точностью устанавли

т

ваются моменты начала и окончания цикла.

Color Scheme Selector— раскрывающийся список, предназначенный для выбора цветовой гаммы отображения параметров сообщений.

chonJ / note

А

— поле, в котором отображается текущая нота или аккорд.

Несколько слов скажем о раскрывающемся списке Color Scheme Selector. Выбирая в нем ту или иную строку, вы сможете влиять на цветовое отображение параметров сообщений в окнах List Editor и Key Editor:

□ Velocity — ноты (для краткости так назовем и отпечатки клавиш в окне Key Editor, и объекты в средней секции окна List Editor) будут окрашиваться в разные цвета в зависимости от значения их параметра Velocity. Установка этого режима позволяет следить за уровнем Velocity, даже если в нижней секции окна Key Editor в данный момент отображается другой параметр. По умолчанию "тихие" ноты отображаются синим цветом, который по мере возрастания значения Velocity постепенно переходит в красный;

□ Pitch — окраска каждой ноты будет зависеть от ее номера в пределах октавы: все до разных октав окрашиваются в один цвет, до-диез — в другой и т. д.;

□ Channel — ноты, ассоциированные с определенным MIDI-каналом, будут окрашиваться в свой цвет;

□ Part— ноты будут окрашиваться в тот цвет, который в окне проекта выбран для данной части;

□ GridMatch — окраска отпечатка клавиши зависит от величины смещения его начала относительно сетки квантизации;

□ Sound Slot — окраска отпечатка клавиши соответствует цвету, установленному для сообщений об артикуляции (см. разд. 6.10) в поле Sound Slots диалогового окна VST Expression Setup; т. е. по цвету отпечатка можно определить, применена ли артикуляция к данной ноте, и если применена, то какая именно.

На окраску собственно нот в окне Scores все это никак не повлияет.

Для всех вариантов, кроме Part, можно редактировать палитру цветов, открыв командой Setup соответствующее окно. Его название и набор опций изменяются в зависимости оттого, какой режим окраски (Channel, Pitch или Velocity) является текущим.

Если в контекстном меню панели инструментов вместо варианта Default выбрать вариант Show All, то в окнах List Editor и Key Editor отобразятся все инструменты. При этом добавятся:

(Nudge Palette)

□ кнопки

а т Ф + т н

позволяют перемещать левую (кнопки Trim Start Left и Trim Start Right), правую (кнопки Trim End Left и Trim End Right) границы выделенного участка проекта, либо весь выделенный участок (кнопки Move Left и Move Right); речь здесь не только об участке проекта, выделенного с помощью инструмента

окна

Cubasae 5 Project, но и о выделенных отдельных отпечатках клавиш или группах отпечатков клавиш;

(Transpose Palette) — позволяют перемещать выделенные отдельные отпечатки клавиш или группы отпечатков клавиш по вертикали (изменять высоту тона), причем кнопки Move Up и Move Down перемещают отпечатки клавиш на один полутон вверх и вниз соответственно, а кнопки Move Up More и Move Down More — на октаву;

- - т

□ кнопка

□ кнопки

►ш

— открывает окно виртуального синтезатора, подключенного

к треку.

6.3.2. Секция отпечатков клавиш

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

Хотя мы и говорим о клавишах фортепиано, на самом деле в окне изображена клавиатура, соответствующая стандарту MIDI (она имеет почти одиннадцать октав). Очевидно, что все клавиши не могут уместиться в окне, поэтому отображается лишь небольшой участок клавиатуры. С помощью полосы прокрутки в правой части окна можно вывести на экран любой участок клавиатуры. Некоторые клавиши подписаны: С.от, где xt— номер октавы. Например, СЗ означает до третьей октавы (в системе нумерации Cubase 5). Через дробь может указываться также номер MIDI-клавиши (если в секции Event Display-MIDI окна Preferences, которое открывается командой File > Preferences главного меню, выбрать вариант MIDI and Value). Кроме того,

в полях f ЖЖ-^7; (Mouse Note Value и Mouse Time Value), расположенных на панели инструментов, отображаются координаты указателя мыши: по вертикали — обозначение ноты и MIDI-номер клавиши, а по горизонтали — время с точностью до тика.

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

Перемещаться вдоль окна отпечатков клавиш можно не только с помощью горизонтальной полосы прокрутки, но и пользуясь клавишами <—£> или «->. При этом будет осуществляться пошаговый переход к очередному соседнему отпечатку клавиши. Выделенный отпечаток клавиши можно перемещать по вертикали с шагом в полутон с помощью клавиш <Т> или «—>.

Если на компьютерной клавиатуре предварительно нажать и не отпускать клавишу <Ctrl>, то щелчком мыши на какой-либо клавише виртуальной клавиатуры можно выделить все соответствующие ей ноты данной части. При этом не имеет значения расположение нот во времени. Это полезно, когда нужно для всего трека изменить, например, громкость звучания конкретной ноты (например, командой MIDI > Functions > Velocity). Предварительно нажав и удерживая клавишу <Shift>. мышыо можно выделить сразу несколько различных по высоте (или по времени исполнения) нот. Если повторно щелкнуть на одной из нот, входящих в выделенную группу, то будет снято выделение со всех ранее выделенных нот (кроме той, на которой этот щелчок выполнен). Если предварительно нажать клавишу <Ctrl>, то выделение будет снято только с одной ноты.

Если нажата кнопка § (Show Info), то непосредственно над секцией отпечатков клавиш окна Key Editor (см. рис. 6.18) располагается информационная строка, содержащая 8 полей ввода. В этих полях вы можете редактировать (или просто наблюдать) следующие параметры выделенного отпечатка клавиши:

□ Start — время, соответствующее положению начала отпечатка клавиши (в формате такт.доля.часть доли.тик);

□ End — время, соответствующее положению окончания отпечатка клавиши;

□ Length — длительность MIDI-ноты (длина отпечатка клавиши);

□ Pitch — обозначение и номер MIDI-ноты, которой соответствует отпечаток клавиши;

□ Velocity — значение параметра Velocity сообщения Note On;

□ Channel — номер MIDI-канала, по которому передается сообщение о включении выделенной ноты;

□ Off Velocity — значение параметра Velocity сообщения Note Off;

□ Articulations — тип сообщения об артикуляции (см. разд. 6.10).

Редактировать содержимое полей можно как непосредственно вводя в них необходимые числовые значения, так и с помощью клавиш > или

Итак, работа в верхней секции окна Key Editor сводится к вставке и редактированию (различными способами) отпечатков клавиш в соответствии с вашим композиторским замыслом.

6.3.3. Секция графического редактирования параметров MIDI-сообщений

Секция графического редактирования параметров MIDI-сообщений занимает нижнюю область окна Key Editor. Каждый звук характеризуется не только высотой тона и длительностью, но также громкостью и рядом других параметров. Как вы уже знаете, MIDI-сообщения о нажатии клавиши содержат информацию об изменении громкости звука. В окне Key Editor можно управлять громкостью звучания нот, соответствующих отдельным отпечаткам. Громкость можно задавать как в цифровой, так и в графической форме. Кроме громкости, теоретически можно управлять любым параметром, поддерживаемым MIDI-устройством. Однако на практике бывает затруднительно управлять параметрами, предполагающими точную установку значения, например такими, как NRPN.

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

В левой части секции графического редактирования окна Key Editor расположен раскрывающийся список (рис. 6.19)— меню, содержащее перечень сообщений, параметры которых доступны для редактирования в секции управления параметрами. На рис. 6.18 в этом меню выбран элемент Velocity.

Если в этом меню выбрать команду Setup, то откроется диалоговое окно Controllers Menu Setup (рис. 6.20).

Окно содержит два прокручиваемых списка. В левом списке (In Menu) перечислены контроллеры, включенные в меню секции графического редактирования. В правом (Hidden)— все оставшиеся возможные контроллеры. Вы можете изменять содержание списка In Menu. Если хотите сократить перечень контроллеров, выделите имя одного из них (или нескольких) и нажмите кнопку »>. Соответствующие строки переместятся из списка In Menu окна Controllers Menu Setup в список Hidden. Если список In Menu нужно пополнить, то выделите нужную строку в списке Hidden и нажмите кнопку <«. Затем нажмите кнопку ОК — обновление меню свершится.

Работа в секции графического редактирования окна Key. Editor сводится к выбору редактируемого параметра и изменению высоты столбиков, отображающих значение того или иного параметра. В этих целях можно использовать инструменты (Draw), / (Line) и fcj (Erase).

Рассмотрим особенности действия инструмента [j^J (Draw) и различных вариантов инструмента

|1F| Draw и Paint— можно рисовать столбики произвольной высоты, редактировать параметры отдельно взятого отпечатка клавиши.

[/] Line — можно рисовать графики изменения параметра, состоящие из отрезков прямых линий (пример применения представлен на рис. 6.21).

Parabola — можно рисовать графики изменения параметра, состоящие из линий параболической формы (рис. 6.22).

ру| Sine — можно рисовать графики изменения параметра, состоящие из линий синусоидальной формы (рис. 6.23).

Triangle— можно рисовать графики изменения параметра, состоящие из пилообразных кривых (рис. 6.24, а).

Square — можно рисовать графики изменения параметра, состоящие из

1.

последовательности прямоугольных импульсов (рис. 6.24, б).

Для последних трех инструментов период графика зависит от содержания полей Quantize и Length Quantize.

Вы видите, что однократное применение любого из этих инструментов приводит к изменению параметров сразу многих сообщений. Инструменты удобны тем, что однократный выбор команды Edit > Undo также сразу отменяет все эти изменения.

По умолчанию в секции графического редактирования отображается график изменения одного из параметров (например, на рис. 6.18 отображен график изменения параметра Velocity). Однако при желании вы можете наблюдать и редактировать одновременно несколько параметров и даже все параметры, включенные в меню (см. рис. 6.19).

Для того чтобы добавить в секцию графического редактирования линейку с графиком изменения еще одного параметра, выполните следующие действия. Щелчком правой кнопки мыши откройте контекстное меню и в нем выберите команду Create New Controller Lane. Появится вторая линейка с графиком изменения текущего параметра. В меню (см. рис. 6.19) выберите необходимый параметр, например Pan. В качестве примера на рис. 6.25 приведен вид окна Key Editor, в котором для отображения одновременно выведены графики изменения значений параметров Velocity и панорамы.

Когда вам захочется скрыть линейку с графиком какого-либо параметра, щелкните на ней правой кнопкой мыши и в открывшемся контекстном меню выберите команду Remove this Lane или щелкните на значке - (минус) в левой части обрамления окна. Такими способами можно закрыть вообще все линейки.

Несколько слов скажем об особенностях графического управления некоторыми параметрами.

С помощью сообщений Pitchbend можно передавать данные о положении колеса изменения тона. Положение колеса изменяется от-8192 до 8191. Как правило, по умолчанию чувствительность колеса устанавливается равной ±2 полутона. Это значит, что положение колеса -8192 соответствует понижению высоты звука на 2 полутона, а 8191 — повышению высоты звука на 2 полутона. Чувствительность колеса можно запрограммировать с помощью регистрируемого параметра RPN 0 (методика выполнения этой операции подробно рассмотрена в книге [3]). Регистрируемые параметры (RPN) применяются также для подстройки строя синтезатора.

Нерегистрируемые параметры NRPN с одними и теми же номерами различные производители музыкальных инструментов и студийного оборудования могут использовать для разных целей (в отличие от RPN).

На практике управлять параметрами NRPN с помощью опций окна Key Editor трудно. Дело в том, что значение NRPN складывается из NRPN LSB и NRPN MSB (это относится и к RPN тоже). Поэтому для того чтобы получить численный результат, имеющий определенный смысл, вам потребуется производить вычисления, которые, кроме сложения, должны включать в себя еще и перевод чисел из десятичной системы в шестнадцатеричную и обратно.

Итак, мы рассмотрели окно Key Editor, позволяющее редактировать партии мелодических инструментов, представленные в виде последовательности отпечатков клавиш.

6.3.4. Режим редактирования Edit In-Place

Начиная с Cubase SX 3, редактировать отпечатки клавиш можно не только в окне Key Editor, но также непосредственно в окне проекта. Такой режим редактирования называется Edit In-Place (редактирование на месте).

На рис. 6.26 для сравнения представлено окно Cubase 5 Project до (рис. 6.26, a) и после (рис. 6.26, б) включения режима Edit In-Place. В режиме Edit In-Place изображение MIDI-трека подменяется изображением отпечатков клавиш, имеющихся в частях на этом треке.

Для перехода в режим Edit In-Place предназначена команда главного меню MIDI > Edit In-Place. Режим включается для того трека, который выбран в списке треков (Track list, см. гл. 4) окна проекта (Cubase 5 Project), либо выделен в этом же окне. На рис. 6.26, а и 6.26, б таким треком является трек Strings. Для перехода в режим Edit In-Place (и возврата в обычный режим) можно воспользоваться кнопкой [tsj| (Edit In-Place), на рис. 6.26. а и б, на нее наведен указатель мыши.

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

Cubase 5 Project выберите инструмент (Zoom). На клавиатуру, расположенную левее отпечатков клавиш, наведите указатель мыши. Он должен принять вид ладони: Нажмите и не отпускайте левую кнопку мыши. Теперь перемещение указателя мыши в вертикальном направлении вызовет прокрутку виртуальной клавиатуры и отпечатков клавиш, а в горизонтальном — изменение масштаба отображения отпечатков клавиш.

Режим удобен тем, что не нужно открывать и перемещать с места на место окно Key Editor, а также можно совместить редактирование отпечатков клавиш и атрибутов MIDI-трека.

Но главное преимущество заключается в том, что. работая с отпечатками клавиш одного трека, можно одновременно держать перед глазами всю структуру композиции. Да и это еще не все.

Если выбрать в списке треков окна проекта Cubase 5 Project не один, а несколько MIDI-треков, то командой MIDI > Edit In-Place главного меню режим Edit In-Place включится для всех них одновременно (например, на рис. 6.26, в — для двух треков). В этом случае можно Визуально сопоставлять расположение отпечатков клавиш, принадлежащих к разным трекам.

В режиме Edit In-Place для каждого MIDI-трека (и инструментального трека) в поле трека отображается два дополнительных элемента.

В правом верхнем углу поля трека имеется кнопка треугольной формы. Ее нажатием открывается/сворачивается панель, содержащая несколько инструментов, совершенно идентичных инструментам окна Key Editor:

I* ♦ t Vr

□ m KL-. S3 IS

Состав инструментов

можно изменять с помошью контекстного меню.

Под виртуальной клавиатурой расположена кнопка [о] (Controller Lane Presets). Она открывает меню, в котором можно выбрать различные варианты отображения графиков изменения контроллеров, связанных с редактируемым треком:

□ No Controller Lanes — дорожки контроллеров отображаться не будут, вы сможете наблюдать только отпечатки клавиш;

□ Velocity Only — будет отображаться только дорожка Velocity;

□ Show Used Controllers — будут отображаться дорожки всех контроллеров. задействованных совместно с данным треком.

Команды Add и Organize этого меню открывают диалоговые окна, которые позволяют сохранять и редактировать пресеты, определяющие специфические наборы отображаемых дорожек контроллеров.

Фактически режим Edit In-Place дает возможность наглядного отображения партитуры в виде нескольких параллельных треков отпечатков клавиш. Это, в свою очередь, способствует лучшему представлению "вертикали" композиции: всегда можно проследить, какие инструменты будут звучать в тот или иной момент, какое движение совершают разные голоса, как изменяется гармония.

6.4. Работа в окне Drum Editor

Если редактируемый MIDI-трек (точнее, редактируемая часть, находящаяся на MIDI-треке) содержит сообщения для ударных инструментов, то вместо Key Editor удобнее применять другой редактор — Drum Editor. Его окно (рис. 6.27) открывается командой MIDI > Open Drum Editor.

В этом случае вместо прямоугольных отпечатков клавиш вы видите ромбики, обозначающие начальные моменты формирования звуков ударных — отпе-

чатки ударных инструментов, а вместо клавиш фортепиано — названия ритмических инструментов (столбец Instrument), а также обозначения клавиш, которым они соответствуют (столбец Pitch).

Работа в окне Drum Editor, в конечном счете, сводится к тому, что вы должны:

□ в верхней секции окна в необходимых долях тактов расставлять ромбики — отпечатки необходимых ударных инструментов;

□ для каждого отпечатка ударных инструментов задавать параметры синтеза, рисуя их графики в нижней секции окна (как минимум, задавать изменение Velocity).

Окно Drum Editor как нельзя лучше приспособлено для обеспечения такой деятельности. Неудивительно, что оно отличается особой структурой и наличием специфических инструментов.

6.4.1. Особенности инструментов окна Drum Editor

Понятно, что работа с ударными музыкальными инструментами хотя и имеет свои особенности, но, вместе с тем, является частным случаем работы с музыкальными инструментами вообще. Поэтому среди инструментов окна Drum Editor вы найдете кнопки, поля ввода и раскрывающиеся списки, знакомые по ранее рассмотренным окнам MIDI-редакторов List Editor и Key Editor. Их мы рассматривать не будем. Остановимся лишь на новых инструментах. Их всего три:

[sj Solo Instrument— включение режима сольного прослушивания партии выделенного ударного инструмента (при воспроизведении или записи);

\ Drumstick — запись ромбиков-отпечатков ударных инструментов

в верхней секции окна (основной рабочий инструмент в Drum Editor);

(♦) Use Global Quantize — включение квантизации, общей для всех ударных

инструментов.

Инструмент Draw в окне Drum Editor отсутствует.

Определенные особенности также проявляются в двух элементах, имеющихся и в окне Key Editor:

□ инструмент действует только в нижней секции окна, а среди его разновидностей нет варианта Paint;

□ в качестве вертикальной координаты в соответствующем поле кроме номера ноты отображается название ударного инструмента.

6.4.2. Редактирование партий ударных инструментов

Итак, для каждого ударного инструмента выделена своя строка в верхней секции, которая, в свою очередь, состоит из двух областей. В правой области располагаются линейки, поделенные на такты и доли тактов. Именно на них инструментом \ (Drumstick) и следует наносить отпечатки ударных инструментов. В левой области есть несколько столбцов (их количество и назначение зависит от того, выбрана ли какая-либо барабанная карта в раскрывающемся списке Map).

Сначала рассмотрим структуру левой области верхней секции окна при условии, что барабанная карта не выбрана (в раскрывающемся списке Map выбрана строка No Drum Map). Фактически в этом случае будет установлено стандартное для GM закрепление ударных инструментов за MIDI-клавишами (см. рис. 6.27).

В такой ситуации левая область окна поделена на четыре столбца:

□ безымянный столбец, щелкая на ячейках которого можно выделить определенный ударный инструмент и услышать его звучание;

□ столбец Pitch, в котором указаны обозначения и номера MIDI-клавиш (нот). Содержание ячеек данного столбца для редактирования недоступно;

□ столбец Instrument, в котором указаны названия ударных инструментов. Текст в ячейках данного столбца доступен для редактирования;

□ столбец Quantize, в ячейках данного столбца для партии каждого ударного инструмента можно ввести свое значение шага квантизации.

Реальное влияние на процесс редактирования партий ударных инструментов оказывает только содержимое ячеек последнего из перечисленных столбцов. Чтобы разобраться в этом, рассмотрим методику записи отпечатков ударных инструментов для одной из партий. Допустим, что удары инструмента Bass Drum должны приходиться на начало такта и происходить раз в такт. Поэтому для инструмента Bass Drum в поле столбца Quantize введем значение 1/1 Note. Для этого следует щелкнуть на поле Quantize и в открывшемся меню

выбрать одну из стандартных длительностей. Теперь убедимся, что кнопка (♦) (Use Global Quantize) выключена. В противном случае на результат будет влиять содержание раскрывающегося списка, находящегося под ней. Далее выберем инструмент \ (Drumstick). Подготовка к записи партии завершена. Приступайте к главному. В правой области окна нацельте указатель мыши на любую точку линейки, соответствующей инструменту Bass Drum, нажмите левую кнопку мыши и проведите ее указателем вдоль линейки. Отпечатки ударного инструмента будут установлены точно в назначенные места: в начало каждого такта (рис. 6.28).

Направление перемещения указателя мыши не имеет значения — можно двигать его вправо и влево. Главное, чтобы один и тот же такт не был пройден дважды. Иначе при повторном проходе ранее нанесенные отпечатки будут удалены.

Аналогично записываются партии других ударных инструментов. Причем для каждой из них в поле столбца Quantize можно задать свой шаг квантизации. Так, например, на рис. 6.29 для Side Stick выбран шаг квантизации 1/2, поэтому отпечатки этого инструмента оказались вставлены через полтакта.

В отличие от окна Key Editor в нижней секции рассматриваемого редактора отображаются параметры (например, значение Velocity) не одновременно всех инструментов (клавиш), а только того из них. который выбран в верхней секции (на рис. 6.29. например, таким инструментом является Closed Hi-Hat). Поэтому и редактировать параметры можно для каждого инструмента в отдельности, что в случае ударных очень удобно.

Если кнопка

<8

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

Получается, что при записи партии средствами окна Drum Editor наименьший шаг записи ударов равен шестьдесятчетвертой триоли. Это. конечно, совсем неплохо. Однако если понадобится внести в партию еще более тонкие ритмические нюансы, то придется перейти в окно List Editor и в нем отредактировать содержание столбца Start для каждого сообщения — сдвинуть сообщения вперед-назад на несколько тиков.

Итак, мы разобрались в структуре окна для того случая, когда барабанная карта не выбрана. А теперь в раскрывающемся списке Map выберем, например, строку GM Map. Вид окна Drum Editor после этого изменился (рис. 6.30). Если барабанная карта для трека выбрана, то двойным щелчком на нем в окне проекта открывается окно Drum Editor, а не Key Editor.

В левой области появились еще пять столбцов:

□ М (Mute) — щелкая на ячейках этого столбца, можно заглушить любые ударные инструменты. При редактировании нескольких партий такая возможность дает дополнительные удобства;

□ I-Note — в этом столбце указывается фактическое соответствие канала данного инструмента (строки таблицы) определенной ноте во входном потоке MIDI-сообщений;

□ O-Note — в этом столбце указывается фактическое соответствие канала данного инструмента (строки таблицы) определенной ноте в выходном потоке MIDI-сообщений;

□ Channel — MlDI-канал, ассоциированный с данным ударным инструментом. Канал можно выбрать в меню, открываемом щелчком на соответствующей ячейке столбца Chanjiel;

□ Output — выходной MIDI-порт, которому будут посылаться сообщения. Щелчком на ячейке этого столбца открывается меню выбора выходного порта.

с-Омит) Cdflor: drum»

PKdi

butuiNri

 

M I-NK,

О-Иом

D\4f«

Oupti

С1/36

 

1.16

С1/Э6

С1/Э6

10

 

ct\n>

SrfaSKb

1/16

СШ/37

СЧ/37

10

0»«*

W/38

 

1Л6

DI/3B

Dl/Эв

10

D»«J

D8I/39

"VC CW.

1/16

0K1/5S

0J1/39

10

м»л

El/40

Etoctic Srwe

1/16

El/40

El/40

10

<м«*

Ft/41

lowFloot Ton

1/1G

Г1/41

П/41

10

ОмЛ

01/43 Н(ЛПи»1о« 1/16 Oil/44 Р»ЫНШ41 1/16

I3W

61/43 Ы/4Э 10 OoMul С1П/44 cm/44 10 Dalai*

♦ ♦ ♦

♦ ♦ ♦

ClaudM*»** h>«

±±s£

J_L

i—_

Рис. 6.30. Окно Drum Editor.

8 раскрывающемся списке Map выбрана строка GM Map

Дополнительные столбцы левой секции окна приобретают значение в том случае, когда вы записываете партии ударных инструментов с MIDI-клавиатуры или синтезатора, имеющих нестандартную раскладку ударных инструментов. Редактируя содержание столбцов I-Note и O-Note. можно установить любое соответствие ударных клавишам. Правда, думается, дело до этого не дойдет. В комплекте с Cubase 5 поставляется множество файлов с самыми различными вариантами Drum Map. Команда MIDI > Drum Map Setup открывает окно Drum Map Setup, с помощью которого любую из этих барабанных карт можно загрузить в программу, после чего новая барабанная карта становится

доступной и в раскрывающемся списке Map окна Drum Editor. Подробно о работе с окном Drum Map Setup мы рассказали в разд. 4.2.2.

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

В завершение раздела осталось сказать, что редактирование параметров MIDI-сообщений в нижней секции окна Drum Editor ничем не отличается от аналогичной процедуры в окне Key Editor, описанной нами в разд. 6.3.3.

6.5. Работа в окне Logical Editor

Работа над музыкальной композицией — это не только творчество. Приходится также выполнять массу рутинных операций, отнимающих много сил. Особо нудным занятием является редактирование однотипных параметров серии однотипных MIDI-сообщений. То нужно найти все ноты с определенным номером, чтобы затем отредактировать какой-либо из их параметров; то нужно, избавляясь от огрехов исполнения, удалить случайные ноты (как правило, очень короткие или очень тихие); то нужно транспонировать часть нот; то нужно отфильтровать из списка сообщения определенного типа. Композиций у вас много, да все они содержат не по одному десятку треков, а сообщений на них— не сосчитать! Сколько драгоценного времени тратится на подобную работу...

Нечто похожее наблюдается в математике, когда приходится, например, для получения графика тысячи раз повторять вычисления по одной и той же формуле, подставляя различные исходные данные. Математики давно изобрели способ облегчения своей и нашей жизни — программирование. Программист один раз пишет последовательность команд, а многократное их выполнение возлагает на вычислительную машину. В основе такого подхода лежит один из языков программирования, обеспечивающий перевод инструкций, формулируемых в удобном для человека виде, в код, понятный машине. Многие Windows-приложения содержат в себе встроенные языки программирования, позволяющие автоматизировать повторяющиеся операции и расширить функциональные возможности приложения. Так. например.

в программе Cakewalk SONAR, работу с которой мы рассмотрели в книгах [9, 11, 19, 22, 26], имеется встроенный язык CAL, позволяющий писать достаточно сложные программы обработки MIDI-данных. С нашей точки зрения, окно Logical Editor также можно рассматривать как графическое средство доступа к языку программирования последовательности операций с MIDI-сообщениями. Пожалуй, от типичных средств редактирования содержания компьютерных программ Logical Editor отличается лишь относительной простотой да еще формой составления программ. При работе с Logical Editor вам не потребуется вести посимвольную запись операторов программы. Вы их будете выбирать из числа тех, что предлагаются в меню и в списках.

В названии редактора слово "логический" присутствует не случайно. Ведь суть работы с Logical Editor состоит в следующем:

1. Вы задаете признаки, по которым программа должна выявить определенные MIDI-сообщения. Критерии поиска формулируются как совокупность логических условий. Например, на обычном человеческом языке это может выглядеть так: "Найти все MIDI-сообщения типа Note, для которых Velocity меньше 10".

2. Вы указываете программе последовательность действий, которые она должна выполнить по отношению к выявленным сообщениям. Например: "Удалить".

3. Вы определяете область, в пределах которой программа должна выполнять ваше задание. Например, выделяете часть на MIDI-треке.

Иными словами, в работе с редактором вы постоянно используете логические условия.

Вообще говоря, в математике существует обширный раздел, который так и называется — "Логика". Одной из задач логики является исследование эффективных способов построения сложных логических высказываний на основе элементарных логических операторов. Среди различных логических систем особое место занимает двоичная (булева) логика, в которой и исходные объекты, и результаты их обработки принимают только два значения. Обычно эти значения обозначаются как 0 и 1, или как ЛОЖЬ (FALSE) и ИСТИНА (TRUE). В частности, доказано, что самые сложные отношения между объектами (условия) могут быть выражены на основе суперпозиции всего лишь двух элементарных логических функций (операторов). Разработчики Logical Editor выполнили это условие с избытком: в качестве таких операторов выбраны три функции: NOT, AND и OR. Функции AND и OR присутствуют в явном виде, они так и обозначены: AND и OR. Функции NOT в явном виде вы здесь не найдете, но фактически, выбирая одно из двух условий — Equal или Unequal, вы будете иметь дело именно с ней.

NOT— функция одной переменной. Она принимает значение 1. когда переменная равна 0, и значение 0, когда переменная равна 1.

Остальные логические функции позволяют работать с различным числом логических переменных. Для функций AND и OR минимальное количество переменных равно двум. Логические функции задаются в виде таблиц истинности. В табл. 6.1 приведена таблица истинности функции AND, а в табл. 6.2 — функции OR.

Таблица 6.1. Функция AND

х2\х.

0

1

0

0

0

1

0

1

Таблица 6.2. Функция OR

х2\х.

0

1

0

0

1

1

1

1

В верхней строке каждой таблицы приведены значения первой логической переменной (xj). В левом столбце — значения второй логической переменной (jc2). На пересечении строки и столбца записан результат операции. Например, (1 AND 0) = 0,(1 AND 1)= 1,(0 OR 1)= 1.

Словами табл. 6.1 можно описать так: в результате операции AND получится ИСТИНА только в том случае, если обе переменные ихгз) принимают значение ИСТИНА.

Смысл табл. 6.2 иной: в результате операции OR получится ИСТИНА в том случае, если хотя бы одна из переменных (jci или х{) принимает значение ИСТИНА.

Возможно, некоторым музыкантам и это легкое прикосновение к математике покажется слишком сложным. Но если вы хотите научиться пользоваться окном Logical Editor, то ничего не поделаешь, без понимания хотя бы элементарных вещей не обойтись. Ведь именно путем построения цепочки логических операторов вам предстоит объяснять программе задачу, которую вы ей ставите. Известная программистская мудрость гласит: "Что запрограммируешь, то и получишь". Не хотелось бы, чтобы, применяя Logical Editor, вместо удовольствия от работы вы получали неожиданные неприятности.

Окно Logical Editor (рис. 6.31) открывается командой MIDI > Open Logical Editor.

С помощью окна Logical Editor определяются параметры поиска и преобразования MIDI-сообщений, записанных в части на MIDI-треке. Возможные варианты действий:

□ преобразование свойств найденных сообщений;

□ удаление найденных сообщений;

П вставка новых сообщений, параметры которых определенным образом связаны с найденными сообщениями.

В окне Logical Editor имеется два рабочих поля: в верхнем (столбцы (. Filter Target, Condition. Parameter 1, Parameter 2, Bar Range, ), bool) определяются условия фильтрации.

В нижнем рабочем поле (столбцы Action Target, Operation. Parameter 1.

Parameter 2) определяются параметры преобразования MIDI-сообщения. Под каждым из рабочих полей имеется пара кнопок: + (добавить строку в список на рабочем поле) и - (удалить строку из списка на рабочем поле).

В строках верхнего рабочего поля вам предстоит ввести программу, согласно которой будут выявляться сообщения, характеризуемые определенными признаками. В строках нижнего рабочего поля предстоит формулировать конкретное задание для Logical Editor, т. е. указывать действия, которые должны быть выполнены в отношении выявленных сообщений.

Рабочие поля можно сравнить с двумя разграфленными листками обыкновенного блокнота. На первом вы составляете описание какого-либо объекта (например, "женщина, молодая, красивая"), а на втором пишете, что нужно будет с таким объектом сделать, если он вам встретится (например, "познакомиться").

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

Задача логическому редактору в общем виде формулируется путем выбора одной из строк в раскрывающемся списке Function, расположенном внизу по центру окна Logical Editor:

П Delete — удалить найденные сообщения;

□ Transform — преобразовать сообщения;

□ Insert— вставить сообщения, найденные в соответствии с заданными условиями;

□ Insert Exclusive — вставить сообщения за исключением найденных в соответствии с заданными условиями;

П Сору— копировать сообщения, преобразовать их согласно заданным условиям и вставить на другой трек;

□ Extract — извлечь найденные сообщения и вставить их на другой трек;

1

□ Select — выделить найденные сообщения, с тем чтобы вы могли продолжить работу с ними в другом редакторе.

Разработчики утверждают, что средствами Logical Editor можно выполнить преобразования любой сложности. И это очень похоже на правду. Во всяком случае, количество различных вариантов преобразований подсчитать очень трудно. Никому из нас не удалось бы перебрать их и за всю свою жизнь. Редактор Logical Editor, как и любое устройство, логика которого построена не по жесткой схеме, а программируется, сам может считаться объектом творчества. Поэтому бессмысленно пытаться обучать вас выполнению пяти, десяти, двадцати и т. д. конкретных преобразований. Все, чем мы можем вам помочь в освоении Logical Editor, так это разъяснить общие принципы его применения. Вот и продолжим это занятие.

Рассмотрим использование окна Logical Editor на примере одного из пресетов. Раскроем список Presets и выберем пресет standard set 2 > del patch changes. Судя по названию, пресет предназначен для удаления из списка сообщений о смене MIDl-инструмента.

Программа преобразований загрузилась в Logical Editor. Посмотрим, как это отразилось на содержании окна (рис. 6.32).

В раскрывающемся списке Function появилась надпись Delete. Значит, сообщения действительно будут удаляться. Справа от элементов управления пресетами в поле комментария содержится пояснение о том. что будут удалены все сообщения, о смене программ (MIDI-инструментов), в том числе и сообщения о выборе банков инструментов.

Условие фильтрации набрано в верхнем рабочем поле. Здесь трудно охватить запись взглядом. В данном случае компактно записанное условие должно было бы выглядеть так:

( Туре = Program OR ( Type = Controller AND ( Valuel = 0 OR Valuel = 32)))

Попробуем расшифровать эту запись. Начнем с пары внешних скобок — ( и ). Они служат признаками начала и конца логического оператора, определяющего условия фильтрации. Сообщения каких типов будут удалены? Или типа Program Change (см. выражение Type = Program), или типа Controller (см. выражение Туре = Controller). О том, что именно "или — или", свидетельствует первый слева оператор OR. Все ли сообщения типа Controller будут удалены? Нет, не все, а только те, которые, будучи сообщениями данного типа, одновременно удовлетворяют дополнительным условиям: значения их параметра Valuel равны или 0, или 32. Об этом свидетельствует выражение ( Туре = Controller AND ( Valuel = О OR Valuel = 32 )). Как известно, контроллер № 0 — это BankSel LSB (младший байт сообщения о выборе банка), а контроллер № 32 — это BankSel MSB (старший байт сообщения о выборе банка). Итак, действительно, в рассмотренном условии запрограммировано удаление всех возможных сообщений, связанных со сменой MIDI-инструмента.

Даже предусмотрен тот факт, что в различных MIDI-спецификациях предусмотрены различные способы адресации банка.

Теперь рассмотрим внимательнее верхнее рабочее поле (рис. 6.33), с тем чтобы понять, каким образом только что проанализированное условие оказалось записанным там.

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

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

Получается следующее:

□ в одной строке можно записать некоторое выражение, заключенное в скобки. Количество скобок в пределах от 0 до 3 выбирается в ячейках ( и ). Cubase 5 автоматически проверяет выполнение правил синтаксиса, присущих данному языку программирования. Одно из них заключается в том, что количество закрывающих скобок должно быть равно количеству открывающих;

□ в ячейке столбца bool можно записать один из двух логических операторов (Or или And).

Выражение, записанное в строке, может состоять из следующих компонентов.

□ Filter Target — признак (объект) фильтрации. Выбор осуществляется из вариантов:

• Type Is (по типу сообщения);

• Position (по позиции сообщения);

• Length (по длине сообщения, только для сообщений типа Note);

• Value 1 (по значению первого параметра сообщения);

• Value 2 (по значению второго параметра сообщения);

• Channel (по MIDI-каналу);

• Property (по атрибуту сообщения — muted, selected, locked);

• Value 3 (по значению третьего параметра сообщения).

□ Condition— условие фильтрации (состояние признака фильтрации). Выбор осуществляется из вариантов, число и смысл которых зависят от объекта фильтрации, выбранного в столбце Filter Target. Например, для объекта Channel такими вариантами будут: Equal (Равно), Unequal (Неравно), Bigger (Больше), Bigger or Equal (Больше или равно). Less (Меньше), Less or Equal (Меньше или равно). Inside Range (Находится

в заданном диапазоне). Outside Range (Находится вне заданного диапазона).

□ Parameter 1, Parameter 2 — значения параметров.

□ Bar Range — временной диапазон поиска сообщений в пределах каждого такта. Столбец доступен только в том случае, когда в столбце Filter Target выбран объект Position, а в столбце Condition — признаки Inside Bar Range или Outside Bar Range.

Итак, для составления программы поиска и преобразований сообщений необходимо путем выбора элементов в раскрывающихся списках заполнять ячейки в строках верхнего и нижнего рабочих полей.

Для применения Logical Editor нажмите кнопку Apply (см. рис. 6.32).

Не станем углубляться дальше. Не очень верится в то, что вы всерьез займетесь разработкой собственных алгоритмов для Logical Editor (особенно если не обладаете соответствующей подготовкой в области программирования). А вот разобраться в смысле преобразований, которые сохранены создателями Cubase 5 в виде пресетов, вам теперь вполне по силам. Там вы обнаружите очень полезные вещи. Советуем вам в свободное время поэкспериментировать с содержимым раскрывающегося списка Presets, применяя пресеты для обработки какого-либо несложного и хорошо знакомого вам материала. Кстати говоря, списки пресетов Logical Editor содержатся также в системе подменю, которые открываются командой MIDI > Logical Presets.

Напомним, что в гл. 4 рассмотрен пример применения для преобразования MIDI-сообщений окна Input Transformer, очень похожего на окно Logical Editor. Разница заключается в том, что окно Input Transformer предназначено для редактирования параметров фильтрации и преобразования MIDI-данных в реальном времени, а с помощью окна Logical Editor осуществляются фильтрация и преобразование MIDI-данных, уже сохраненных на треке. Кроме того, в Cubase 5 имеется работающий в режиме реального времени MIDI-плагин Transformer, который является полным аналогом Logical Editor.

Команды и функции, применяемые в процессе редактирования MIDI-сообщений, сосредоточены в меню MIDI. В предыдущих разделах текущей главы мы уже обращались к командам, открывающим различные MIDI-редакторы (за исключением окна Scores— этот редактор мы рассмотрим в гл. 7). С работой в окне Drum Map Setup, открываемом командой MIDI > Drum Map Setup, мы познакомили вас в гл. 4. За пределами нашего повествования пока остаются некоторые средства редактирования MIDI-сообщений, в частности, функции, доступные в подменю MIDI > Functions, и группа команд, связанных с квантизацией.

6.6. Применение квантизации

В самом общем смысле суть квантизации состоит в привязке начальных моментов MIDI-сообщений и/или их протяженности во времени к выбранной дискретной сетке. Перечислим наиболее распространенные задачи квантизации.

□ Выравнивание неточно сыгранной последовательности нот по заданным долям такта.

□ Преобразование ритмической структуры обрабатываемой партии в соответствии с образцовой партией.

□ Внесение небольших "случайных" отклонений моментов взятия нот и их длительностей от идеально равномерной тактовой сетки. Такая обработка имитирует игру исполнителя-человека и позволяет избавиться от впечатления навязчивой механистичности в звучании партий, созданных с помощью MIDI-секвенсора.

В Cubase 5 предусмотрено много различных алгоритмов квантизации. Перед тем как перейти к их анализу, рассмотрим команду Quantize Setup, которая открывает диалоговое окно Quantize Setup, предназначенное для выбора параметров квантизации.

6.6.1. Выбор параметров квантизации

Итак, откроем диалоговое окно Quantize Setup (рис. 6.34) и рассмотрим его содержание.

В средней части окна расположено поле Grid Display, в котором (в пределах одного такта) наглядно отображаются сетка квантизации и те изменения, которые происходят с ней при выборе различных значений параметров и алгоритмов квантизации.

В верхней части окна находится группа Grid Quantize, элементы которой предназначены для установки сетки квантизации — положения на оси времени тех точек, к которым в результате квантизации будут привязываться сообщения. В группу входят:

□ раскрывающийся список Grid, в котором выбирают основной шаг квантизации в пределах от целой до стодвадцатьвосьмой длительности;

□ раскрывающийся список Туре, предназначенный для перехода:

• к пунктирной длительности (Dotted — удлинение шага квантизации на половину основной длительности, в нотной записи такие длительности обозначаются как "нота с точкой");

• к длительности, позволяющей образовывать триоли (Triplet — деление основной длительности не на две части, а на три);

□ еще большую гибкость в вопросе выбора шага квантизации даст вам поле ввода Tuplet. С его помощью такт и основные доли такта можно разделить на любое количество частей. Это позволяет формировать любые триолеобразные ритмические фигуры, базирующиеся на квинтолях (рис. 6.35), секстолях, септолях и т. д.;

□ с помощью слайдера Swing можно сместить каждый второй узел сетки квантизации относительно его обычного положения (рис. 6.36). При воспроизведении квантизированной таким образом музыки действительно возникает ощущение свинга;

□ слайдер Magnetic Area позволяет определить в окрестностях узлов сетки квантизации размер тех областей (рис. 6.37), в пределах которых квантизация будет оказывать влияние на ноты ("притягивать" их к узлам). Моты, находящиеся вне окрестности, заданной параметром Magnetic Area, могут быть не затронуты квантизацией. Это также служит разрушению ощущения монотонности в образе идеально ровной MIDI-музыки. Область захвата отображается на поле Grid Display в виде голубых прямоугольников, длина каждого из которых пропорциональна значению Magnetic Area.

А вот в поле Non Quantize можно задать ширину (в тиках) области, в пределах которой квантизация, наоборот, не будет оказывать влияния на ноты. Это и позволит, с одной стороны, сохранить небольшие отклонения от равномерной игры, которые как раз и являются одним из признаков стиля музыканта-профессионала, а с другой стороны, устранить грубые исполнительские ошибки.

Если в поле Random Quantize ввести ненулевое значение (в тиках), то сообщения будут квантизироваться к случайным позициям в пределах указанного "расстояния" от сетки квантизации.

В поле Iterative Strength задается значение (в процентах) параметра, определяющего область действия алгоритма квантизации, который приводится в действие командой MIDI > Iterative Quantize (ее мы охарактеризуем чуть позже).

Если установлен флажок Move Controller, то при перемещении сообщений типа Note в результате квантизации будут также перемещаться и соответствующие им сообщения об изменении состояния контроллеров.

Обращаем ваше внимание: если установлен флажок Auto, то любые изменения сетки квантизации, выполненные в диалоговом окне, немедленно находят отражение в окне Key Editor: изменяется "густота" вертикальных линий сетки в правой секции. Кроме того, изменение параметров Grid, Туре и Tuplet мгновенно отображается в поле Quantize окон Key Editor и List Editor.

Для того чтобы при снятом флажке Auto применить установленную квантизацию к MIDI-сообщениям, записанным на треке в выделенной части, нужно нажать кнопку Apply Quantize. Если вы не хотите немедленно применять квантизацию, то просто закройте окно Quantize Setup.

6.6.2. Суть различных алгоритмов квантизации

После того как вы выбрали параметры квантизации, можно применять ее на практике. Доступ к соответствующим командам осуществляется либо из контекстного меню, либо из меню MIDI главного меню.

Непосредственно в меню MIDI (или в подменю MIDI контекстного меню секции треков окна проекта) имеются две команды квантизации:

□ Over Quantize — произвести полную квантизацию моментов наступления событий в соответствии с сеткой квантизации, выбранной в раскрывающемся списке Quantize окна Key Editor;

□ Iterative Quantize — выполнить итеративную (приближенную) квантизацию, при которой начальные моменты событий переместятся не точно в узлы сетки квантизации, а в некоторую их окрестность, ширина которой определяется значением параметра Iterative Strength (выбирается в диалоговом окне Quantize Setup).

Кроме того, в подменю Advanced Quantize содержатся пять дополнительных команд, относящихся к квантизации. Команды доступны только при открытых окнах редакторов Key Editor или List Editor, либо если в окне проекта на MIDI-треке выбрана хотя бы одна часть. Рассмотрим каждую из этих команд.

□ Quantize Lengths — выполнять квантизацию только продолжительности событий, не затрагивая их начальные моменты.

□ Quantize Ends — выполнять квантизацию только моментов окончания событий.

□ Undo Quantize — отменить ранее выполненную квантизацию. Данная команда в отличие от отмен, выполняемых командой Edit > Undo, оказывает влияние только на операции квантизации, не затрагивая другие разновидности редактирования. Вместе с тем применение команды Undo Quantize отображается в предыстории редактирования окна Edit History.

□ Freeze Quantize — стереть из предыстории квантизации информацию о первоначальных положениях и протяженности событий. После применения данной команды к выделенным сообщениям их текущие положения и длительности программа будет считать исходными. Если ранее квантизация не выполнялась, то команда не окажет никакого влияния. Если квантизация имела место, то после применения команды MIDI > Advanced Quantize > Freeze Quantize не будет действовать команда MIDI > Advanced Quantize > Undo Quantize. Однако и в последнем случае отменить квантизацию все-таки можно. Для этого следует воспользоваться командой Edit > Undo.

□ Part to Groove — выполнить groove-квантизацию (квантизацию по образцу) выделенной части на MIDI-треке. Подробно о подготовке шаблона для groove-квантизации си. в разд. 9.3.1.

Обилие алгоритмов квантизации — это то, чем всегда гордились поклонники музыкальных редакторов семейства Cubase. Суть этих алгоритмов за долгие годы не претерпела значительных изменений. Поэтому при желании вы сможете найти их подробное описание в книгах, посвященных ранним версиям программы Cubase. Мы же на этом завершаем тему квантизации.

В заключение хочется обратить ваше внимание только на одно обстоятельство. Квантизацию можно отнести к тем средствам программы, которые позволяют в автоматическом режиме выполнять одновременную обработку большого количества сообщений в соответствии с заданным алгоритмом. Это может помогать в работе, но только в том случае, когда вы хорошо представляете ребе, что получится в ее результате при различных начальных условиях. Поэтому советуем вам вводить в свою практику различные приемы квантизации постепенно после того, как на понятных вам примерах вы испытаете их в действии.

6.7. Применение команд меню MIDI

Непосредственно в меню MIDI имеется 21 команда. Кроме того, еще ряд команд доступны из трех подменю: Advanced Quantize (5 команд). Functions (16 команд) и Logical Presets (количество команд зависит от числа фабричных и пользовательских пресетов).

О командах, открывающих окна основных редакторов, а также о командах, имеющих отношение к квантизации, настройке барабанной карты и выбору пресетов логического редактора, мы уже рассказали. Команда VST Expression Setup будет рассмотрена в разд. 6.10. А сейчас мы сосредоточимся на следующих командах меню MIDI: Transpose. Merge MIDI in Loop, Freeze MIDI Modifiers, Dissolve Part, Bounce Selection, O-Note Conversion, Repeat Loop и Reset.

Начнем с самого простого: командой Reset вы можете послать синтезатору сигнал сброса MIDI-контроллеров в состояние по умолчанию. Такая необходимость возникает чаще всего в тех случаях, когда происходит случайное "подвисание" ноты: сообщение Note On прошло, a Note Off — нет.

Остальные команды требуют чуть более подробного пояснения.

6.7.1. Команда Transpose — транспонирование выделенных MIDI-hot

Команда MIDI > Transpose открывает диалоговое окно Transpose (рис. 6.38), предназначенное для транспонирования выделенных MIDI-hot.

В поле Semitones вы должны указать интервал транспонирования (в полутонах). Положительное число означает транспонирование вверх, отрицательное — вниз. Алгоритм работы окна Transpose состоит в том, что к номерам нот, записанных в части на треке, прибавляется число, введенное вами в поле Semitones.

Если установлен флажок Scale Correction, то в той части MIDI-трека, которая подвергнута обработке, имеющиеся ноты будут заменены на ближайшие ноты, соответствующие заданной тональности (левый раскрывающийся список группы Scale) и гамме (правый раскрывающийся список).

Разработчики программы предлагают вам самим решать, как быть в тех случаях, когда в результате транспонирования ноты могут "забраться" слишком высоко или "опуститься" слишком низко. Если установлен флажок Keep Notes in Range, то максимальный диапазон транспонирования будет ограничен значениями, введенными в полях Upper Barrier и Lower Barrier. Советуем не менять значения, установленные по умолчанию (от С-2/0 до G8/127). В этом случае, даже если в промежуточном результате вычислений, сопровождающих транспонирование, номер ноты выйдет за допустимый интервал [0,127], ничего страшного не случится. Программа автоматически прибавит к промежуточному результату или число 12, или -12, и ноты окажутся в пределах существующих MIDI-октав. В итоге, нота до по-прежнему останется нотой до, нота ре — нотой ре и т. д.

Если же в полях Upper Barrier и Lower Barrier вы зададите слишком узкий допустимый диапазон транспонирования, то алгоритм будет иным способом реагировать на возникновение "пограничных конфликтов":

□ если сумма номера исходной ноты и числа, заданного в поле Semitones, превысит значение поля Upper Barrier, то в итоге будет создана нота с номером. равным значению поля Upper Barrier;

П если сумма номера исходной ноты и числа, заданного в поле Semitones, будет меньше значения поля Lower Barrier, то в итоге будет создана нота с номером, равным значению поля Lower Barrier.

В таких ситуациях вероятным становится непредсказуемое изменение нот: нота до вполне может превратиться, например, в ноту ля или в любую другую.

Элементы группы Scale Correction позволяют в процессе транспонирования нот дополнительно корректировать их высоту, так чтобы они оказались принадлежащими заданной тональности (Root Note) и заданному ладу (Scale Туре). Если установить флажок Scale Correction, то станут доступными раскрывающиеся списки подгрупп Current Scale (выбор исходной тональности и лада) и New Scale (выбор тональности и лада, в которые нужно транспонировать ноты). Тональностей двенадцать. Это очевидный факт. А вот ладов здесь аж 27! Причем наряду с общеизвестными ладами среди них есть и такие, определение которых не во всяком учебнике по теории музыки удастся обнаружить. Не расстраивайтесь! Окно Transpose наряду с выполнением своей основной функции может служить удобным наглядным пособием для изучения сущности того или иного лада.

Советуем поступить следующим образом. Запишите в части на MIDI-треке ноты гаммы До мажор. В поле Semitones введите 0. Оставьте элементы подгруппы Current Scale в состоянии, предусмотренном по умолчанию. А в раскрывающемся списке New Scale поочередно выбирайте перечисленные там лады и применяйте функцию Transpose, нажимая кнопку ОК. После каждого применения функции смотрите в окне Key Editor (или Score Editor), что из этого вышло, и, включив воспроизведение, слушайте ноты. Только не забывайте перед выполнением очередного транспонирования отменить результаты транспонирования предыдущего (чтобы исходным ладом всегда был мажорный лад).

Этому окну можно найти и совершенно необычное применение. Если в полях Upper Barrier и Lower Barrier ввести одно и то же значение, то все ноты, содержащиеся в выделенной части, превратятся именно в ту ноту, которая указана в данных полях. Понадобиться это может в тех случаях, когда вам захочется из мелодической партии выделить ритм "в чистом виде".

6.7.2. Команда Merge MIDI in Loop— перезапись MIDI-сообщений с разных треков на один; применение MIDI-плагинов

Команда Merge MIDI in Loop позволяет объединить все MIDI-сообщения, находящиеся на незаглушенных треках между левым и правым локаторами, в единую часть. Часть размещается на выбранном треке. Команда открывает диалоговое окно MIDI Merge Options (см. рис. 6.39), в котором следует определить опции формирования части.

Наибольшая польза от команды Merge MIDI in Loop может быть получена втом случае, когда она используется для применения результатов работы MIDI-плагинов.

MIDI-плагины в Cubase 5 в основном используются в реальном времени. Для этого вы сначала должны подключить MIDI-плагин к проекту одним из двух способов:

□ в режиме вставки как эффекты последовательного действия (в секции Inserts инспектора или в аналогичной секции микшера);

□ в режиме посыла как эффекты параллельного действия (в секции Sends инспектора или в аналогичной секции микшера).

Затем вы можете регулировать параметры плагина в его окне. Результат работы плагина, минуя трек Cubase 5, будет поступать непосредственно на выходной MIDI-порт программы (все подробности о работе с MIDI-плагинами читайте в гл. 9).

На работу плагина в реальном времени тратится некоторая часть ресурсов компьютера. Если к проекту подключено много плагинов, то нагрузка на компьютер может стать существенной. Поэтому хорошо было бы обладать инструментом для пересчета результатов работы плагина в MIDI-сообщения, записываемые вместо исходных непосредственно в часть на MIDI-треке. Подобрали параметры плагина в реальном времени, убедились в том. что результаты его работы вас устраивают, — и давайте команду на их запись. Плагин после этого уже не нужен — отключайте его от проекта.

Именно таким средством и является диалоговое окно MIDI Merge Options (рис. 6.39), открываемое командой MIDI > Merge MIDI in Loop.

В окне находятся четыре флажка: Include Inserts. Include Sends, Erase Destination и Include Chase.

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

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

Если установлен флажок Erase Destination, то после выполнения команды исходные данные из фрагментов частей, задействованных в обработке, будут удалены.

Если установлен флажок Include Chase, то при выполнении функции Merge MIDI in Loop будут учтены сообщения, находящиеся вне выделенного фрагмента части, но имеющие к ней прямое отношение. Например, будут учтены сообщения о смене MIDI-инструмента (Program Change), находящиеся перед позицией левого локатора.

В гл. 8 мы научим вас использовать команду Merge MIDI in Loop для исследования сущности MIDI-плагинов, имеющихся в Cubase 5.

6.7.3. Команда Freeze MIDI Modifiers— применение MIDI-преобразований реального времени

Вы уже знаете, что ряд преобразований MIDI-данных можно выполнять в реальном времени (в процессе записи и воспроизведения). Приведем пример. Вы обнаружили, что какая-либо партия, записанная на MIDI-треке, исполнена с постоянным запаздыванием относительно тактовой сетки проекта. Исправить такую погрешность можно двумя способами. Первый способ: в окне Key Editor выделите все отпечатки клавиш неудачно сыгранной партии, выберите инструмент (V], захватите выделенные отпечатки мышью и переместите на нужное расстояние. Второй способ: не изменяя ничего в расположении отпечатков клавиш, назначьте систематическое смещение во времени всех MIDI-сообщений при их воспроизведении. Для этого воспользуйтесь слайдером Track Delay in Milliseconds, расположенным в основной секции панели инспектора редактируемого трека. Чтобы скомпенсировать запаздывание, нужно установить отрицательную "задержку". Удобно делать это на слух. Включив циклический режим воспроизведения, регулируйте задержку, добиваясь синхронности звучания редактируемой партии и аккомпанемента. Аналогичным образом в реальном времени можно корректировать еще ряд параметров, расположенных в секции MIDI Modifiers панели инспектора трека. Обычно это Transpose (транспонирование нот в реальном времени) и Vel. Shift (приращение Velocity, изменение в реальном времени громкости звучания нот).

При работе с любым из подобных регуляторов записанные на MIDI-треке значения соответствующих параметров не изменяются. Просто при воспроизведении к значениям, записанным на треке, добавляются значения, установленные регуляторами. Например, программа изменяет на постоянную величину: время наступления событий (смещение во времени), номера MIDI-hot (транспонирование), значение Velocity (изменение громкости). В смысле оперативности редактирования это удобно.

Но любой элемент регулировки, функционирующий в реальном времени, увеличивает нагрузку на систему. Ведь кроме тривиального воспроизведения сообщений, записанных на треке, программе и компьютеру потребуется выполнять вычисления: пересчитывать временные параметры, значение Velocity, номера нот и т. д. Если трек один и пересчитывается единственный параметр, то система справится с задачей успешно. Но что если треков под сотню, а параметров несколько десятков? Количество вполне может перейти в качество, точнее в снижение качества работы программы. Если и не появятся сбои и рассинхронизация при воспроизведении, то, во всяком случае, ресурсы компьютера будут потрачены на все эти расчеты, и на каком-то этапе развития проекта не удастся создать еще один трек или подключить еще одну обработку. Какое отношение все это имеет к команде Freeze MIDI Modifiers? Самое прямое.

Суть функции Freeze MIDI Modifiers в том, что она преобразует значения параметров, установленных регуляторами реального времени, в изменение значений параметров сообщений, записанных на MIDI-треке.

Алгоритм применения команды Freeze MIDI Modifiers:

1. Пользуясь регуляторами реального времени, добейтесь, чтобы MIDI-партия звучала так, как вы хотите.

2. Выделите нужный MIDI-трек.

3. В главном меню выберите команду MIDI > Freeze MIDI Modifiers.

Программа автоматически пересчитает значения параметров сообщений на MIDI-треке и внесет в них необходимые изменения. Одновременно будут "обнулены" (установлены в нейтральное положение) все ранее задействованные регуляторы реального времени. При воспроизведении обработанного таким образом MIDI-трека никакие дополнительные вычисления не производятся. Ресурсы компьютера можно будет задействовать с большей пользой.

Слово "Freeze" в названии команды может ввести в заблуждение. Дело в том, что и в Steinberg Cubase, и в других развитых виртуальных студиях давно внедрена функция "замораживания" партий виртуальных синтезаторов и аудиотреков с подключенными обработками. Цель все та же: экономия ресурсов системы за счет замены вычислений, выполняемых в реальном времени, на воспроизведение заранее пересчитанных аудиоданных. Но при работе со звуком кроме операции "замораживания" (Freeze) предусмотрена и обратная ей операция "размораживания" (Unfreeze). Поэтому в любой момент можно вернуться к исходной партии для ее редактирования. А в случае с "замораживанием" MIDI-сообщений дело обстоит иначе. Операция, обратная по отношению к операции Freeze MIDI Modifiers, не предусмотрена. То есть в общем случае после выполнения команды MIDI > Freeze MIDI Modifiers возвратить параметрам MIDI-сообщений их первоначальные значения (и установить регуляторы реального времени в состояние "до замораживания") не удастся.

Единственный способ отменить эту операцию — применить команду Edit > Undo или Edit > Histiry. Однако это не всегда целесообразно. Ведь не исключено, что после "замораживания" MIDI-сообщений выполнено множество разных операций редактирования, которые не захочется отменять даже во имя того, чтобы вернуться к "незамороженному" состоянию MIDI-трека.

6.7.4. Команда Dissolve Part— распределение сообщений выделенной части по отдельным трекам

Команда MIDI > Dissolve Part предназначена для распределения MIDI-сообщений выделенной части (или нескольких выделенных частей одного или нескольких треков) по отдельным трекам. Обращаем ваше внимание на то, что команда доступна, если вы работаете в окне Cubase 5 Project, и лишь в том случае, когда имеется хотя бы одна часть, выделенная при включенной кнопке ^

Команда открывает диалоговое окно Dissolve Part (рис. 6.40). в котором следует выбрать критерий распределения сообщений. Возможны два варианта:

□ Separate Channels— по признаку принадлежности сообщений к определенному MIDI-каналу (будет установлено соответствие "трек — MIDI-канал";

□ Separate Pitches— по номеру MlDl-ноты (на каждом из треков будут собраны сообщения, характеризуемые одинаковым номером ноты).

Если все сообщения в выделенной части ассоциированы с одним и тем же MIDI-каналом, то переключатель Separate Channels недоступен.

Флажок Optimized Display по умолчанию установлен. В результате этого длина вновь образуемых MIDI-частей будет оптимизирована. Если в начале исходной части сообщений не было, то в полученную часть этот отрезок не войдет. При снятом флажке длины полученных частей будут равны длине части исходной.

Если установлен флажок Dissolve to Sublanes, то сообщения исходного трека будут разнесены не на новые треки, а на субтреки того же (исходного) трека.

Опция Separate Channels может оказаться полезной для обратного преобразования MIDI-данных, обработанных командой MIDI > Merge MIDI in Loop. Конечно, для возврата в исходное состояние удобнее пользоваться командой Edit > Undo. Однако в тех случаях, когда это оказывается невозможным (например, когда вы "одумались" лишь после сохранения и закрытия проекта), команда MIDI > Dissolve Part и опция Separate Channels могут выручить. Данная функция может пригодиться также при работе с MIDI-данными, импортированными в Cubase 5 из стандартных MIDI-файлов формата 0, в которых абсолютно все сообщения хранятся на одном треке.

Опция Separate Pitches на практике часто используется для разнесения по нескольким трекам партий различных ударных инструментов. Некоторые музыканты считают, что так их удобнее редактировать. Хотя это, скорее, дань привычке. Вспомните, как удобно организована работа в окне Drum Editor: все партии ударных видны, а параметры каждой партии можно редактировать независимо от других.

6.7.5. Команда Bounce Selection — объединение частей одного трека

Команда MIDI > Bounce Selection главного меню предназначена для объединения нескольких частей, расположенных на одном треке, в одну общую часть. При этом если какие-то из исходных частей заглушены, то при объединении они будут проигнорированы: сообщения, имеющиеся на них, в новую часть не попадут. В этом состоит единственное обнаруженное нами отличие действия команды Bounce Selection от действия инструмента (Glue) окна Cubase 5 Project. При склейке MIDI-частей инструментом [Ч] сообщения из заглушённой части попадают во вновь образованную часть, и соответствующие ноты при воспроизведении будут звучать.

Если для объединяемых частей установлены специфические приращения значений параметров Velocity и Transpose, то они будут учтены. Это утверждение справедливо применительно и команде Bounce Selection, и к инструменту 0 окна Cubase 5 Project.

6.7.6. Команда O-Note Conversion — преобразование номеров нот в соответствии с Drum Map

Мы уже рассказывали о Drum Map в разд. 4.2.2 и разд. 6.4. Напомним, что Drum Map можно считать своего рода перекодировщиком, который в соответствии с заданным правилом меняет номера нот, поступающих в него (I-Note), на новые номера. Те ноты, которые формируются на выходе Drum Map, в Cubase 5 обозначены как O-Noie. Drum Map применяется в составе редактора Drum Editor. Данные два средства, по сути дела, совместно выполняют роль MIDI-плагина реального времени. При игре на MIDI-клавиатуре значения 1-Note поступают в Drum Map с нее, в режиме воспроизведения — с MIDI-трека Cubase 5, а значения O-Note в любом случае отправляются в выходной MIDI-порт программы.

Команда доступна только в том случае, когда для MIDI-трека назначена барабанная карта, т. е. если в раскрывающемся списке шар: основной секции инспектора трека выбрана любая строка, кроме No Drum Map.

Заметим, что в барабанной карте два различных значения I-Note не могут соответствовать одному значению O-Note. Например, сочетание I-Note = СЗ/60 —>0-Note = ЕЗ/64 и I-Note = ЕЗ/64 -Ю-Note •= ЕЗ/64 является запрещенным. Поэтому в такой ситуации программа откажется выполнять команду O-Note Conversion и выдаст сообщение о некорректности "навязываемых" ей преобразований. Конфликт, обозначенный в приведенном примере, можно разрешить следующим образом: I-Note = СЗ/60—»O-Note = ЕЗ/64 и I-Note = ЕЗ/64 O-Note = СЗ/60.

6.7.7. Команда Repeat Loop— размножение зацикленных фрагментов

Если в композиции какая-то из партий должна содержать повторяющиеся фрагменты, то достаточно записать по отдельным нотам только один из них (период), а остальные можно получить путем размножения. В принципе, это реализуется с помощью команд Edit > Сору и Edit > Paste: выделяете необходимый фрагмент, копируете его в буфер обмена, затем несколько раз перемещаете указатель текущей позиции в начало следующего периода, всякий раз выполняя вставку.

В Cubase SX, начиная с версии 3 (и, естественно, в Cubase 5), размножение зацикленных фрагментов части трека можно выполнить и другим способом. Нужно войти в один из MIDI-редакторов, например Key Editor, и нажать кнопку [^j (Independent Track Loop). В верхней части окна редактора, на шкале времени появятся левый и правый локаторы цикла. Локаторы нужно установить так, чтобы участок шкалы, который требуется зациклить (он бу-дет выделен фиолетовым цветом), оказался между ними. После этого в главном меню станет доступной команда MIDI > Repeat Loop. В результате ее применения зацикленный фрагмент и будет размножен до конца текущей части.

Использование такой технологии требует определенных навыков правильного и точного зацикливания.

Во-первых, желательно заниматься этой работой при включенном режиме

привязки к сетке квантизации (при нажатой кнопке иначе из-за неточной установки границ цикла после размножения возникнет "скользящее" смещение соответствующих сообщений относительно тактовой сетки.

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

6.8. Применение функций, доступных из подменю MIDI > Functions

В подменю MIDI > Functions собраны редактирующие команды.

□ Legato— удлинение MIDI-нот до их слияния. В результате применения этой команды каждая MIDI-нота удлиняется таким образом, чтобы либо ее окончание достигало начала следующей ноты, либо между нотами оставался промежуток заданной длительности, либо ноты накладывались друг на друга. Параметры команды Legato задаются в диалоговом окне Preferences (команда File > Preferences, вкладка MIDI - Function Parameters).

□ Fixed Lengths— изменение длительности всех MIDI-нот до заданного значения. Длительность, к которой будут преобразованы ноты, выбирается в раскрывающемся списке Quantize окна Key Editor (или окна List Editor).

□ Delete Doubles— удаление двойных нот. Двойные ноты— это ноты, имеющие одинаковые номера и расположенные в одинаковых временных позициях. Они могут появляться при записи в циклическом режиме, а также в процессе редактирования. Двойные ноты напрасно расходуют полифонию синтезатора, причем их звучание, как правило, отличается в худшую сторону от звучания отдельных нот из-за небольшого и непредсказуемого временного рассогласования.

□ Delete Controllers — удаление из выделенной части всех сообщений, кроме MIDI-hot.

□ Delete Continous Controllers— удаление из выделенной части всех сообщений, соответствующих контроллерам непрерывного действия.

□ Delete Notes — удаление нот, имеющих заданные параметры.

□ Restrict Polyphony— редактирование длительности одновременно звучащих нот с целью уменьшения их числа. Команда открывает диалоговое окно для выбора допустимого количества голосов, используемых при воспроизведении выделенных нот или частей. Команда полезна в том случае, когда в вашем распоряжении имеется звуковая карта или синтезатор с небольшой полифонией. Реально длительность нот сокращается так, чтобы одни ноты успевали отзвучать до начала следующих.

□ Pedals to Note Length — преобразование длительности нот с учетом наличия сообщений о включении сустейн-педали. Выявляются имеющиеся сообщения о включении/выключении сустейн-педали и удлиняются ноты, к которым эти сообщения относятся. После этого сами сообщения о включении и выключении сустейн-педали удаляются. Таким способом несколько разгружается MIDI-интерфейс.

□ Delete Overlaps (mono)— устранение перекрытия во времени MIDI-hot с одинаковыми номерами. Для правильной работы некоторых синтезаторов требуется, чтобы сообщение Note Off предшествующей ноты шло обязательно раньше, чем сообщение Note On следующей ноты. Команда решает эту проблему автоматически.

□ Delete Overlaps (poly) — устранение перекрытия во времени MIDI-hot с любыми номерами.

□ Velocity — преобразование значений параметра Velocity сообщений Note On.

□ Fixed Velocity — присвоение параметру Velocity сообщений Note On значения, заданного в поле Insert Velocity окна Key Editor.

□ Thin Out Data — прореживание MIDI-сообщений; команду целесообразно применять в том случае, когда сообщения, поступающие от контроллера непрерывного действия, записаны с избыточной плотностью; например, если из записанных 40 сообщений об изменении панорамы, приходящихся на одну четвертную ноту, оставить только 4, то на слуховое ощущение

такое прореживание не повлияет, а вот вероятность перегрузки MIDI-системы снизит.

□ Extract MIDI Automation — автоматическое конвертирование сообщений контроллеров непрерывного действия, записанных в MIDI-части, в данные автоматизации трека.

□ Reverse— перезапись выделенных нот в обратном порядке. При этом меняется только очередность звучания нот (например, было: до. ре, ми. а станет: ми, ре, до), но не характер звукоизвлечения: каждый звук по-прежнему будет начинаться с фазы атаки и завершаться фазой затухания.

□ Merge Tempo from Taping — формирование графика изменения темпа, основанного на произвольном ритме. Для этого следует создать часть на MIDI-треке, записать в любом редакторе или сыграть на клавиатуре ноты, обозначая ими необходимый ритм, и выделить записанную часть. В окне, открываемом командой Merge Tempo from Taping, нужно выбрать длительность, которой, по-вашему мнению, соответствуют сыгранные ноты, и нажать кнопку ОК. В результате темп проекта окажется скорректированным в соответствии с заданием. Заметим, что при тестировании этой команды у нас неоднократно зависала программа.

Назначение большинства перечисленных команд достаточно понятно и без дополнительных пояснений. Поэтому остановимся только на трех командах: Delete Notes, Velocity и Extract MIDI Automation.

6.8.1. Команда Delete Notes — удаление нот, имеющих заданные параметры

Команда MIDI > Functions > Delete Notes открывает диалоговое окно Delete Notes (рис. 6.41), предназначенное для выбора критериев удаляемых нот.

Если установлен флажок Minimum Length, то в результате применения команды из выделенной части будут удалены ноты, длительность которых меньше, чем число, заданное в поле Minimum Length (в тиках). Диаграмма, расположенная чуть ниже, служит инструментом быстрого ввода допустимой длительности ноты. Щелчком на черной (правой) части диаграммы выбирается ее масштаб (четверть, такт, два такта, четыре такта). Щелчок на светлой части диаграммы фактически превращает ее в слайдер, которым число в поле Minimum Length можно изменять быстро и в больших пределах.

Если установлен флажок Minimum Velocity, то команда будет применена к нотам, значение параметра Velocity которых меньше числа, заданного в поле Minimum Velocity.

От содержания поля Remove when under зависит логика принятия решения об удалении ноты. Для смены содержания поля нужно щелкнуть на нем. Если выбран вариант One Of, то нота будет удалена, если хотя бы один из ее признаков отвечает установленным критериям (или длительность, или значение Velocity меньше заданного значения). Вариант Both означает, что для удаления ноты должны быть выполнены оба условия (и длительность, и значение Velocity меньше заданных значений).

На практике команду Delete Notes применяют для удаления так называемых нот-призраков (случайных очень коротких или очень тихих нот). Ноты-призраки могут появляться в результате "грязного" стиля игры на MIDI-клавиатуре, но в первую очередь это характерно для игры на MIDI-гитаре. На слух такие ноты могут быть слабо заметны. Искать их в окне List Editor, просматривая километровые списки сообщений,— занятие неблагодарное. Вместе с тем пользы от них никакой, один только вред: напрасно занимают полифонию синтезатора, дают случайные призвуки. Поэтому обработать командой Delete Notes партию, сыгранную вживую, будет нелишним.

По умолчанию в четвертной длительности 480 тиков, в шестнадцатой — 120, в тридцатьвторой — 60, в шестьдесятчетвертой — 30. Вряд ли в реальной музыкальной практике потребуется играть более короткие ноты (да и многие ли музыканты смогли бы их осознанно сыграть?). Поэтому ноты длительностью короче 30 тиков можно считать аномальными и подлежащими удалению. Точно так же маловероятно неслучайное извлечение очень тихих нот (с значением Velocity меньше 10-15 единиц). А уж если нота и слишком коротка, и слишком тиха — это уж точно результат ошибки исполнителя.

6.8.2. Команда Velocity—преобразование значений параметра Velocity сообщений Note On

Команда MIDI > Functions > Velocity открывает диалоговое окно Velocity (рис. 6.42), предназначенное для выбора алгоритма преобразования значений параметра Velocity в сообщениях типа Note.

Параметры этого окна действует на выделенную часть (или на несколько выделенных частей).

В окне имеются два поля ввода, назначение которых меняется в зависимости от выбранного типа преобразования.

Тип преобразования значений Velocity выбирают в раскрывающемся списке Туре. Возможны три варианта типа преобразования (Add/Subtract, Compress/ Expand, Limit), которые мы сейчас и рассмотрим.

Преобразование типа Add/Subtract заключается в том, что к значениям параметра Velocity нот будет прибавлено одно и то же число. Оно должно быть указано в верхнем из двух полей, которое в этом случае будет называться Amount. Положительные значения числа увеличивают значение Velocity нот, отрицательные — уменьшают.

Преобразование типа Compress/Expand заключается в том, что значения параметра Velocity нот будут умножены на постоянный коэффициент. Он задается в процентах в верхнем поле ввода (Ratio). Значения коэффициента, превышающие 100 %, означают увеличение Velocity, не превышающие — уменьшение. Например, если у исходной ноты Velocity = 100, a Ratio = 40 (%), то после применения функции (нажатия кнопки ОК в окне Velocity) получится Velocity = 40. Максимальное значение Ratio не ограничено. Однако это на практике не очень важно, т. к. если, например, попытаться Velocity = 100 умножить всего лишь на 2 (т. е. установить Ratio = 200 (%)), то все равно в итоге получится Velocity = 127.

Преобразование типа Limit заключается в том, что значения параметра Velocity нот будут ограничены в пределах диапазона, заданного в верхнем (Upper) и нижнем (Lower) полях. На ноты, значение параметра Velocity которых попадает в разрешенный диапазон, функция Velocity никак не воздействует. Нотам, у которых значение Velocity > Upper, будет присваиваться значение Velocity = Upper. Ногам, у которых значение Velocity < Lower, будет присваиваться значение Velocity = Lower. Таким образом, в отношении параметра Velocity применяется операция, аналогичная жесткому ограничению звукового сигнала.

6.8.3. Команда Extract MIDI Automation — конвертирование сообщений контроллеров непрерывного действия в данные автоматизации трека

Функция Extract MIDI Automation позволяет конвертировать сообщения контроллеров непрерывного действия, записанные в MIDI-частях, в данные автоматизации трека, которые затем можно редактировать в окне Cubase 5 Projcct.

Алгоритм применения функции:

1. В окне Cubase 5 Project выберите MlDI-часть, содержащую сообщения контроллеров непрерывного действия.

2. В главном меню выберите команду MIDI > Functions > Extract MIDI Automation (команда также имеется в подменю Functions контекстного меню секции треков окна Cubase 5 Project).

MIDI-сообщения об изменении состояния контроллера (контроллеров) будут автоматически удалены из MIDI-части. В секции графического редактирования параметров окна Key Editor изменится окраска соответствующих графиков.

Если теперь в окне Cubase 5 Project открыть трек (треки) автоматизации для соответствующего MIDI-трека, то вы увидите, что для каждого из контроллеров непрерывного действия в MIDI-части создан график автоматизации.

6.9. Применение функции транспонирования

В предыдущих разделах мы уже касались вопросов, связанных с транспонированием MIDI-hot. Однако в современной версии виртуальной студии Cubase функция транспонирования настолько развита и многообразна, что на различных аспектах ее применения целесообразно остановиться более подробно.

В Cubase 5 функция транспонирования реализована применительно к частям на аудиотреках, MIDI-треках и инструментальных треках, а также к отдельным MIDI- и аудиосообщениям.

Транспонирование можно применить на трех уровнях:

□ на уровне проекта в целом — путем изменения Root Key (базовой ноты, основной ноты тональности, тоники) инструментом окна Cubase 5 Project);

□ на уровне отдельных областей проекта — путем создания сообщений о транспонировании на треке Transpose;

□ на уровне отдельных частей или сообщений — путем изменения значения параметра Transpose в информационной строке.

Кроме названных средств функция транспонирования реализована в диалоговом окне Transpose (открывается командой MIDI > Transpose, см. разд. 6.7.1).

Для транспонирования в реальном времени можно применять опцию Transpose секции MIDI Modifiers панели инспектора (см. разд. 4.2.2) и идентичную опцию MIDI-эффекта MIDI Modifiers (см. гл. 8).

Уровни транспонирования, могут пересекаться, а средства транспонирования — применяться комплексно. Разработчики программы советуют начинать с назначения Root Key для проекта в целом, затем делать это для части, после чего записывать и редактировать сообщения о транспонировании на треке Transpose.

Среди инструментов окна Cubase 5 Project есть раскрывающийся список щ (Project Root Key). В нем назначают тональность для проекта в целом.

В информационной строке окна Cubase 5 Project есть три элемента, представляющие для нас интерес в данном контексте:

□ раскрывающийся список Rootkey. в котором назначают тональность для выделенной части (выделенных частей);

□ поле ввода Transpose, в котором в количестве полутонов указывают интервал транспонирования (положительным числам соответствует транспонирование вверх, отрицательным — вниз);

□ переключатель Global Transpose с двумя состояниями: Follow и Independent.

Если немного поэкспериментировать и вдуматься в полученные результаты, то становится ясно, что хотя с помощью перечисленных элементов можно транспонировать и отдельные ноты (либо группы нот), на самом деле в первую очередь они нужны для транспонирования частей. Для изменения высоты тона отдельных нот в программе предусмотрены десятки других, более естественных инструментов.

На первый взгляд, раскрывающийся список Щ£] (Project Root Key) кажется лишним. Если не трогать пока остальные три элемента, то какую бы ноту в нем вы ни выбрали, ни на звучании выделенной MIDI-части, ни на нотной записи, ни на положении отпечатков клавиш это не сказывается. Для чего же нужен список Project Root Key? Базовая нота, выбранная в нем, служит своеобразной точкой отсчета, относительно которой с помощью остальных трех элементов транспонируются части. При работе с MIDI-частями эта информация не имеет существенного значения. Но дело в том, что применение рассматриваемых инструментов наиболее актуально для транспонирования аудиочастей при создании музыкальных композиций на основе заранее заготовленных сэмплов, лупов, грувов. Обычно библиотеки сэмплов содержат аудиофайлы, соответствующие одной определенной ноте (базовой ноте сэмпла) или одному определенному аккорду. Причем название ноты, тональности, аккорда часто указывается в имени аудиофайла. Для создания композиции нужна не одна, а несколько нот, поэтому исходный аудиофайл приходится транспонировать. Конструкция, созданная из транспонированных лупов, может служить составной частью проекта. Чтобы не запутаться во вновь созданных, условно говоря, нотах, правильно соотносить их с мелодией и гармонией проекта, и есть смысл указать в раскрывающемся списке |]Щ (Project Root Key) тональность проекта. Правда, легче от этого станет ненамного. Очень вероятно, что на первых порах "голова пойдет кругом" от упражнений с инструментами транспонирования. Мы имеем дело как раз с тем случаем, когда излишняя гибкость программы и наличие многих способов решения одной и той же задачи приводит к усложнению работы. Что ж. давайте разбираться, как взаимодействуют 4 основных элемента окна Cubase 5 Project, имеющих отношение к транспонированию.

Начнем с самого простого — с поля ввода Transpose. Если переключатель Global Transpose находится в состоянии Independent, то остальные элементы не влияют на содержимое этого поля. Какое число вы в нем введете, на столько полутонов и будет транспонировано содержимое части.

С помощью поля ввода Transpose транспонирование выполняется не относительно предыдущей тональности, а именно относительно тональности исходной. Пусть в части была записана единственная нота до четвертой MIDI-октавы. Если вначале ввести в поле Transpose число 2. то получим ре четвертой MIDI-октавы. Если затем ввести -2, то получим не до четвертой MIDI-октавы, как можно было бы предполагать, а си-бемоль третьей MIDI-октавы.

Если переключатель Global Transpose находится в состоянии Follow, то в поле ввода Transpose отображается число, равное алгебраической сумме двух чисел: числа, введенного вами в этом поле, и числа, полученного в результате изменения состояния раскрывающегося списка ЦэдЦ (Project Root Key) окна Cubase 5 Project и раскрывающегося списка Rootkey информационной строки окна Cubase 5 Project.

Теперь нужно уяснить, как именно взаимодействуют два данных элемента. Для упрощения анализа предположим, что в поле Transpose информационной строки мы ввели число О.

Пусть выделена MIDI-часть, и в раскрывающемся списке (Project

Root Key) выбрано значение С. Если эта же нота выбрана и в раскрывающемся списке Rootkey, то транспонирования части не произойдет. В поле ввода Transpose будет отображаться 0. Например, если в части исходно была записана единственная нота до четвертой MIDI-октавы, то она сохранится неизменной. Если задать Rootkey = С#, то, как ни странно, получим не до-диез четвертой MIDI-октавы, а си третьей MIDI-октавы. А вот если поступить наоборот— аналогичным образом поменять не содержимое списка Rootkey (сохранить Rootkey = С), а содержимое списка Project Root Key, — то как раз и получим до-диез четвертой MIDI-октавы. На этом "заморочки" еще не заканчиваются. Если содержимое одного из списков не менять, а во втором попробовать поочередно перебрать все 12 нот, то обнаружится, что начиная с некоторой ноты происходит "двухступенчатое" транспонирование: очередной шаг приводит к смене знака числа в поле ввода Transpose, а тональность части смещается не на полтона, а на полтона плюс/минус октава. Чтобы систематизировать сказанное, приведем две таблицы, полагая, что в исходной части записана единственная нота до четвертой MIDI-октавы. Таблица 6.3 получена при условии, что неизменным сохраняется содержимое поля Project Root Key (полагаем, что Project Root Key = С), а осуществляется перебор значений в поле Rootkey. Таблица 6.4 получена для случая, когда Rootkey = С, а изменения касаются поля Project Root Key.

Скачкй на октаву можно объяснить только тем, что разработчики, вероятно, в основном предназначают рассматриваемые инструменты для транспонирования аудиочастей.

Дня MIDI-ноты транспонирование означает всего лишь изменение ее номера. И такое преобразование выполняется абсолютно точно.

Таблица 6.3. Логика транспонирования при Project Root Key = С

Содержимое поля Rootkey

Содержимое поля Transpose

Полученная нота (числа означают номера MIDI-октав)

С

0

С4

С#

1

ВЗ

D

2

А#3

DU

3

A3

Е

4

G#3

F

5

G3

F#

6

F#3

G

7

F4

G#

-4

Е4

А

-3

D»4

А»

-2

D4

В

-1

С#4

Таблица 6.4. Логика транспонирования при Rootkey = С

Содержимое поля Project Root Key

Содержимое поля Transpose

Полученная нота (число означает номер MIDI-октавы)

С

0

С4

С#

-1

СЙ4

D

-2

D4

Dtt

-3

D84

Е

-4

Е4

F

-5

F4

F#

-6

F84

G

5

G4

GB

4

G#3

А

3

A3

А#

2

Att3

В

1

ВЗ

А вот транспонированию выстоы тона аудиоданных соответствует очень сложный алгоритм, основанный на численных (приближенных) методах расчета. Причем погрешность вычислений увеличивается с ростом интервала транспонирования, а значит, и становятся более заметными на слух искажения звука. Поэтому при преобразованиях звуковых данных стараются избежать изменения высоты тона в больших пределах. Октава — слишком большой интервал. Транспонирование в пределах 5-7 полутонов представляется приемлемым компромиссом.

Осталось рассмотреть еще одно средство транспонирования — Transpose Track. По сравнению с теми инструментами, о которых только что мы говорили, освоение Transpose Track не вызывает непонимания и затруднений. В принципе, здесь мы также имеем дело с инструментом реального времени, средством неразрушающего редактирования, аналогичным опции Transpose секции MIDI Modifiers панели инспектора. Существенное отличие только одно. В поле Transpose секции MIDI Modifiers панели инспектора вы задаете интервал транспонирования, постоянный для всего выбранного MIDI-трека. А на треке Transpose Track строится график, описывающий изменение интервала транспонирования в различных точках шкалы времени проекта.

Для создания Transpose Track выберите команду Project > Add Track > Transpose главного меню. Затем в окне Cubase 5 Project выберите инструмент (Draw) и щелкните им в секции треков напротив созданного Transpose Track. Появится "полубесконечная" часть, начинающаяся в позиции щелчка. После этого тем же инструментом создайте в нужных позициях сообщения о транспонировании. Пока они являются формальными, т. к. по умолчанию имеют нулевые значения параметра транспонирования. Ими разграничиваются отдельные части трека транспонирования. В качестве примера на рис. 6.43, а представлены MIDI-трек и трек транспонирования. В левой области рисунка видна панель инспектора Transpose Track.

Для того чтобы придать сообщениям о транспонировании нужные значения, следует сменить инструмент^ (Draw) на инструмент [ч^] ( Object Selection).

Дальше все совсем просто: щелкаете этим инструментом на полях пустых сообщений о транспонировании и, перемещая указатель мыши вверх/вниз, устанавливаете необходимые значения и одновременно строите график транспонирования (рис. 6.43, 6).

Секция атрибутов трека транспонирования и его инспектор содержат одинаковые наборы инструментов. Поясним их назначение.

Если нажата кнопка [In] (Mute Transpose Events), то при воспроизведении проекта сообщения о транспонировании не считываются с трека, никак не влияя на высоту тона.

Если нажата кнопка |Ttl | (Keep Transpose in Octave Range), то транспонирование будет циклическим — в пределах одной октавы. Математики сказали бы, что пересчет номеров MIDI-hot выполняется по модулю двенадцать. Например, при транспонировании ноты си четвертой MIDI-октавы вверх на 3 полутона получится ре четвертой MIDI-октавы. Если кнопка [tif) не нажата, то в пределах 128 полутонов транспонирование будет линейным. Например, при транспонировании ноты си четвертой MIDI-октавы вверх на 3 полутона получится ре пятой MIDI-октавы.

Кнопка ГТ1/Г®1 (Toggle Timebase between Musical and Linear) переключает способ привязки сообщений о транспонировании к временной шкале: : 71 — сообщения привязаны к тактовой сетке, | © 1 — к обыкновенному времени, отсчет которого ведется от начала проекта. Состояние данной кнопки имеет существенное значение, когда после создания Transpose Track вы изменили общий темп композиции, либо темп отдельных ее участков. Если собираетесь изменять темп, то заранее переключите кнопку Toggle Timebase between Musical and Linear в состояние F~J~|. Тогда транспонирование в любом случае будет сихронизировано с тактами и долями, а значит, получится ожидаемый результат, а не нелепые скачки высоты тона там, где они совершенно не нужны.

Наконец, кнопка (ЪI (Lock) делает сообщения, имеющиеся на Transpose Track, недоступными для редактирования, что позволяет предотвратить случайные ошибки.

Трек Transpose по сути относится к регуляторам реального времени. Сообщения о транспонировании не изменяют номера нот, записанных в MIDI-части, а лишь модернизируют их при воспроизведении проекта. Зафиксировать изменения на MIDI-треке можно командой Merge MIDI in Loop или Freeze MIDI Modifiers. Только случайно не нажмите кнопку [1гГ] (Mute Transpose Events) на треке Transpose!

И в том, и в другом случае к выделенным MIDI-частям будут применены преобразования номеров нот, содержащиеся в сообщениях на Transpose Track. После выполнения любой из этих команд позаботьтесь о том, чтобы избежать нежелательного многократного транспонирования: либо удалите трек Transpose, либо заглушите его кнопкой | m ].

Напомним, что если в окне Key Editor нажата кнопка [пГ] (Indicate Transpositions), то при транспонировании средствами трека Transpose в окне Key Editor отпечатки клавиш будут отображаться не на тех позициях, которые они занимают фактически, а на тех, которые они заняли бы после транспонирования.

В проекте возможен единственный трек Transpose Track. При попытке создать второй трек транспонирования программа сообщит, что это запрещено. Вот такое воплощение известного армейского принципа единоначалия. Да только ли армейского? Два трека транспонирования — все равно, что два дирижера. Как должны были бы вести себя оркестранты, получая от них по ходу исполнения пьесы противоречивые указания?

6.10. Функция VST Expression. Применение сообщений об артикуляции

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

Еще десяток лет назад единственной возможностью "оживления" компьютерных аранжировок можно было считать детальное программирование множества MIDI-контроллеров, воздействующих на параметры синтеза. С интересными MIDI-редакторами Ntonyx Style Enhancer и MusicLab Rhythm'n'Chords Pro, в которых реализован подобный подход, вы можете познакомиться в книгах [6, 7, 17, 19]. В наши дни объем и стоимость запоминающих устройств таковы, что необходимость экономить память отпала. А значит, появилась возможность решать задачу обеспечения реалистичности звучания синтезируемой музыки "в лоб". Созданы гигантские по размерам библиотеки сэмплов, в которых представлены не только все существующие типы реальных инструментов, но также содержатся звуки, полученные самыми разнообразными приемами игры. Все типичные штрихи, все оттенки экспрессии доступны современным компьютерным музыкантам. Вопрос только в том, что пока еще не выкристаллизовалась общепринятая, универсальная система управления артикуляцией. В виртуальной студии Steinberg Cubase 5 внедрена функция, которая со временем вполне может стать стандартом управления экспрессией синтезируемой музыки. Перед тем как начать знакомиться с ней, давайте вкратце уясним смысл понятий "артикуляция" и "экспрессия".

Музыкальная артикуляция или экспрессия определяет, как звучат некоторые ноты, как они должны быть спеты или сыграны на данном инструменте. Соответствующие указания записываются словами или условными обозначениями в нотной партитуре произведения. Артикуляция позволяет музыкантам определить, например, что одну партию следует исполнять на струнном инструменте, который является смычковым, а не щипковым, что другая партия написана для трубы приглушенной, а не открытой. Артикуляция также задает относительную громкость нот (некоторые ноты играются громче или мягче, чем другие) или звуковысотные изменения (например, вибрато).

Известно и такое определение артикуляции: способ исполнения голосом или на инструменте последовательности звуков, который определяется их слитностью или разделенностью. Существует множество различных градаций звуковедёния, от легатиссимо (предельной слитности звуков) до стаккатис-симо (максимальной краткости звуков). Применение тех или иных приемов артикуляции зависит от существа музыкального произведения, его языка, характера.

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

Таблица 6.5. Некоторые знаки артикуляции

Знак

Тип и характеристика артикуляции

 

• р

Стаккато. Коротко, отрывисто. Нота допжна прозвучать короче ее длительности (как правило, вполовину)

 

Стаккатиссимо. Предельно коротко. Нота должна прозвучать максимально коротко, отрывисто, с резкой атакой. На длительность ноты знак не влияет

 

> г

Акцент. Нота, отмеченная знаком акцента, должна прозвучать немного громче соседних неакцентированных нот. В случае сложного метра у относительно сильной ноты располагаеся один знак, у сильной ноты — два, один под другим

 

+1

Пиццикато левой рукой (зажатая нота). Нота в партии струнных инструментов, исполняемая щипком пальца левой руки (обычное пиццикато исполняется правой рукой, без смычка), пальцы которой обычно нажимают струны. В партиях валторн нота, помеченная таким знаком, извлекается при засурдиненном рукой раструбе

 

V

Тенуто. Возможны два значения. Обычно знак указывает на то, что нота должна исполняться с полным выдерживанием ее длительности, без промежутка между соседними нотами, но при этом, в отпичие от пегато, с заметной атакой (поп legato). Также может обозначать пег-кий акцент. Комбинация знаков тенуто и стаккато обозначает особое звукоизвлечение, среднее между стаккато и тенуто, так называемое портато

Традиционные музыканты, использующие в своем творчестве компьютерные программы, как правило, хотят, чтобы на звучание произведения влияли все символы артикуляции, представленные в нотной записи. В Cubase 5 это желание отчасти исполнимо за счет того, что в программе предусмотрена функция VST Expression.

Разработчики программы различают артикуляции двух типов: Direction (директива. указание) и Attribute (атрибут, признак).

Указание действительно для всех нот от позиции вставки данного указания до следующего. Оно применяется не к отдельным нотам, а к группам нот или даже ко всему музыкальному произведению. Пример указания — пиццикато (означает, что на смычковом инструменте следует играть как на щипковом).

Признак (атрибут) относится к единственной тюте. Пример: стаккато— нота играется отрывисто.

При работе с MIDI, когда ноты вводятся посредством MIDI-клавиатуры, редактируются в MIDI-редакторах, а для их воспроизведения используются VST-инструменты, артикуляции должны соответствовать различному звучанию синтезированных инструментов. Этого можно достичь за счет использования ряда характерных для MIDI методов.

Сообщением о смене тембров (Program Change) можно передать VST-синтезатору инструкцию о переключении с одного MIDI-инструмента на другой. В зависимости от инструмента это можно использовать для исполнения музыки с различной артикуляцией.

Мультитембральными инструментами можно управлять по нескольким MIDI-каналам (MIDI Channel), с каждым из которых могут быть ассоциированы сэмплы, полученые в процессе исполнения различных штрихов.

В ряде VST-инструментов предусмотрено управление посредством переключающих клавиш. (Key Switches), когда некоторые клавиши MIDI-клавиатуры вместо своей традиционной функции извлечения нот выполняют функцию переключателя. Переключатель может воздействовать на самые различные параметры синтеза. В том числе, он может вызывать воспроизведение различных заранее сэмплированных звуков, характерных для определенных приемов игры. Управлять переключателем может сам музыкант посредством MIDI-клавиатуры. Можно и заранее записать в секвенсор виртуальной студии сообщения о нажатии нужных управляющих клавиш в определенные моменты времени. Примерами VST-инструментов, в которых реализована подобная концепция управления артикуляцией, могут служить MusicLab RealStrat VSTi [27] и MusicLab RealLPC VSTi.

Наконец, артикуляции можно создать, редактируя параметры MIDI-сообщений, например, изменяя длительность или значение Velocity нот.

Для реализации функции VST Expression в Cubase 5 используются таблицы экспрессии (Expression Maps). По сути, таблица экспрессии — это небольшой файл, в котором записана матрица соответствия управляющих клавиш определенной библиотеке сэмплов и определенной совокупности настроек пара-метров синтеза. Кроме того, в Cubase 5 есть перекодировщик знаков артикуляции на виртуальном нотном стане в номера управляющих MIDI-клавиш.

Каждая такая таблица уникальна. Она создана программистами специально для конкретного сэмплера (либа проигрывателя сэмплов — ромплера) и для конкретного банка загруженных в него звуков. Существующие таблицы экспрессии можно скачать на сайте Steinberg по адресу http://www.steiiiberg.net/ index.php?id=1944&L=l. На момент написания книги доступны таблицы экспрессии для виртуальных оркестров Vienna Symphonic Library. Chris Hein Instruments (библиотеки Chris Hein Bass, Chris Hein Guitars, Chris Hein Horns), Steinberg HALion Symphonic Orchestra (27-гигабайтная библиотека инструментов, характерных для классической музыки, а также для современной музыки в стилях Pop, Rock, HipHop, R'n'B, созданная на базе сэмплера Steinberg HALion) и ромплера Steinberg HALion ONE из состава Cubase 5. Разрабатыва-. ются таблицы экспрессии еще для двух "монстров" — EASTWEST и Garritan. Правда, сказанное вовсе не означает, что таблицы экспрессии имеются для всех без исключения инструментов, входящих в ту или иную библиотеку. На той же странице сайта Steinberg можно скачать текстовые файлы, в которых приведены списки "отабличенных" инструментов и их групп. С другими инструментами, тем более из других библиотек, функция VST Expression работать не будет.

Например, скачаем и разархивируем файл HALIONONE_EXPRESS!ON_ MAPS.ZIP. Заглянем в папку HALIONONE EXPRESSION SET. В ней в файлах с расширением EXPRESSIONMAP собраны таблицы экспрессии для следующих 14 инструментов: Acustic Bass, Brass Section. Clean Guitar 2. Distortion Guitar, Electric Bass, Fretless Bass. Large Strings (simplified). Large Strings, Nylon Guitar, Pick Bass, Solid Guitar, Solo Trumpet, Steel Guitar, Tenor Sax. Это означает, что при желании на практике использовать артикуляции в своей композиции нужно начать со следующих действий:

1. К каждому из MIDI-треков подключить по экземпляру VST-инструмента HALion ONE.

2. В каждом из экземпляров HALion ONE выбрать один MIDI-инструмент (патч) из перечисленных.

3. Записать партии.

4. Приступить к редактированию экспрессии.

Редактирование экспрессии начинается с подключения таблицы экспрессии к каждому из нужных треков (MIDI- или инструментальных). Пусть для определенности мы работаем с MIDI-треком.

На панели инспектора разверните секцию VST Expression и щелкните на ней левой кнопкой мыши. Откроется меню, в котором пока только два пункта: No Map и VST Expression Setup (в дальнейшем там появятся пункты с именами подключенных к проекту таблиц экспрессии). Выбрав VST Expression Setup, вы откроете одноименное диалоговое окно (рис. 6.44).

Нажмите кнопку Load, чтобы открыть стандартное окно поиска и загрузки файлов. Найдите папку HALionOne Expression Set и откройте ее. Вот он, перечень таблиц экспрессии для инструментов ромплера HALion ONE (рис. 6.45)!

Выберем Nylon Guitar.expressionmap и нажмем кнопку Open. Вид диалогового окна VST Expression Setup изменится (рис. 6.46).

В этом окне можно редактировать таблицы экспрессии. Давайте вглядимся в него. В секции Expression Maps отображается список таблиц экспрессии, подключенных к проекту. Кнопка, помеченная знаком «минус», удаляет выделенную таблицу из списка. Кнопка + служит для создания новой таблицы. Отредактированную таблицу можно сохранить в файле, выделив ее в списке и нажав кнопку Save.

Элементы группы Remote Key Settings служат для назначения управляющих клавиш. В поле Root Note можно назначить новую базовую ноту, с которой будет начинаться группа из 12 управляющих клавиш. По умолчанию это нота СО (клавиша № 24). Остальные 11 управляющих клавиш всегда расположены выше нее. Кнопка Set Remote Keys открывает диалоговое окно, в котором также можно сменить базовую ноту и выбрать один из трех вариантов задействования управляющих клавиш:

□ белые и черные;

□ только белые; D только черные.

В секции Sound Slots представлена собственно таблица экспрессии. В столбцах отображаются:

□ Remote — управляющая клавиша;

□ Name — название артикуляции;

□ Art. 1—Art. 4 — условные буквенные или графические обозначения групп артикуляций (с каждой управляющей клавишей можно ассоциировать не одну артикуляцию, а комбинацию от двух до четырех артикуляций);

□ Col — цвета, которыми в Key Editor могут выделяться отпечатки клавиш, подверженные действию соответствующей артикуляции.

Бегло познакомимся с элементами секции Output Mapping, где можно назначить клавиши, при нажатии которых подключенному синтезатору будут

посылаться определенные сообщения.

П 1st Key Switch и 2nd Key Switch — если в самом инструменте реализовано переключение режимов с помощью управляющих клавиш, то здесь можно назначить для кажой из них свою "входную" ноту. Например, двумя управляющими клавишами можно переключать скрипку из режима извлечения звука смычком в режим пиццикато.

□ Program — нажатием выбранной клавиши посылается сообщение о смене номера программы (тембра, MIDI-инструмента).

□ Channel — нажатием выбранной клавиши посылается сообщение о смене номера канала.

□ Length — нажатием выбранной клавиши изменяется длительность извлекаемой ноты.

□ Velocity — нажатием выбранной клавиши изменяется громкость звучания ноты.

□ Min. Velocity — нажатием выбранной клавиши громкость звучания "слишком тихой" ноты изменяется до минимальной допустимой величины.

□ Transpose — нажатием выбранной клавиши осуществляется транспонирование ноты, например на октаву. В некоторых библиотеках сэмплов ноты разных октав исполнены с разными артикуляциями.

□ Controller 1, Controller 2, Ctrl 1 Value и Ctrl 1 Value — нажатием соответствующих клавиш посылаются сообщения о смене контроллеров двух типов и значений их параметров.

Настало время познакомиться с элементами секции Articulations (см. рис. 6.46).

В столбце Art. можно выбрать либо буквенное обозначение артикуляции (Text) и ввести его в текстовой строке, либо символьное (Symbol). Во втором случае автоматически откроется окно Select Symbol (рис. 6.47).

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

Вернемся к элементам секции Articulations (см. рис. 6.46). В столбце Туре выбирают тип артикуляции: Direction или Attribute. В столбце Description записаны (и доступны для редактирования) примечания, поясняющие характер артикуляции..Посредством столбца Group артикуляцию можно включить в одну из четырех групп. Группы служат для одновременного применения артикуляций типа Direction и типа Attribute и для формирования комбинации артикуляций. Меньший номер группы означает более высокий приоритет реализации входящих в нее атрикуляций, что может иметь значение при наличии ограничений на объем управляющих сигналов.

В общем, будем считать, что теперь вы познакомились с элементами окна VST Expression Setup в объеме, необходимом для осознанного поиска и загрузки таблиц экспрессии, и освоили элементарные действия по переназначению управляющих клавиш. Если все нужные таблицы экспрессии подключены к проекту, закройте это окно.

Если теперь на панели инспектора MIDI-трека щелкнуть на секции VST Expression, то откроется меню, в котором содержится весь список подключенных к проекту таблиц экспрессии. Выберите таблицу, соответствующую инструменту, партия которого записана (или записывается) на данном треке. Поочередно проделайте это для всех интересующих вас треков. Теперь таблицы экспрессии подключены к конкретным трекам.

Вы заметите, что секция VST Expression на панели инспектора трека преобразилась (рис. 6.48): в ней отображено соответствие артикуляций управляющим клавишам.

Чтобы без лишнего труда получить следующий рисунок, мы загрузили в Cubase файл VST EXPRESSION DEMO.CPR, который находится на диске

с дистрибутивом программы Steinberg Cubase 5 в папке ADDITIONAL CONTENT/DEMO PROJECTS/VST EXPRESSION DEMO. В этом проекте уже загружены и подключены к трекам и нужные таблицы экспрессии, и должное число экземпляров ромнлера HALion ONE. Причем в каждом из них выбран тот инструмент, который правильно "понимает" таблицу экспрессии.

Огкроем окно Key Editor и в раскрывающемся списке секции графического редактирования параметров MIDI-сообщений выберем строку Articulations. Вместо графиков изменения значений привычных контроллеров вы видите здесь прямоугольники, которыми обозначены сообщения об артикуляции (рис. 6.49).

В данном случае таблица экспрессии содержит 7 артикуляций. Шесть из них включаются соответствующими клавишами. А седьмая — это та, которая предусмотрена по умолчанию (Default, см. рис. 6.48) и может действовать, когда ни одна управляющая клавиша не нажата. Поэтому нижняя секция по вертикали разделена на 7 дорожек. Каждая дорожка соответствует своей артикуляции, название которой указано в начале дорожки (слева).

Обычными инструментами окна Key Editor можно рисовать "отпечатки артикуляций" в нужной временной позици, перемещать их по вертикали (выбирая тем самым другую артикуляцию). Также можно перемещать их по горизонтали, изменять длину и удалять. Легче ориентироваться в артикуляциях помогают их знаки.

Если включена информационная строка, то для выделенной ноты в поле Articulations отображается тип сообщения об артикуляции.

Если в раскрывающемся списке Color Scheme Selector выбран вариант Sound Slot, то окраска отпечатка клавиши будет соответствовать цвету, уста-новленому для сообщения об артикуляции, действие которого распространяется на этот отпечаток клавиши.

Что можно сказать в заключение раздела, посвященного сообщениям об артикуляции? Бессмысленно описывать словами слуховые ощущения, испытываемые при использовании таблиц экспрессии. Они зависят от многих факторов. Если вас заинтересовали рассмотренные возможности, то советуем углубить ваши знания экспериментальным путем. Начните с того, что загрузите демопроект и на практике займитесь редактированием сообщений об экспрессии, оценивая на слух изменения, вызванные вашими действиями. А уже потом попобуйте применить приобретенные навыки к отдельным трекам своих оригинальных композиций.

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

На этом завершается глава, в которой мы довольно подробно познакомили вас с инструментарием редактирования композиций на уровне MIDI-сообщений.

Комментировать


Защитный код Обновить

Крем для увеличения груди крем для роста груди купить с доставкой. . У нас Вы можете купить готовую фирму. Компания "RS Право".
.