Mackie Control эмуляция stop, play, обычной клавиатурой.

Vitaliy.NET

Технарь
24 Ноя 2006
687
148
43
Украина
Доброго времени суток,

Столкнулся с реальной проблемой, а именно казалось бы с эмуляцией простеньких кнопок stop, play.
Дело в том, что когда в Logic Pro в Control Surfaces добавить Mackie Control. Возможно почти каждый знает, что в таком случае ваша клавиатура midi может управлять Logic-ом. Жмем на ноты и в logic что-то там происходит. Вплоть до сворачивания/рахворачивания окна.

Я знаю что кнопка stop - это нота A5(93), а кнопка Play - черная клавиша A5#(94).
Так вот в Ableton Live, Reason все работает, замечательно. А в Logic Pro работает только на двух 2 midi клавиатурах (речь идет о iPad миди клавиатурах, подключенных через сеть).

И так проблема:
Открываю на iPad ThumbJam приложение, а на mac os x - смотрю в Midi Monitor. И мне приходят следующие сигналы от ThumbJam:

Note On(0x90) A5(93), 127
спустя пару милисекунд -
Note Off(0x80) A5(93), 0

Logic остановил track -работает ура! Тоже примерно с Play, все работает приходит NoteOnA5# и NoteOffA5#

Запускаем TouchOsc, TBMidi Stuff, MidiPads и пр... слежу в Midi Monitor
Note On(0x90) A5(93), 127
спустя пару милисекунд -
Note Off(0x80) A5(93), 0

и тут Logic понесло... он начинает генерировать note on, off в нереальных количествах, тысячи сообщений, его просто заносит в вечный цикл. Курсор позици трека скачет, то на 0, то на 1 bar. Жму еще record, play и прочие ноты. Он начинает то записывать, то останавливать, то играть и при этом, начинает сворачивать, разворачивать окно (по 10 раз в 1 сек). И так пока не закрою его к черту.

В midi monitor все черным по белому, сообщения одинаковые у всех midi приложений, что ThumbJam отправляет 2 сообщения noteon/noteoff что TouchOSC 2 сообщения noteon/noteoff. Разница лишь в том, что после Note On лоджик отправляет еще свои 2 сообщения, это если все работает хорошо, и так должно быть!, а в случае с другими midi приложениями шлет не 2 а тысячу) Почему так???

Задача не заставить работать TouchOsc или еще что-то. Задача понять почему так происходит. Может нужна какая то очередность этих сообщений, может Midi Monitor что-то не показывает. и тд.


Буду благодарен хоть за какой то ответ! Оч. нужно с эмулирувать это дело.
 
Я так понимаю речь идет о айпадовых приложениях, в которых всё работает на протоколе OSC, значит и контролить нужно его. Например этой утилитой – тут можно узнать что из OSC приходит в комп и отдается лоджику.
А, ну и соответственно, мысль – проверить что с сетью на компе творится.

Плюс в TouchOSC способы соединения могут варьироваться:
OSC
MIDI Bridge
MIDI Mobilizer
CoreMIDI

Надо проверять что из них мочит лоджик. На офсайте сразу же бросилось в глаза это: Please note that CoreMIDI connections are only available on devices running iOS 4.2 or later. It is advised to disable the CoreMIDI connection type if you don't plan on using CoreMIDI connections.
 
Последнее редактирование:
Все!! нашел причину. Целый день блин потратил, весь гугл перерыл, а оказывается причина в 1 байте данных. Тьфу мне...

Оказывается, Note off то! По даташиту General Midi нужно слать как 0x80 и прийдет сигнал note off. А можно послать как note ON но с velocity 0. Т/е 0x90 (этот номер означает note on)

Итак выходит:
Т/е вместо набора байтов {0x80, 0x5d, 0x00} {действие, номер ноты, сила удара}
нужно выслать
{0x90, 0x5d, 0x00}

Все силы истратил за день (((( а тут такая пакость. Зато Logic теперь работает без проблем.


spred,
p.s. я не пользуюсь osc протоколом. Подключение было чисто по Midi.
 
  • Like
Реакции: DmitryYa
Вопрос #2 к владельцам Mackie Control. У крутилок есть 11 диодов, + есть маленький диод снизу. Зачем он нужен, что он означает ? Что мне нужно нажать в Logic или в Mackie что бы он включился ? Из мэки протокола, видно, что если byte больше >= 40 (64), то это сигнал на этот диод. Пробовал тыкать в Logic: sorround, pan, insertы, plugin все равно... не светится (

p.s Кому надо, вот полный перечень Mackie Control команд - http://www.ssei-online.de/HUI.pdf

(Добавлено)
Видимо это pan center ?
 

Сейчас просматривают