Русский

Что такое MIDI NRPN?

Загрузить InputConfig в Mac App StoreЭто приложение полностью бесплатное. Создавать учётную запись не нужно. Нет подписок, нет сложных загрузок, и ничего не заблокировано. Оптимизировано для Apple Silicon.

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.

Редактор InputConfig со строкой, отправляющей четыре Control Change подряд: CC 99, CC 98, CC 6 и CC 38.
Рисунок 1. NRPN состоит из четырёх Control Change, отправленных по порядку. Эта строка отправляет CC 99 и CC 98 для номера параметра, затем CC 6 и CC 38 для значения.

Отличите 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.

Live Visualizer InputConfig в режиме MIDI: номер CC ручки и ее значение меняются при повороте.
Рисунок 2. Live Visualizer InputConfig показывает, как номер 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 выбран русский язык, InputConfig показывается по-русски. Некоторые страницы сайта пока есть только на английском.

Эта страница на других языках: English

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