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-каналов/треков, диапазонам которых эта клавиша соответствует.