external to manipulate and delay midi directly / shuffle generator

wildjamin's icon

my idea is to create something like "pipe",
but with some processing in between.

I could need some help/advice!

one idea is to add swing to incoming notes:

one instance could be connected to a transport
it should provide a flag (for all other instances to check) for parts of a bar to be delayed.
(for example all beats and offbeats shouldn't get an extra delay, but everything between..)

-> I really don't like how live handles groove.

I hope to find somebody into this kind of idea(s),
for me alone it seems to difficult to handle this.

I have been working on a humanizer for quite a while and I hope to be able to combine those ideas.

greetings from germany,
benjamin

orange_glass's icon

The problem I foresee here is that some grooves require certain notes to shift forward in time. You'd have to add an overall delay to achieve the effect, not good if you want to use it for live performance.

wildjamin's icon

I didn't think of specific grooves.. an easy to adjust shuffle would be a great start.

on the other hand:

I delay all notes anyway (to humanize them), so less delay (or more delay on the other notes wouldn't be a problem)

thanks for the reply!
benjamin

broc's icon

Look at my 'swing device' posted on the Ableton forum.

wildjamin's icon

that's exactly what I had on my mind.. but for reasons of timing and functionality, I'd like to try to replace the computing and the delay/pipe in a single module/external: an inlet/function to receive/parse midi, an input for the transport (my idea is the derived information could be shared between all instances) and a global (or individual) swing factor (both could be nice).

+some normal varied randomness (got lost since everything comes out of DAWs)
+an offset in samples to easily shift things around

I also think a random modulation of velocity or the creation of keypressure (on note-ons) could be interesting, because both should be tied to the note only.. (thinking of chords here)

a function to create several permutations of keyspans (if drum samples seem worn out..)

these lines will shuffle the "bits" of a key span
(usally 61 keys/extended to 64-> c1 to c6+3)

k-=35;n=0;
if (k & 32) n=1;
if (k & 16) n+=8;
if (k & 8) n+=2;
if (k & 4) n+=16;
if (k & 2) n+=32;
if (k & 1) n+=4;
n+=35;