Re: [LAU] USB MIDI controller + OT 14-bit question

From: Len Ovens <len@email-addr-hidden>
Date: Mon Dec 12 2016 - 07:12:02 EET

On Sun, 11 Dec 2016, termtech wrote:

> Slightly off-topic question:
>
> What controllers offer to manipulate 14-bit from one knob or slider,
> including 'amalgamated' controls (so-called 'high' and 'low' controllers)
> and 14-bit (N)RPN?
> Custom High/Low sending order?
> Redundant controller number and value optimization
> (skip it or force send always)?

The controlers previously discussed (bcf2k and other MCP controllers)
probably come closest. The faders are 1024 (10bit) via pitch controls. The
smallest 4 bits are ignored. Which brings about the whole hi rez MIDI
control question. Even with 7 bit CCs it is quite easy to make a change
fast enough to skip many intermediate values. While it is still possible
to make a slow enough move to use all 10 bit on the mcp faders, they are
getting close to the limit of what the physical resistor/motor combination
can handle... and the receiving software still has to ramp from value to
value (same with a GUI slider) anyway. Otherwise there will be zipper
noise. So the question quickly becomes how many bits are noticable with
proper ramping. The only controller specs I have looked at with true high
res in the spec are some of the Yamaha mixer controllers which have some
controls with as high as 28 bits... if they are actually continuous or
just a way of sending bigger numbers I am not sure (I don't have one to
play with)

> They should of course have the ability to manipulate the high and low
> separately with two knobs or sliders.
>
> Does anyone use such a single continuous 14-bit control?
> Would you like to but can't find apps that accept some or all of them?
>
> These things greatly affect some input controller work I'm doing in MusE.
> If you have such controllers, let me know so I can pester you to test ;-)

You must have smoothing for anything MIDI. It is not woth sending 5 midi
values where the last one comes after 3 midi events after you want to send
the the 6th event. MIDI can only send about 1000 events per sec (10bits a
byte at 31k, 3bytes per event... so 4 events per nrpn would cut that in 4.
nrpns can be less if there is only one control being moved at a time. as
soon as more than one move at a time, all 4 bytes need to be sent. This is
why MCP uses pitch bends for hi rez control... but that limits you to 16
high rez controllers per midi port.

So any application that accepts MIDI CC control does smoothing. The
controller makers tend not to advertize the granularity of their controls
:) because they are selling them to PNP people who use a MAC because
(insert name of star here) does. All they are concerned about is that they
can plug it in and it works. Most of the controllers I can think of that
use hi rez info very much are OSC controllers and touch sensitive.

For testing purposes a midi to midi converter middleware may take any midi
controller and allow two CCs to do high/low byte work. 96 position
encoders are quite common, more so than 128 position encoders. Both are
cheap ($5 each or less). A 14 bit encoder is $40-$60 complete... the chip
inside being about $11 and the casing/bearing/etc making up the rest. The
seven bit encoder for $3 requires much more computer attention and pin
out. And cpu speed matters (remember this is a controller, no one wants to
spend an extra $1k for a super computer to run it... they are R-PI like
deals)

So there is not likely to be such controllers. It is possible that you
could create a map for a touch based controller (think android) that would
do what you want... but remeber your res in that case is based on the
resolution of the touch screen itself, even a controller boasting .001
kinds of movements is going to send a new value every touch pixel
movement. So you want a large touch screen :)

This has been much of my research in the past year and a half. It is not
just what the resolution of the controller is, but also how fast you can
detect change and send it... and how fast the receiver can deal with it. I
am quickly coming to the conclusion that even 8 or 9 bits is enough.

--
Len Ovens
www.ovenwerks.net
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-user
Received on Mon Dec 12 08:15:02 2016

This archive was generated by hypermail 2.1.8 : Mon Dec 12 2016 - 08:15:02 EET