Русский

Что такое MIDI NRPN?

Загрузить InputConfig в Mac App StoreInputConfig бесплатно доступен в Mac App Store. macOS 14 или новее, без учётной записи, без отслеживания, открытый исходный код.

NRPN, Non-Registered Parameter Number, это способ управлять большим числом настроек, чем позволяют 128 номеров Control Change. Он собирается из обычных сообщений Control Change, отправленных по порядку: CC 99 и CC 98 выбирают параметр, затем CC 6 и CC 38 задают его значение. Так получается 16 384 параметра, у каждого значение до 16 384 шагов. RPN работает так же с CC 101 и CC 100 для короткого списка параметров, общих для всех производителей.

Эта схема входит в стандарт MIDI. Какой номер NRPN за что отвечает, решает производитель синтезатора, и список есть в его руководстве.

Прочитайте NRPN по сообщениям

ШагСообщениеЧто несёт
1CC 99Грубая половина номера параметра (MSB)
2CC 98Точная половина номера параметра (LSB)
3CC 6, Data EntryГрубая половина значения (MSB)
4CC 38Точная половина значения (LSB), если параметр её использует

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

Узнайте зарегистрированные

RPN, Registered Parameter Number, использует CC 101 и CC 100 для выбора параметра и те же CC 6 и CC 38 для значения. Его номера значат одно и то же на любом устройстве.

RPN (MSB, LSB)Параметр
0, 0Диапазон pitch bend, в полутонах и центах
0, 1Точная настройка
0, 2Грубая настройка
127, 127Null: параметр не выбран

Registered значит согласованный всеми, а non-registered значит заданный производителем. Диапазон, который задаёт RPN 0, объясняет страница MIDI pitch bend.

Разберите один пример

Чтобы задать диапазон pitch bend в 12 полутонов на канале 1, нужно четыре сообщения, а затем ещё два, чтобы закрыть дверь.

Байты (hex)Значение
B0 65 00CC 101 равен 0: RPN, грубая половина 0
B0 64 00CC 100 равен 0: RPN, точная половина 0, значит выбран диапазон pitch bend
B0 06 0CCC 6 равен 12: двенадцать полутонов
B0 26 00CC 38 равен 0: без лишних центов
B0 65 7F, B0 64 7FRPN null, чтобы более поздний CC 6 ничего не изменил случайно

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

Отличите NRPN от CC

Control ChangeNRPN
Сообщений на одно изменениеОдноТри или четыре
Сколько параметров128, у многих фиксированная роль16 384
Диапазон значенийОт 0 до 127От 0 до 16 383
Кто определяет номераСтандарт MIDI, для распространённыхКаждый производитель

CC прост и груб, а NRPN точен и требует больше сообщений.

Поймите, когда он нужен

Используйте NRPN, когда в руководстве синтезатора нужная настройка указана только как NRPN или когда 128 шагов слишком грубы и скачки слышны. Во всех остальных случаях проще обычный CC, а большинство DAW умеет привязать его через MIDI learn за секунду. InputConfig, бесплатное приложение для Mac, которое я делаю, отправляет одиночные сообщения с игрового контроллера: ноту, Control Change, pitch bend или Program Change. Если синтезатор предлагает ту же настройку как CC, берите CC. Стандартные CC названы в списке MIDI CC.

Коротко

  • NRPN. CC 99 и 98 выбирают, CC 6 и 38 задают. Определяется производителем.
  • RPN. CC 101 и 100 выбирают, CC 6 и 38 задают. Стандартный.
  • Завершение. Отправьте 127 и 127, чтобы снять выбор.

NRPN это четыре Control Change, работающие как один.

Вопросы

Как расшифровывается NRPN?

Non-Registered Parameter Number. Non-registered значит, что каждый производитель сам решает, чем управляют его номера.

Какие номера CC образуют NRPN?

CC 99 и CC 98 выбирают параметр, а CC 6 и CC 38 задают его значение. CC 96 и CC 97 двигают значение вверх и вниз по шагам.

Чем отличаются NRPN и RPN?

Работают они одинаково. RPN выбирает через CC 101 и CC 100, и его номера стандартные, например диапазон pitch bend. NRPN выбирает через CC 99 и CC 98, и его номера задаёт производитель.

Чем отличаются NRPN и CC?

CC это одно сообщение со значением от 0 до 127. NRPN это три или четыре сообщения CC по порядку, которые достают до 16 384 параметров со значениями до 16 383.

Как задать диапазон pitch bend по MIDI?

Отправьте RPN 0: CC 101 равный 0, CC 100 равный 0, затем CC 6 с числом полутонов и CC 38 с центами. Закончите CC 101 и CC 100 со значением 127.

Почему мой синтезатор игнорирует NRPN?

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

Ещё на русском

Подробные руководства на английском

Кто это пишет. Ryleigh Newman разрабатывает InputConfig и каждый день управляет своим Mac с помощью геймпада, потому что руки плохо слушаются. Эта страница переведена с английского. Если на Mac выбран русский язык, основные кнопки и меню приложения показываются по-русски; на этой странице они названы так же, с английским названием в скобках. Остальная часть приложения и сайта на английском языке.

Эта страница на других языках: English, العربية, Čeština, Dansk, Deutsch, Español, Suomi, Français, עברית, Magyar, Bahasa Indonesia, Italiano, 日本語, 한국어, Norsk, Nederlands, Polski, Português, Slovenčina, Svenska, ไทย, Türkçe, Українська, Tiếng Việt, 繁體中文, 简体中文

Загрузить InputConfig в Mac App StoreБесплатно. macOS 14 или новее. Без учётной записи, ничего не покидает ваш Mac. Исходный код на GitHub.