PDA

View Full Version : Педаль (sustain) неправильно интерпретируется.


semawin
03-23-2019, 10:28 AM
Педаль (sustain) время от времени интерпретируется неправильно — звучит нота «ми» первой октавы на максимальной громкости.
Через VST: ReaControlMIDI (Cockos) видны midi-команды:
вместо «B0 40 7F [CC64 Hold Pedal] chan 1 val 127» (педаль)
ошибочно передаётся «90 40 7F [Note On] chan 1 note 64 vel 127» (нота «ми»).
Чем и как можно перенаправить «90 40 7F» на «B0 40 7F»?

mpl
03-23-2019, 11:07 PM
Чем то типа такого jsfx, но лучше выяснить отчего железка шлёт ми из педали, иначе когда будешь клацать ми на клавиатуре, будет отправляться педаль.

desc:test
@block
while ( midirecv(offset,msg1,msg2,msg3) ) ( (msg1==144 && msg2==64 && msg3==127) ? ( midisend(offset,176,msg2,msg3); ):( midisend(offset,msg1,msg2,msg3); ); );

cool
03-23-2019, 11:08 PM
Педаль (sustain) время от времени интерпретируется неправильно — звучит нота «ми» первой октавы на максимальной громкости.
Через VST: ReaControlMIDI (Cockos) видны midi-команды:
вместо «B0 40 7F [CC64 Hold Pedal] chan 1 val 127» (педаль)
ошибочно передаётся «90 40 7F [Note On] chan 1 note 64 vel 127» (нота «ми»).
Чем и как можно перенаправить «90 40 7F» на «B0 40 7F»?

JS: MIDI CC Mapper вроде как раз этим занимается.

semawin
03-24-2019, 03:42 AM
Браво, mpl (https://forum.cockos.com/member.php?u=70694)! Ваш скрипт работает именно так, как это нужно (не затрагивая сигнал от настоящей ноты «ми» — обрабатывается только ошибочная команда педали)!
Расскажите, пожалуйста, подробнее о структуре скрипта. В частности, о получении цифр: 144, 176.
Догадываюсь, что 64 — нота «ми» первой октавы; 127 — сила нажатия.

cool (https://forum.cockos.com/member.php?u=121750), я не смог разобраться в программировании JS: MIDI CC Mapper для достижения такого же результата, как от скрипта mpl (https://forum.cockos.com/member.php?u=70694).

mpl
03-24-2019, 07:23 AM
не затрагивая сигнал от настоящей ноты «ми» — обрабатывается только ошибочная команда педали

Нет, если отправляешь ми с velocity 127, то отправится сустейн. Ты абсолютно точно должен поправить это в своей железке.

144(10) = 0x90(16) (Note On в первый канал)
176(10) = 0xB0(16) (CC в первый канал)

semawin
03-24-2019, 12:35 PM
...если отправляешь ми с velocity 127, то отправится сустейн.

Да, и правда. Это не критично в сравнении с тем, что было. Проблема в кабеле midi-usb. Теперь же, благодаря Вам, mpl (https://forum.cockos.com/member.php?u=70694), и этому форуму, люди с аналогичным кабелем смогут использовать педаль в полной мере.
Большое Вам спасибо.