Русский
Что такое MIDI NRPN?
Это приложение полностью бесплатное. Создавать учётную запись не нужно. Нет подписок, нет сложных загрузок, и ничего не заблокировано. Оптимизировано для 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 по сообщениям
| Шаг | Сообщение | Что несёт |
|---|---|---|
| 1 | CC 99 | Грубая половина номера параметра (MSB) |
| 2 | CC 98 | Точная половина номера параметра (LSB) |
| 3 | CC 6, Data Entry | Грубая половина значения (MSB) |
| 4 | CC 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, 127 | Null: параметр не выбран |
Registered значит согласованный всеми, а non-registered значит заданный производителем. Диапазон, который задаёт RPN 0, объясняет страница MIDI pitch bend.
Разберите один пример
Чтобы задать диапазон pitch bend в 12 полутонов на канале 1, нужно четыре сообщения, а затем ещё два, чтобы закрыть дверь.
| Байты (hex) | Значение |
|---|---|
| B0 65 00 | CC 101 равен 0: RPN, грубая половина 0 |
| B0 64 00 | CC 100 равен 0: RPN, точная половина 0, значит выбран диапазон pitch bend |
| B0 06 0C | CC 6 равен 12: двенадцать полутонов |
| B0 26 00 | CC 38 равен 0: без лишних центов |
| B0 65 7F, B0 64 7F | RPN null, чтобы более поздний CC 6 ничего не изменил случайно |
Отправьте null в конце, иначе следующее сообщение Data Entry попадёт в тот же параметр. Чтобы проверить любое из них, вставьте его в декодер сообщений MIDI.

Отличите NRPN от CC
| Control Change | NRPN | |
|---|---|---|
| Сообщений на одно изменение | Одно | Три или четыре |
| Сколько параметров | 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 выбран русский язык, InputConfig показывается по-русски. Некоторые страницы сайта пока есть только на английском.
Эта страница на других языках: English
Бесплатно. macOS 14 или новее. Без учётной записи, ничего не покидает ваш Mac. Исходный код на GitHub.