Перейти к основному содержанию

Сообщения режима канала (Channel Mode)

Сообщения режима канала тоже относятся к сообщениям Control Change.

Сообщение All Sound Off (Control Change #120) 

Предназначено для немедленного отключения всех звуков на канале: нот, «хвостов» реверберации и прочих эффектов, если они используются.

Сообщение Reset All Controllers (Control Change #121) 

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

Сообщение Local Control On/Off (Control Change #122)

При использовании синтезатора в качестве MIDI-контроллера, в некоторых случаях возникает необходимость отключить т.н. «локальное управление». Т.е. сделать так, чтобы клавиатура устройства отправляла MIDI-сообщения только на выход (например, в секвенсор), а звуковой модуль синтезатора реагировал только на сообщения, получаемые извне (из секвенсора). Это необходимо, например, при записи партии в секвенсор с одновременным её прослушиванием. В этом случае, если не отключить Local Control, каждая сыгранная нота будет дублироваться — звуковой модуль будет реагировать на все команды, и получаемые от собственной клавиатуры, и транслируемые из секвенсора.

Для включения/отключения «локального управления» используется сообщение Local Control On/Off (Control Change #122), обычно оно генерируется кнопкой на передней панели инструмента.

midi

midi

Сообщение All Notes Off (Control Change #123)

Сообщение All Notes Off (Control Change #123) дает команду выключить все звучащие на канале ноты. Принимающее устройство должно реагировать так, как будто для каждой звучащей ноты пришло сообщение Note Off.

midi

Режимы MIDI

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

Сообщения диапазона Control Change #124 - Control Change #127 задают определенные правила обработки MIDI-сообщений:

  • Команда Omni Mode On (Control Change #125) переводит звуковой модуль в режим приема голосовых MIDI-сообщений по всем MIDI-каналам, независимо от того, на какой основной канал он настроен (Omni — от латинского «Omnis», т.е. «все»).
  • Команда Omni Mode Off (Control Change #124) возвращает к приему по основному каналу. 
  • Команда Poly Mode Off (Control Change #126) переводит звуковой модуль в монофонический режим — каждая последующая нота снимает предыдущую.
  • Команда Poly Mode On (Control Change #127) переводит звуковой модуль в полифонический режим (в соответствии с доступной полифонией).

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

214a

214b

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

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

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

Режим 1 (Omni)

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

215

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

На рисунке приведен пример последовательности байт, переводящей инструмент в режим Omni. Основной канал до перехода в этот режим был третий, поэтому пара сообщений Omni On и Poly On должна передаваться по третьему каналу:

216

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

Режим 2 

В этот режим устройство переходит после получения комбинации сообщений Omni On / Poly Off. MIDI-спецификация описывает режим 2 так: «Голосовые сообщения принимаются по всем каналам, но в каждый момент времени звучит только одна нота».

Рисунок отражает работу приемного устройства:

217

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

Режим 3 (Poly) 

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

218

Передающее устройство работает здесь так же, как в режиме Omni.

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

Режим 4 (Mono) 

Устройство переходит в этот режим после получения комбинации сообщений Omni Off / Poly Off. Поведение устройства здесь зависит от параметра, переданного в сообщении Poly Off. Если параметр в сообщении имеет значение от 1 до 16, то он задает число каналов, на которые будет реагировать инструмент, начиная с основного канала. Если параметр равен 1, то это, по сути, означает монотембральный монофонический инструмент. Так, если основной канал у нас третий, то прием будет вестись только по нему; следовательно, доступен только один тембр, с одним голосом:

219

Если же параметр сообщения Poly Off равен, например, шести, а основной канал — третий, то инструмент будет принимать сообщения на каналах 3, 4, 5, 6, 7 и 8 мультитембрально и монофонически:

220

Теперь, если назначить на каждый из этих каналов один и тот же тембр, то мы получим систему, идеально подходящую для имитации гитары и других струнных инструментов. Каждая струна гитары будет звучать на своем MIDI-канале! Это позволит обойти две проблемы. Во-первых, гитара позволяет делать подтяжку на одной струне, не смещая высоты тона на других струнах. Если поместить всю партию гитары на один MIDI-канал, то мы не сможем делать подтяжку выборочно, на каких-либо нотах, — сообщение Pitch bend, как и сообщения Control Change, действует сразу на все ноты канала. Это касается и других приемов игры, таких как глиссандо и легато.

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

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

На рисунке — последовательность байт, настраивающая звуковой модуль для имитации шестиструнной гитары (основной канал — третий):

221

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

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

MIDI-режимы и мультитембральность 

В спецификации MIDI упоминается о том, что «один физический инструмент может функционировать как несколько виртуальных» и что «некоторые инструменты могут работать в мультирежиме (Multi Mode)».

Физический инструмент, состоящий из нескольких виртуальных — это мультитембральный звуковой модуль. А мультирежим — вынужденный ответ производителей на недостатки стандартных режимов. Каждая часть (программа, тембр) в современном звуковом модуле является, практически, отдельным монотембральным инструментом, который может быть настроен на прием по одному из MIDI-каналов (иметь основной канал), и работать в одном из MIDI-режимов независимо от других частей.

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

222