This is 'Quick Transpose' customised for live performance, and so it joins the 'series' of devices that arose from me publishing my personal utility to ease my programming of Racks in Ableton Live:
Quick Transpose itself was criticised very effectively and persistently in one of the Facebook 'synthesiser' groups because it could be replaced by keyboard shortcuts for the factory 'Pitch' device. Yes, I acknowledge that this is indeed the case, but I'm a mouse clicker, not a keyboard shortcut user, and I almost always prefer to use a single mouse click to mode-changing combinations of mouse clicks to set the focus, followed by keyboard shortcuts to do the action. Different folks, different strokes.
However, brucewayne247 commented on maxforlive.com that what was also needed was what I now call 'Counter' mode, where mouse clicks advance a counter that does the transpose (and this added 'BW' to the name), and JapanLoveStar took this further by requesting via this blog that I should make everything MIDI-mappable, especially a few buttons that I had over-looked (so adding 'JLS'). Somewhere in there, there was also a request for an 'audio' version instead of just MIDI, and before I knew it, I had a series of devices that had strayed some distance from the original 'Make Rack programming easy' goal!
Previously, when a device gets optimised for live performance, I have added a 'perf' to the end, and so that's where the '
Quick Transpose perf JLS' name comes from. This time the customisation is quite interesting because it moves away from the usual tight timing and synchronisation of DAWs in live performance, into a space where the timing is user-driven instead. I've never been very good with looping, especially not live, and hugely admire those people who have mastered them (see below), so I had to cast my mind back to when I used to do stage lighting. The result is a 'scene' based sequencer that take the output of the counter and makes it available as transposition, plus two additional other tracks that are mappable to parameters inside Ableton Live. For musical use, then I have replaced the words 'scene' with 'section', because that's the closest word I can think of for part of a song, and I'm happy for better suggestions to turn up!
The far left side of '
QT perf JLS' (as I'm going to abbreviate it herein) has the counter from the 'BW' version, but with the added 'zero' button in between the '+' and '-' buttons to clear the count quickly with a single mouse click. I also changed the 'ANO' button so that it not only flushes hanging MIDI notes, but it also sends the basic 'All Notes Off' MIDI message as well. Everything to the right is new, and reflects my new insight into this way of performing courtesy of BW and JLS.
The most obvious part is the 'section' sequencer, which is a repurposed 'step' sequencer, and yes, the screenshot is out of date because it still has 'step' shown - the current version on maxforlive.com has a few cosmetic changes that I made after going from 'dev' to published, and so the graphics here aren't totally in sync. Versions 0.01 and 0.02 were never published because I had a little bit of development hell, but that's another story. There are three tracks: Transpose, as you expected, and C3 is the 'centre' zero, 'no transpose' pitch setting - if you press the 'X' red button on the 'Transpose' track then this resets the current sequence (there are 16 'songs', set by the big number selector) to all C3s. The 'Value1' and 'Value2' tracks are the other two, and they can only be mapped to other Ableton Live parameters using the little 'Map' buttons on the far right.
The grid is always 'live' for editing, and so when you select a track, then moving the mouse around in the grid part will edit the values of the sliders for Value1 and Value2 - for the Transpose track then you have to click in a grid cell to add or remove a pitch entry. The 'Fold' button works just like the same button in the Ableton Live piano roll window, and makes it easier to view pitch sequences with narrow ranges as well as edit within a restricted set of already-chosen values. You can always add the Ableton Live factory device called 'Scale' after 'QT perf JLS' if you want to constrain the pitches.
Immediately on the left side of the grid are the main user control buttons, and these are very similar to the '+' and '-' buttons in the counter, except that '>' moves the sequencer one step to the right, and '<' moves the sequencer one step to the left. (Interestingly, using the characters '>' and '<' in the maxforlive.com description caused me some problems, because the web-site detects them as 'HTML', and you aren't allowed to use HTML in the description field...) Anyway, as you go across the grid, then the middle purple box shows the transpose value, and so the buttons work in much the same way as the counter immediately to their left. Above the buttons, there is a tiny 'show/hide' button that allows the whole of the remaining right hand part of the device to be hidden (or revealed again!) so that you only have the main buttons visible. The idea here is that you spend time setting up the grid with the transpose and other values that you want, and then in live performance, all you want to do is advance through the sections by clicking on the upper '>' button, or maybe the middle hidden 'go to step 1' purple button. (I'm kind of assuming here that most people will start on 'no transpose' in the first section...)
On the right hand side of the grid there are the 'Song' selector (big, 1 of 16 numbered songs), the 'current section' indicator which is now echoed in the minimised tab view, the section lengths (2 section to 16), the tracks control buttons, and finally, three rather cryptic buttons that are alternatives to the '>' and '<' buttons. '|<>|' moves back and forwards across the grid, repeating the first step and the last twice, whilst '<>" moves back and forth across the grid with only one output of the first and last step. The 'R' button move across the grid randomly. All of these 'movement' buttons can be controlled by mouse clicks, or by assigning them to MIDI controller buttons.
Workflow
The workflow for using 'QT perf JLS' goes something like this:
1. Click the little round 'show/hide' button to reveal the expanded view.
2. Set the song number (1-16)
3. Decide how many sections you have in your song/piece-of-music. (<16!)
4. Set the section count to the nearest larger number.
5. Choose the Transpose track and fill in the transpose values for each section (C3=no transpose)
6. Map the 'Value' tracks to two other parameters (volume, filter cut-off, chorus, reverb, etc.)
7. Set the values for each section for the two Value tracks.
8. Reset the sequencer to section (step) 1. (The transpose and value settings should now happen!)
9. Click the little round 'show/hide' button to hide the expanded view.
10. Start the performance.
11. Click on the '>' to advance to the next section. Click on'<' if you change your mind an want to keep playing in the previous section!
12. Click on the middle button (the transpose value in the purple box) to return to section 1 and end the performance. (You could also use '3rd Hand' to help automate the volume fader...)
Masters of looping - a personal selection...
You can download Quick Transpose perf JLS for free from MaxForLive.com.
(The links above should now be fixed!)
Here are the instructions for what to do with the .amxd file that you download from MaxforLive.com:
https://synthesizerwriter.blogspot.co.uk/2017/12/where-do-i-put-downloaded-amxd.html
(In Live 10, you can also just double-click on the .amxd file, but this puts the device in the same folder as all of the factory devices...)
Modular Equivalents
In terms of modular equivalents, then reproducing this functionality in my modulars was pretty straight-forward. It is just a couple of 8 step sequencers chained together and some patch cables - so 2ME altogether, plus maybe one or two extra ME for the random selection (which depends on how 'basic' the step sequencer is...).
Buy me a coffee