[sdiy] MIDI HD

cheater cheater cheater00 at gmail.com
Fri Feb 15 13:34:11 CET 2013

On Tue, Jan 22, 2013 at 12:24 AM, Neil Johnson
<neil.johnson97 at ntlworld.com> wrote:
> Martin Klang wrote:
>>> And since they support updates through two messages (one for the
>>> higher 7 bits and one for the lower 7 bits) I think you can
>>> actually get quite a decent update rate as you only need to send
>>> the upper bits when the lower bits over/underflow.
>> How do you imagine this working on the receiving side? Should the
>> device wait to see if the second message arrives, thereby introducing
>> latency?
> I haven't really thought about it, to be honest.  I can think of many
> different ways to minimise the unfortunate splitting of the value, and I
> have a suspicion that there are even more interesting ways to solve the
> problem.  If I ever get round to writing the stack for a synth and implement
> a solution for this then I'll be sure to let you know.
>> Or update immediately, causing skipping which might well be worse
>> than the stepping it is meant to cure. (if you don't believe me,
>> consider a transition from 0x80 to 0x7f - it would first skip to
>> either 0x00 or 0xff depending on which byte you sent first)
>> I'm not aware of this sort of solution ever being implemented. Anyone
>> else?
> I gather the ribbon controller on the Kurzweil K2500 sends 14-bit controller
> messages which are handled by the internal synth engine as well as
> transmitted on the MIDI OUT.  Perhaps you could email them and ask them how
> they solved it?
>> NRPN's look good on paper, but are a pain to work with. As has been
>> pointed out there are very few examples out there of devices that
>> support 14 bit resolution controllers.
> I guess if not many people ask for the more expensive feature then it is
> unlikely manufacturers will implement it.  Polyphonic aftertouch is good
> example of a great feature that is rarely implemented -- I think the number
> of keyboards (synths and controller) that sense it can be counted without
> removing one's socks.  The Yamaha CS-80 is discounted from that list since
> it is not a MIDI synth (ignoring retrofits).

Neil, the general structure of actuation time + velocity + aftertouch
+ off velocity + deactivation time is so limiting, even for piano.
There are so many different nuances that could be captured:

1. when the fingers made contact with the key (via capacitive or
electrostatic sensing)
2. when the key was first depressed (but not pressed far enough to actuate)
3. the current level of how far the key is depressed (great for string
machines - control volume by pressing more). This is similar to
aftertouch, but aftertouch generally happens when you've pressed the
key all the way and are applying pressure.
4. vibrations transmitted to the key
5. the positions of various elements in an  hammer action with escapement
6. the position of the finger on the key and/or a bitmap of the contact surface
7. the horizontal position of the key (some keyboards could bend pitch
like this)

Those are just a few off the top of my head, many more can be found.

The biggest issue with MIDI and now MIDI HD is that it's a very
limited notation transport, not a performance transport. It's not
specified in terms of hard-real-time processing, has variable latency,
and with the adoption of silly ideas like midi over wifi any
possibility this situation will become better is forfeited.


> Cheers,
> Neil
> --
> Modules and more :: www.cesyg.com
> Homepage :: www.njohnson.co.uk ::
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy

More information about the Synth-diy mailing list