Контроллер Peavey

Контроллеры, адаптеры, кабели, виртуальные кабели, MIDI через ЛВС (MIDI via LAN)

Контроллер Peavey

Сообщение Acort » Сб авг 14, 2010 10:02

Кто в курсе как реализовать команду Laers и Split (разделение на зоны) посредством миди-сообщения.
Цепочка: клавиатура - мидиконтроллер "Peavey PC1600X" с программируемыми сообщениями - синт модуль.
Задача: послать Note On/Off через контроллер на два канала синта (Laers) и сделать разбивку на зоны посредством миди команды залитой в Peavey.

Что-то уже голову сломал... Компом не пользуюсь (надоел, да и на концертах неудобно), хотя там всё решается моментом...
Есть смутное подозрение, что нужно применить команду Omni и/или Poly, но как это сделать... Ни одного примера применения этих команд в сети не нашел.
Есть спецы?

Еще не врубаюсь... кажись правильно делаю. Команду для Transpose по второму каналу прописываю для faderа:

B1 65 00 B1 64 02 B1 06 34 4C

где 65, 64 - RPN (старший и младший); 00 02 - значения отвечающие за transpose; 06 - data entry; а 34 4C - соотв. диапазон желаемого изменения в полутонах -12...+12.

Не работает... :( ...последняя группа мне не нравится...
Acort
Новичок
Новичок
 
Сообщения: 15
Зарегистрирован: Пт апр 30, 2010 0:17

Сообщение Acort » Сб авг 14, 2010 19:50

С transpose справился. Недаром последняя группа не нравилась :?

С laers и split туплю наглухо... Помогай, народ!
Acort
Новичок
Новичок
 
Сообщения: 15
Зарегистрирован: Пт апр 30, 2010 0:17

Сообщение Dmitry_Milk » Вс авг 15, 2010 14:13

Дык, а какое из устройств этой цепочки по-вашему должно дублировать каждое нажатие-отпускание в два или больше note on/off-сообщений для разных MIDI-каналов?

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

Или вы подразумеваете, что дублированием сообщений от клавы на разные MIDI-каналы должен заниматься PC1600X? Судя по руководству, он этого делать не умеет.

А с помощью Omni вряд ли у вас получится сделать layers. Если б у вас был не один многотембровой звуковой модуль, а целая куча однотембровых, каждый из которых настроен на свой MIDI-канал - тогда б еще можно было сымитировать layers, послав всем модулям команду Omni On и заставив их всех одновременно реагировать на каждое note-on и note-off, просто игнорируя номер MIDI-канала.
А как себя поведет многотембровой звуковой модуль, получив команду Omni On, сложно предсказать.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Acort » Вт авг 17, 2010 10:42

Dmitry_Milk писал(а):Дык, а какое из устройств этой цепочки по-вашему должно дублировать каждое нажатие-отпускание в два или больше note on/off-сообщений для разных MIDI-каналов?

Peavey. Он и заточен под передачу миди-команд на приемники.
Прибор сумеет сделать ВСЁ, чему Вы его научите. В руководстве так и написано - всё.
И это действительно так. Я уже столько команд туда залил - не поверите груда железа управляется одним нажатием кнопки (Send scene)!
Реализовал все что хотел, кроме Laers/Split.
С другой стороны, Кубейс или Midi OX, например, передают все мыслимые команды на внешние синты в миди-протоколе, но как вот только подсмотреть эти самые команды?
Неужели только таким дорогим способом?:
http://www.artisticlicence.com/index.ph ... &order_id=

Dmitry_Milk писал(а):А с помощью Omni вряд ли у вас получится сделать layers. Если б у вас был не один многотембровой звуковой модуль, а целая куча однотембровых, каждый из которых настроен на свой MIDI-канал - тогда б еще можно было сымитировать layers, послав всем модулям команду Omni On и заставив их всех одновременно реагировать на каждое note-on и note-off, просто игнорируя номер MIDI-канала.
А как себя поведет многотембровой звуковой модуль, получив команду Omni On, сложно предсказать.


А как Вам вот такая, например, идея:

B0 7D 00 B0 7F 02 , где 7D, 7F - Omni On/Poly On, а 02 - количество каналов для приема.
Не... хреновая идея... не работает :(
Acort
Новичок
Новичок
 
Сообщения: 15
Зарегистрирован: Пт апр 30, 2010 0:17

Сообщение Dmitry_Milk » Вт авг 17, 2010 21:02

Acort писал(а):Peavey. Он и заточен под передачу миди-команд на приемники.
Прибор сумеет сделать ВСЁ, чему Вы его научите. В руководстве так и написано - всё.


Он может передавать ВСЁ, чему Вы его научите. Да, вы можете запрограмировать любую его кнопку или фейдер на передачу черт знает чего. Но в данном случае вам надо не просто передать нечто сложное, а обработать и передать КАЖДОЕ входное сообщение Note On/Off, а именно - размножить его и расставить в копиях разные номера миди-каналов. Но в руководсвтве к этому контроллеру единственное, что упоминается насчет обработки входных сообщений - это их фильтрация. А также имитация реакции нажатия и отпускания кнопок контроллера в ответ на произвольные входные сообщения, но это не та обработка входных сообщений, что нужна в данном случае. Хотя можно конечно извратиться и 16 кнопок контроллера сопоставить с 16-ю клавишами клавиатуры. Да, для этих 16 клавиш у вас получится layers/split, ценой того, что кнопками контроллера станет невозможно пользоваться. Но это же не серьезно :)

Acort писал(а):А как Вам вот такая, например, идея:

B0 7D 00 B0 7F 02 , где 7D, 7F - Omni On/Poly On, а 02 - количество каналов для приема.


Poly можете вообще не трогать - это многоголосие одного канала, возможность или невозможность одновременного воспроизведения нескольких разных нот одним и тем же синтезатором/миди-каналом/тембром.

По поводу Omni On я уже сказал, с одним многотембровым модулем фокус скорее всего не пройдет, хотя мог бы пройти с кучей однотембровых.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Dmitry_Milk » Вт авг 17, 2010 21:16

Acort писал(а):С другой стороны, Кубейс или Midi OX, например, передают все мыслимые команды на внешние синты в миди-протоколе, но как вот только подсмотреть эти самые команды?


Дык, в Midi OX есть же окошки дампинга как всех входных, так и всех выходных сообщений. Смотрите сколько угодно.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Acort » Ср авг 18, 2010 15:47

Dmitry_Milk писал(а):Но в данном случае вам надо не просто передать нечто сложное, а обработать и передать КАЖДОЕ входное сообщение Note On/Off, а именно - размножить его и расставить в копиях разные номера миди-каналов. Но в руководсвтве к этому контроллеру единственное, что упоминается насчет обработки входных сообщений - это их фильтрация. А также имитация реакции нажатия и отпускания кнопок контроллера в ответ на произвольные входные сообщения, но это не та обработка входных сообщений, что нужна в данном случае. Хотя можно конечно извратиться и 16 кнопок контроллера сопоставить с 16-ю клавишами клавиатуры. Да, для этих 16 клавиш у вас получится layers/split, ценой того, что кнопками контроллера станет невозможно пользоваться. Но это же не серьезно :)

