Формат MIDI-данных. Типы MIDI-сообщений в Cubase SX.
К категории MIDI в программе Cubase SX относятся следующие сообщения: Note, Controller, Program Change, Aftertouch, Pitchband, SysEx.
Кроме того, предусмотрены сообщения SMF и Text. Сообщения этих двух типов не принадлежат к категории MIDI-сообщений и не влияют на синтез звука. Сообщения SMF относятся к сообщениям нотации. Сообщение Text (текстовая метка, комментарий) имеет единственный параметр – текстовую строку. Они отображаются только в списке сообщений редактора List Editor, а также над нотным станом (в окне редактора Score Editor) и предназначены для записи комментариев или текста песни.
Рассмотрим подробнее сообщения категории MIDI.
Note – сообщение о нажатии MIDI-клавиши
Note – это сообщение о том, что нажата клавиша MIDI-клавиатуры. Параметры сообщения – нота (используется символьное обозначение), громкость и длительность.
Сообщения Note формируются программой на основе стандартных канальных MIDI-сообщений Note On (включение ноты) формата 9k nn vv и Note Off (выключение ноты) формата 8k nn vv, где k – номер MIDI-канала, nn – номер ноты, w – скорость (Velocity) нажатия клавиши (в Note On), no умолчанию соответствующая громкости звучания ноты, или скорость ее отпускания (в Note Off). Причем числа 9k, 8k, nn и w – шестнадцатеричные.
Сообщение о включении/выключении ноты MIDI-клавиатура генерирует при нажатии/отпускании клавиши. При этом MIDI-синтезатор включает/ выключает генератор соответствующего звука.
В MIDI номер ноты задается абсолютным номером полутона в диапазоне 0-127, причем центральной фортепианной клавише – ноте до первой октавы – соответствует десятичный номер 60. В соответствии с принятой стандартом MIDI нумерацией октав (с нуля) эта нота имеет обозначение С5. Однако в Cubase SX система нумерации MIDl-октав несколько иная: отсчет октав начинается не с 0, а с – 2. Поэтому центральная нота обозначена как СЗ.
Скорость (Velocity) нажатия/отпускания клавиши характеризуется десятичным числом от 0 до 127. Скорость нажатия соответствует силе удара по клавише. Чувствительная к скорости нажатия (динамическая) клавиатура выдает реальные значения этого параметра. Нечувствительная – значения 64 (десятичные).
Сообщение Note On с параметром vv = 00 эквивалентно сообщению Note Off для этой же клавиши. В простых синтезаторах информация о скорости нажатия клавиши используется для управления громкостью извлекаемого звука, в более сложных – еще и для управления фильтрами (например, большей громкости соответствует более звонкий звук) либо для выбора нужного сэмпла.
Хотя MIDI-клавиатурой формируются два сообщения (Note On и Note Off), программа преобразует их в одно типа Note, с тремя временными параметрами: временем включения ноты (нажатия MIDI-клавиши), временем выключения ноты (отпусканием MIDI-клавиши) и продолжительностью удержания MIDI-клавиши нажатой. Независимыми являются только два параметра.
Controller – сообщение о состоянии контроллера
Controller – сообщение о состоянии контроллера. Параметры сообщения – тип контроллера и его состояние. В спецификации MIDI этому сообщению соответствует сообщение Control Change формата Bk cc vv, где k – номер MIDI-канала, ее – номер, vv – значение контроллера. В литературе принято обозначать сообщение Control Change сокращенно, например, СС91 – сообщение о смене значения контроллера глубины эффекта реверберации.
MIDI-контроллеры делятся на контроллеры непрерывного действия (связанные с рукоятками, движками, регуляторами и т. п.) и переключатели (педали, кнопки и т. п.), имеющие два дискретных состояния (On/Off– включено/выключено). Для переключателей значения контроллера 0-63 означают выключенное состояние, а 64-127 – включенное.
В соответствии со спецификацией General MIDI принята следующая нумерация контроллеров:
- №0-31 – старший байт значения контроллеров непрерывного действия;
- №32-63 – младший байт значений контроллеров непрерывного действия;
- №64-95 – переключатели;
- №96-119 – зарезервированы;
- №120-127 – специальные канальные сообщения.
На сообщения, содержащие старший или младший байт значения контроллера, MIDI-устройства реагируют немедленно. Причем в качестве недостающего байта значения контроллера используется либо ранее переданное, либо установленное по умолчанию значение. Это позволяет, передав однажды неизменный байт, в дальнейшем передавать только изменившийся байт значения контроллера.
Спецификацией General MIDI определены следующие контроллеры:
- №1 – Modulation – контроллер глубины частотной модуляции;
- №2 – Breath – духовой контроллер;
- №4 – Foot Controller – ножной контроллер;
- №5 – Portamento Time – контроллер времени портаменто (портаменто – плавный переход по частоте от ноты к ноте);
- №7 – Volume – контроллер громкости звука в канале;
- №8 – Balance – контроллер баланса стереоканалов;
- №10 – Pan – контроллер панорамы;
- №11 – Expression – контроллер экспрессивности звука;
- №64 – Sustain Pedal, Holdl – контроллер педали удержания звучания нот;
- №65 – Portamento – контроллер включения/выключения режима портаменто;
- №66 – Sostenuto Pedal – контроллер педали удержания звучания нот, включенных во время действия педали;
- №67 – Soft Pedal – контроллер педали приглушения звука.