[sdiy] A different kind of polyphonic aftertouch

Richie Burnett rburnett at richieburnett.co.uk
Fri Jan 5 12:56:17 CET 2018

Regarding different velocity curves, I think the problem likely stems from 
the way velocity used to be measured, (and likely still is.)  As far as I 
know the early MIDI keyboard scanners used to initialise a 7-bit counter to 
127 when the top contact of the keyboard was made/broke, then the counter 
would count down at some fixed rate until the bottom contact of the key was 
made/broke.  Then the counter was stopped and read.  Hence it actually 
measured time, but counted backwards, and this number was actually output as 
something called "velocity"!!!  Now this is clearly wrong, *if* the value 
you want to send corresponds to what most people perceive as velocity. 
Obviously this technique is easy to do with some very basic digital 
electronics, and is surely the reason why it was done that way.  However, to 
get true "average velocity" we at least need to count time in the right 
direction and take the reciprocal to get a meaningful measurement.  I 
suspect that the existence of velocity curves is firstly to address this 
missing reciprocal operation, and secondly...

There is no standard as to how the velocity should effect the intensity of a 
sound.  Is it supposed to correspond with the amplitude of the sound?  the 
energy?  ...or even the inverted reciprocal of the amplitude (if the crazy 
backwards time count is used directly)!?!?  Now we have at least three 
different things that a given keyboard could be outputting, and at least 
three different things that any given MIDI module could be expecting to see 
for its "velocity" byte in an incoming MIDI message.  Hence the requirement 
for lots of velocity curves to translate between the possible variations 
until we arrive at something that feels right?


-----Original Message----- 
From: rsdio at audiobanshee.com
Sent: Friday, January 05, 2018 10:50 AM
Subject: Re: [sdiy] A different kind of polyphonic aftertouch

I’m certainly not a physics expert, but I’ve long considered the question of 
whether velocity as a time measurement (fixed distance divided by varying 
time) is a reasonable measure of impact. The answer that I came up with is 
that it would seem impossible to move ones fingers faster and faster while 
generating less impact pressure, and likewise that it would seem impossible 
to increase the impact pressure of your fingers without also moving faster. 
Whether speed and impact match up perfectly or not is perhaps a more 
detailed question, but they certainly are related and not possibly in 
opposition. What little I know of physics is that Force Equals Mass Times 
Acceleration, and thus it seems like a reasonable approximation to measure 
Velocity in order to determine Force (or impact as I was calling it).

As for the Velocity Curves that are available on synths, I would not say 
that they are evidence that the velocity measurement itself is flawed, but 
more that it needs a little tweaking to be useful.

I estimate that the largest factor in these Velocity Curves is that human 
perception is relative, and often logarithmic. Pitch and Decibels are 
relative, such that a few Hertz in the lowest octaves might span a Half Step 
whereas a few Hertz in the highest octaves might go completely unnoticed (in 
isolation - without beating against another oscillator). Every octave has 
double the Hertz of the lower octave, and thus Pitch is logarithmic and the 
perceived interval is relative to the starting Pitch; conversely, the 
perceived interval is not linearly related to Hertz, because it depends upon 
the octave. Similarly, every 6 dB increase in perceived loudness corresponds 
to a doubling of power, so Voltage or Wattage needs ever increasing values 
to produce the same perceived loudness increase. This is another logarithmic 
relationship, where doubling the measured value is require to produce a 
linear change in perception. Seems like everything we hear is on a curve.

To put it more simply, we probably need some kind of Curve in order to 
perceive the parameter changes in a meaningful way, and that is why the 
simple Velocity time measurement benefits from mapping onto various curves.

I also imagine that a smaller factor might be that the circuits measuring 
the Velocity timing have a fixed time resolution, and this gives more 
resolution at softer force levels and less resolution at harder force 
levels. Since Velocity is Distance divided by Time, then the fact that time 
is discrete steps means that the fractional results have varying resolution. 
Long times mean slow Velocity; short times mean fast Velocity. At some 
point, though, the Time steps from 0, to 1, to 2 ticks of some discrete 
clock, and that’s like changing from Infinity, to 1, to 1/2. Continuing on, 
you get 1/3, 1/4, 1/5, and you can see how the Velocity steps get smaller 
and smaller, meaning the resolution increases. I tried to calculate the 
resolution of the eighties and nineties synths based on their crystal 
frequencies and Timer peripheral resolutions - I can’t remember what I came 
up with, but the Velocity measurements are far from exact or linear. Since 
MIDI only allows for 127 Velocity values anyway (and the DX7 only went to 
100, in the earliest models), and humans probably don’t have super fine 
control over the range and variation of force, I don’t think there’s a lot 
of loss to worry about here.

In other words, I think that the Velocity Curve choices might help make up 
for the fact that the measurement resolution varies with force. I’m not 100% 
certain about this one without running through the numbers, though.

By the way, in addition to the Roli Seaboard and Continuum, there is also 
the Eigenlabs Eigenharp and the Madrona Labs Soundplane. The Eigenharp 
primarily has keys with four optical sensors on each edge, such that 
pressure as well as slight movements in other dimensions can be sensed. The 
Soundplane has a custom capacitive sensor with a neoprene dielectric that 
can sense a very wide pressure range at five hundred points and interpolate 
between them to track multiple fingers in three dimensions. The Soundplane 
supports both MIDI and OSC - while we’re familiar with the limitations of 
the MIDI protocol for things like non-piano-keyboard musical expression, you 
might be interested to know that OSC had to be expanded to handle 
three-dimension touch data (prior to t3d, OSC really only supported 
non-velocity, two-dimensional controllers like the monome).