Согласен. Дим, ну объясни мне (блин... надо было техническое образование получать) каким образом синтюк (любой!) реагирует на команды Split/Laers от внешнего источника?! Он же получает ТОЛЬКО миди-команду, причем реализованную не в sysex (там универсальных команд очень мало), а в СС#, 90, 80, RNP, короче, в протоколе на который отзывается каждый приемник.
Например: клава - комп (Кубейс - usb/midi interface) - синт.
В Кубейсе передвинем движок громкости - на синт пошла команда CC#07. Если я выделяю через Shift два соседних трека - пошла команда Laers - звучат два канала. Команда же пошла в миди? Или туплю опять?
Или забудем про комп и возьмем патчбэй Motu Midi Express, там в стандартные пресеты зашита команда Split, которая передается на инструмент. Но, опять же, передается по МИДИ?
Dmitry_Milk писал(а):По поводу Omni On я уже сказал, с одним многотембровым модулем фокус скорее всего не пройдет, хотя мог бы пройти с кучей однотембровых

Ну да... уже не прошел.
Dmitry_Milk писал(а):Дык, в Midi OX есть же окошки дампинга как всех входных, так и всех выходных сообщений. Смотрите сколько угодно.

Ты имеешь в виду окошки monitor Input/Output?
Как я не пытался, ни хрена эти окошки не показывают. Загружаю Куб, задаю в нем на выходе Out to Midi Yoke 1, чтоб глянуть какие команды выдает Кубейс на виртуальный кабель - нет результата. Мониторы девственно черны, чтоб их...
Не научишь как работать с "окошками"?
Опять же маппинг MIDI OX выдает пресеты с командами Split (Keyboard Split.oxm) на синты, но не на собственные мониторы...
Да... башню сносит конкретно :shock:
Acort
Новичок
Новичок
 
