The inspiration to this has come from thinking about probability column and the structure imposer tool helped think of a way this might be accomplished.
The idea follows the now familiar method of using a couple of looped patterns at the end to copy data into, one currently playing, one being updated.
Block highlighted in the Matrix would be copied into the live patterns. If only one block from a pattern is highlighted then all its data would be inserted (or if no block it would be blanked.) Multiple blocks from the same pattern would copied to the live pattern per repetition depending on a certain mode:
Random Pattern - Full block of data copied at random.
Line by line - Each line is randomly inserted from the available blocks.
1/x lines - User can set how large a chunk to be taken from each random block at a time (eg 1/4 for a basic 4/4 chop. {possibly allow fractional values, eg 1/1.3333 = 0.75 so you’d get 3 beats/sections from one block and the 4th from a different one.})
Manual update mode - You trigger when to update the block selection.
Live update - Blocks used are updated as you change selections.
I don’t know how heavy on the CPU this would be with a few tracks with multi-selections. Maybe some speed improvements could be had by storing a table of which tracks have multiple blocks so only those are processed on subsequent passes. I’m sure people who have made similar tools know a lot more about optimising them than I do!
Any thoughts? No good without screenshots and mockups? Pretty much present in an existing tool I’ve missed? (Only just got a controller for use live and not had a chance to try out the existing live tools properly yet…)