i don´t use [seq] for two reasons. first it seems not possible to change the start of a midi sequence, and second it is not easy to handle the data and especially the delta time format when doing further editing. therefore my way basically goes along [borax] and [coll].
there is a patch attached with the current version of a midi tracker optimized for loops with variable start end. there is a random note generator included as well to have an easy start.
- the data is saved in a [coll] as “time, note velocity duration marked-flag”. don’t get irritated, the marked-flag is for using a note-editor which allows to select and mark notes for manipulation, it has no use inside this patch.
- most important is lovely [borax] as it works very reliable and delivers key information like “duration” and “active voices”
- chords are saved a somehow special and “wrong” way: as you can’t have stored the same timepoint twice as index, the timepoint is always checked for its availability. if it is not available the starting time of that note is shifted for 1ms.
- when recording overdubs for loops it’s often annoying when a held note is interrupted and set off by an already recorded note. i decided to delete the old timepoint for a note, if it tries to happen while that note is recorded again.
- for changing tempo you always have to recalculate all index data (and duration values probably) multiplying a factor. just do a dump, unpack/pack and a [zl join] and this happens really quick.
– Pasted Max Patch, click to expand. –
Copy all of the following text.Then, in Max, select New From Clipboard.
Sep 12, 2012 at 7:39am #232073