1.7. Системные сообщения

С помощью системных сообщений можно управлять любыми параметрами тон-генератора, в том числе и рассмотренными выше. Например, чтобы установить значение панорамы для заданного MIDI-канала в крайнюю левую точку, можно воспользоваться манипулятором №10 (Pan) с аргументом 0. То же самое можно выполнить с помощью системного сообщения F0 43 10 4С 08 00 0Е 01 F7, в котором шестым байтом кодируется номер парта (0 соответствует нулевому парту при нумерации от 0), а панорама задается значением предпоследнего байта (01 соответствует крайнему левому положению, 40 — середине, 7F — крайнему правому).

Сложно. Все-таки проще использовать для управления панорамой манипулятор Pan. Но можно ли с помощью него заставить тон-генератор изменять панораму каждого нового звука по случайному закону? Нет. А с помощью приведенного выше системного сообщения можно. Для этого значение предпоследнего байта должно быть равным 00. Более того, существует множество параметров тон-генератора XG, управлять которыми можно только с помощью системных сообщений. Спецификацией XG определены два основных типа системных сообщений:

К первому типу относятся следующие сообщения:

Мы уже не раз употребляли термин «MIDI-система». Любой современный синтезатор (в том числе и синтезатор XG) представляет собой специализированную компьютерную систему для генерации звука. А поскольку любая компьютерная система состоит из аппаратной и программной части, то и тон-генератор нужно рассматривать как компьютер, в памяти которого выполняются программы. Программы и данные размещаются в постоянной и оперативной памяти по определенным адресам. Чтобы изменить какой-либо из параметров звука, нужно изменить значение соответствующей переменной, хранящейся по определенному адресу. Это выполняется с помощью системных сообщений. Они потому называются системными, что позволяют управлять тон-генератором на системном уровне — изменять значения переменных с заданным адресом. В начале данного раздела мы привели пример системного сообщения, предназначенного для управления канальной панорамой. Байты с пятого по седьмой в этом сообщении (как и в любом другом сообщении Parameter Change) не что иное, как адрес переменной. А от значения переменной в данном случае зависит положение источника звука на панораме.

С помощью сообщений смены параметров происходит запись в память MIDI-системы значений одно- или двухбайтных переменных. В некоторых случаях удобнее передавать данные целыми массивами. Для этого в спецификации XG предусмотрены сообщения типа Bulk Dump, с помощью которых можно загружать в MIDI-систему массивы данных заданной длины, начиная с указанного адреса, например, значения всех параметров эффект-процессора или настройки всех партов. Только с помощью сообщений типа Bulk Dump можно загрузить пользовательские инструменты в формате QS300 (если тон-генератор XG позволяет работать с пользовательскими, инструментами QS300).

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

Назад Содержание Вперед

Hosted by uCoz