Saturday, 24 November 2018

Doubling the levels in a Quantiser in Max For Live device for Ableton Live - User Interface considerations

When I added four extra levels to MIDI ccQuant so that it had 7 levels instead of 3, I already knew that the user interface was going to be a challenge. The original design for MIDIccQuant had three levels because the available vertical space in a MaxForLive device is fixed: there are 170 pixels to play with... For live.dial this means you can have 4, 3 or 2 stacked vertically...

Now I'm not the greatest fan of the 'tiny' live.dial rotary controls (or the rather sparse live.slider when used at this size), and the 'panel' dials are often mistaken for the Macro Controls, which leaves the three standard 'vertical' sized live.dial rotary controls. Which means that most of Max For Live devices have at most three horizontal rows of controls - and those that have 4 (the <x>_Freez series, for example) don't use live.dial rotary controls.

MIDIccQuant used the standard 'vertical' live.dial rotary control, which meant that choosing the number of levels of quantisation was easy: 3. That way I could have three dials for setting the main parameters for the quantisation. Unfortunately, this also meant that there would be four output settings, and so I compromised to the live.dial mode that I really, really don't like: the 'bare' view:

In the 'bare' view, you turn off all of the labels and numbers (you can have labels or numbers at the top or bottom, but it looks weird) and you put the number next to the dial, as you can see above (and below). It is possible to have 5 dials squashed into the vertical space, but it isn't pretty, and it can get worse...

For the 8 output levels that I needed in MIDIccQuant8, I rejected the use of eight 'tiny' dials without labels and numbers, and instead I went for live.sliders, which normally I avoid because they are very plain and don't have the characteristic 'Ableton' look that the live.dial has. I also oriented the sliders so that they match the two parameters: horizontal for the levels, and vertically for the outputs. Finally, I colour-coded the sliders so that they matched the lines in the display:

Hopefully it should now be more obvious that you move the orange sliders from side to side to influence the horizontal spacing of the orange lines, but you move the light purple sliders up and down to move the purple line segments vertically. It worked for me, and I did consider going back and reworking MIDIccQuant so that it had the same metaphor.

Whilst I was doing all of this user interface consideration, a crazy though did pop into my mind, and I wondered about taking the quantisation to the limit, with 127 levels and 128 outputs - which stops being quantisation and becomes a transfer function, or a mapping. So watch for another device...

Getting MIDIccQuant8_mr_0v03

You can download MIDIccQuant8_mr for free from

No comments:

Post a Comment