On Mon, 20 Jul 2015, Takashi Sakamoto wrote:

Well, are there some developers who have enough knowledgement about MIDI
messaging rule for Mackie Control or Mackie Human User Interface(HUI)?

Done some of that. HUI is old and basically dead. I do not thiink there have been any HUI only control surfaces made for a long time. Anything that does HUI also does MCP.

It is (as Paul has said) straight MIDI. The best guide I know of is the "Logic Control User's Manual" from 2002. The MIDI implementation starts on page 105. The only thing maybe a bit odd is that there are encoders that use CC increment and decrement instead of straight values, but any sw written for these surfaces is aware of it.

The other thing to be aware of with MCP is that they think in banks. I would think that an AI control would be better to just have one midi control per controlable. That is, I am not sure that adding MCP to AI control makes sense. The MCP is designed for DAW control and does this well. Using it to directly control the AI where the user may have one or five surfaces (actually three seems to be the top end) means more config work, or limiting the user to one surface. Worse, there are MCP control surfaces that look like more than one MCP controller, so in that case you would be limiting the user to half of their surface.

You will note the use of pitchbend for levels. CC has only 127 values which can give "zipper" artifacts. If using CC, the values need to be mapped to DB per tick and/or have SW smoothing. The top 50db of the range are most important.

While not considered the best implementation, Allen & Heath in the mixers use: [(Gain+54)/64]*7F for faders with 0 being off as a special case. I am guessing that AI levels would normally be set and forget in any case, not levels that would be adjusted as a performance adjustment, though many of the AIs are fully equiped enough they can be used as live performance mixers.

You get to make up your own midi map is what it finally comes down to. OSC might be a better option as the values can be floats and there is no limit to number of controls (Midi has only 127 CCs and some of those are reserved). Download and look at the X32 remote SW http://www.behringerdownload.de/X32/X32-Edit_V2.3_LINUX.tar.gz for an example. People are going to control their AI from a software application and using MIDI vs OSC does not really change the complexity too much. OSC messages are at least somewhat self documenting. OCA, or something like it, is fully discoverable and a client application can build a gui from the info it provides on the fly (including new bits being plugged in... like an ADAT box for example).

Have fun :)

In all seriousness, I am not one of the few people who can deal with kernel code or audio dsp code. I have been playing with jack midi... alsa midi looked too complex for someone new to coding.


--
Len Ovens
www.ovenwerks.net

_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev

Reply via email to