I think the biggest challenge is the unfamiliarity, but that also holds the 
greatest promise. If a musician were to put in the time to learn any of 
these new controllers, the ability for expression would probably far exceed 
the typical MIDI piano, MIDI saxophone, MIDI guitar, MIDI drum, or whatever 
other traditional instrument might be mapped onto a modern sensor.

Brian Willoughby

On Jan 4, 2018, at 8:51 PM, Mike HEQX <mike at heqx.com> wrote:
> Good points Tom. Ok so velocity sensitivity is the attack velocity, in the 
> piano paradigm, yet synthesizers are not pianos and their actions are not 
> hammer oriented. Conversely pianos do not have aftertouch.
> I was referring to the velocity curve that you can select on some digital 
> synths. It's as if your fingers can't tell the instrument what you want it 
> to do directly because, it has to have an additional layer of processing 
> to simulate some type of mechanical action that is not inherent in the 
> instrument, thus it is psuedo-realistic sensing because you are playing 
> one way and the instrument is artificially creating a response. Now that 
> is not to say it is a bad thing to have artificial curves as many 
> controllers do, but it is certainly not directly representing actual 
> playing physics.
> If you read the descriptions from some manufacturers of their velocity 
> curve settings you can see that they are compensating for deficiencies in 
> the human player, from the physical interface as well as the conversion to 
> midi data.
> "All that said, more sensing and different sensing is all good, so I agree 
> with the thrust of your argument. I’d still like to see a serious return 
> of polyphonic aftertouch - how is it possible that so many years after the 
> CS80 that isn’t a *standard* feature on all synth keybeds?!?"
> I agree heartily and I'll add that something like the Roli Seaboard or the 
> Continuum are breaking that piano paradigm even though they have a key 
> basis that is familiar. Now we need more interfaces that are familiar ( 
> beyond the saxaphone, and trumpet) and also some that may be even more 
> efficient and intuitive than the piano key layout.
> Mike
> On 1/4/2018 6:10 PM, Tom Wiltshire wrote:
>> There’s nothing “pseudo” about measuring the time something takes to get 
>> from A to B and then calling that velocity. Ok, “average velocity” if you 
>> like, but it’s definitely velocity. Saying that the attack curve is 
>> “artificially generated” is a bit of stretch too. There’s a relationship 
>> between how hard you hit and the eventual velocity value. Once upon a 
>> time, that would have been organised mechanically, but now it makes sense 
>> to do it in software and make it more flexible. It’s no more artificial 
>> than using  bits of trees and elephants tusks and cast iron and wire to 
>> build a mechanical solution.
>> Similarly, for a hammer action, velocity sensitivity *is* attack 
>> velocity, since once the hammer leaves the key, you haven’t got any 
>> control over it, despite all those pianists massaging their keys. Synth 
>> keypads do better than hammer action in that measuring release velocity 
>> is actually possible and realistic, even if rarely done (and rarely that 
>> useful, I’d argue).
>> All that said, more sensing and different sensing is all good, so I agree 
>> with the thrust of your argument. I’d still like to see a serious return 
>> of polyphonic aftertouch - how is it possible that so many years after 
>> the CS80 that isn’t a *standard* feature on all synth keybeds?!?
>> Tom
>> On 4 Jan 2018, at 22:29, Mike HEQX <mike at heqx.com> wrote:
>>> As we see in the Ensoniq SQ-80 there is no physical switch. It was a 
>>> change in inductance that was being measured and they did have a rubber 
>>> pad under the key and they did give you polyphonic aftertouch ( not 
>>> related I know ). So they used inductance, and someone else uses light, 
>>> and yet another uses capacitance, and these are all linear sort-of 
>>> systems that in my opinion are better than the two switch method of 
>>> generating a psuedo-velocity sensitivity that measures time.
>>> So really the majority of synth keybeds that claim velocity sensitivity 
>>> are really just sensing attack velocity. Some offer a choice of attack 
>>> curve, which is artificially generated for you. Very few are actual 
>>> hammer actions ( in the piano paradigm ), and very few are doing 
>>> anything unique. Long live linear sensing!
>>> On 1/4/2018 2:36 PM, cheater00 cheater00 wrote:
>>>> You put a spring or piece of rubber under the key and suddenly the
>>>> linear sensor is a pressure sensor.
>>>> On Thu, Dec 14, 2017 at 6:46 PM, ASSI <Stromeko at nexgo.de> wrote:
>>>>> On Thursday, December 14, 2017 5:09:40 PM CET MTG wrote:
>>>>>> https://deskthority.net/wiki/Adomax_Flaretech
>>>>>> "There are no electronics in the switch modules themselves. Instead,
>>>>>> surface-mounted infra-red optoelectronic components on the circuit 
>>>>>> board
>>>>>> provide the sensing in conjunction with a prism in the module's
>>>>>> transparent slider."
>>>>> So a vertical mouse, sort-of.  Which means it's very likely measuring 
>>>>> key
>>>>> travel rather than pressure, which is a lot less useful for a musical
>>>>> keyboard.
>>>>> Regards,
>>>>> Achim.

Synth-diy mailing list
Synth-diy at synth-diy.org

This email has been checked for viruses by AVG.

More information about the Synth-diy mailing list