Студопедия Главная Случайная страница Задать вопрос

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Эффекты






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

Первые два сообщения, Effect Control 1(CC#12/CC#44) и Effect Control 2 (CC#13/CC#45), — непрерывного типа и высокого разрешения. Стандартная реакция на них протоколом не определена, тон-генератор может использовать их для любого параметра, имеющего отношение к встроенному эффекту.

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

Сообщение Effect 1 Depth (CC#91, оно же Reverb Send Level) изначально называлось просто External Effect Depth (глубина внешнего эффекта). Часто применяется для управления количеством реверберации (или уровнем посыла на ревербератор).

Сообщение Effect 2 Depth (CC#92, оно же Tremolo Depth) задает глубину амплитудной модуляции (глубину тремоло).

Сообщение Effect 3 Depth (CC#93, оно же Chorus Send Level, изначально называлось Chorus Depth) задает глубину (уровень) хоруса.

Сообщение Effect 4 Depth (CC#94, оно же Celeste (Detune) Depth) задает глубину расстройки, что актуально для такого инструмента, как челеста.

Сообщение Effect 5 Depth (CC#95, оно же Phaser Depth) задает глубину (уровень) обработки эффектом фейзер.

Контроллеры общего назначения


Четыре сообщения General Purpose Controller (1, 2, 3, 4) из блока непрерывных контроллеров высокого разрешения, как следует из названия, могут управлять любой функцией устройства. Часто эти сообщения генерируются слайдерами, фейдерами и прочими ползунками, поэтому некоторые их называют General Purpose Slider.

Аналогичные им четыре сообщения General Purpose Controller (5, 6, 7, 8) находятся в блоке непрерывных контроллеров низкого разрешения.

RPN


Параметр Pitch Bend Sensitivity (имеет номер 0) задает чувствительность звуковысотного колеса. А если точнее — диапазон изменения высоты тона от центрального значения. В MSB передаются полутона, в LSB — в центы. Например, для настройки диапазона в +/-3 полутона и 8 центов (на первом MIDI-канале) последовательность байт показана на рис. 48. Если центы не важны, посылать LSB не нужно.


Параметр Channel Fine Tuning(номер 1) раньше назывался просто Fine Tuning. С помощью него можно подстроить высоту тона для звучащей на канале программы в центах. Значение 8192 (0x2000) означает стандартную настройку (то есть нота Ля первой октавы имеет частоту 440 Гц). Значение 0 — строй понижается на 100 центов, 16383 (0x7F7F) — повышается на 100 центов.

Типичный пример. Мы работаем на седьмом MIDI-канале и хотим понизить строй партии на 15 центов. Рассчитаем, какое значение должно быть у RPN номер 1. Стандартной настройке соответствует значение 8192, понижению на 100 центов — 0. Стало быть, для понижения партии на 15 центов нужно 8192 умножить на 15/100. Получится 1228,8. Дробную часть мы передать не можем, поэтому округляем до 1229. Преобразуем это число в MSB и LSB: MSB = 1229 / 128 = 9, LSB = 1229 - (9 x 128) = 77. Последовательность байт показана на рис. 49.

Теперь, если понадобится изменить настройку на 1, можно воспользоваться контроллером Data Increment, а не посылать MSB и LSB заново (рис. 50). Контроллер Data Increment/Decrement работает по отношению к тому RPN, который последний подвергался настройке (если последним был NRPN, то по отношению к нему).

Параметр Channel Coarse Tuning (номер 2) раньше назывался Coarse Tuning. С помощью него строй партии можно менять шагами по 100 центов (т. е. в полутонах). Используется только MSB: значение 64 (0x40) означает стандартную настройку, значение 0 — строй понижается на 6400 центов (64 полутона), 127 (0x7F) — повышается на 6300 центов (63 полутона).

Параметры с номерами 3 и 4 (Tuning Program Change и Tuning Bank Select соответственно) используются в устройствах, которые отвечают спецификации MIDI Tuning (рассмотрим ее в отдельной статье). Так же, как и тембры, строи организуются в программы и банки. RPN 3 и 4 работают по аналогии с сообщениями Program Change и Bank Select, то есть позволяют выбрать для канала конкретный строй.

Наконец, предусмотрен служебный параметр RPN Reset (номер 16383). Представьте такую ситуацию: вы выбрали RPN номер 1 для тонкой подстройки партии. После чего установили какое-либо значение в центах (путем использования контроллеров Data Entry или Data Increment/Decrement) и спокойно продолжаете работать. Тон-генератор все это время считает текущим RPN номер 1, и будет так считать до тех пор, пока явно не задать новый RPN контроллерами RPN MSB и RPN LSB.

Если в то время, пока активен RPN номер 1, случайно будет изменен контроллер Data Entry или Data Increment/Decrement, то у вас собьется настройка партии! Для страховки от подобных случайностей и придуман параметр RPN Reset. После его применения контролеры Data Entry и Data Increment/Decrement как бы отключаются от последнего активного RPN. Обычно рекомендуется всегда посылать RPN Reset после завершения настройки какого-либо RPN. На всякий случай.

Пример использования RPN Reset на первом MIDI-канале при понижении стандартной настройки на полутон показан на рис. 51.

 

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

 






Дата добавления: 2015-08-30; просмотров: 168. Нарушение авторских прав

Studopedia.info - Студопедия - 2014-2017 год . (0.007 сек.) русская версия | украинская версия