Сообщения: 15
Зарегистрирован: Пт апр 30, 2010 0:17

Сообщение Dmitry_Milk » Ср авг 18, 2010 16:26

Acort писал(а):каким образом синтюк (любой!) реагирует на команды Split/Laers от внешнего источника?! Он же получает ТОЛЬКО миди-команду, причем реализованную не в sysex (там универсальных команд очень мало), а в СС#, 90, 80, RNP, короче, в протоколе на который отзывается каждый приемник.


Дык, в том то и дело, что Split/Layers - это не команда миди. Нет в миди такой команды общепринятой, в отличие от громкости, панорамы, экспрессии, патчей/программ, банков и прочего.

Layers реализуется таким образом, что каждая одна команда Note On (нажали клавишу) от миди-клавиатуры превращается в несколько команд Note On, где нота у всех одинаковая, скорость нажатия - одинаковая, а вот номера MIDI-каналов - разные. Аналогично для Note Off.

Вот, скажем, выделяете вы с шифтом два трека в Кубе. Например, это пэд, который в синте у вас сидит, например, на MIDI-канале 2, и, скажем, лид, который, например, в синте на MIDI-канале 3.

Скажем, вы нажали на клаве ноту "ДО" первой октавы,
она в Куб послала:
90 3C 40 (Note On на канале 1, "ДО" первой октавы, скорость нажатия 64).

Куб же в синт (при выделенных вами двух треках) вместо этого уже отправляет:

91 3C 40, 92 3C 40 [ (Note On на канале 2, "ДО" первой октавы, скорость нажатия 64), (Note On на канале 3, "ДО" первой октавы, скорость нажатия 64) ]. Соответственно синт начнет воспроизводить сразу два голоса - один ноту до пэдом, другой - ноту до лидом.

Аналогичный процесс будет и при отпускании клавиши.

Ну а Split осуществляется за счет того, что слои могут покрывать разные диапазоны клавиш, и тогда Куб будет создавать копии сообщений NoteOn и NoteOff только для тех выделенных MIDI-каналов/треков, диапазонам которых эта клавиша соответствует.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Acort » Чт авг 19, 2010 16:55

Dmitry_Milk писал(а):Дык, в том то и дело, что Split/Layers - это не команда миди. Нет в миди такой команды общепринятой, в отличие от громкости, панорамы, экспрессии, патчей/программ, банков и прочего.

Я и не говорю об общепринятых командах.
Вы перечичлили команды первого уровня, их действительно только 128.
Но есть еще и команды второго уровня MSB:LSB и третьего PNR:NRNP, а это, кстати, 32768 команд.
Например: команда Transpose. Roland и Kawai реагируют на MSB:LSB
B0 64 02 B0 65 00 00 B0 06 7F
а Kurzweil на свободный номер первого уровня: СС#21

Dmitry_Milk писал(а):Layers реализуется таким образом, что каждая одна команда Note On (нажали клавишу) от миди-клавиатуры превращается в несколько команд Note On, где нота у всех одинаковая, скорость нажатия - одинаковая, а вот номера MIDI-каналов - разные. Аналогично для Note Off.

Да я понимаю...
Невозможно перекодировать миди клаву, чтоб вместо одной команды она посылала две (по одной на канал).
Я думаю о том, каким образом реализован маппинг в Моту. В него заходит сигнал и дублируется определенной командой на любой выбранный канал/каналы...
Вот как они это делают?
Acort
Новичок
Новичок
 
Сообщения: 15
Зарегистрирован: Пт апр 30, 2010 0:17

Сообщение Dmitry_Milk » Чт авг 19, 2010 18:43

Acort писал(а):Невозможно перекодировать миди клаву, чтоб вместо одной команды она посылала две (по одной на канал).


Это смотря что за клава. Куча вполне известных миди-клав спокойно реализуют Layers или хотя бы Split
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55


Вернуться в MIDI-контроллеры



@Mail.ru

x

#{title}

#{text}