Convert Coll list into midi file that seq will play
This one is driving me mental!
I have an original saved midi file that plays fine through the seq object. The idea is to randomise the notes but keep the same rhythm and timing as the original file. Using detonate and coll I have managed to randomise the note/velocity data and glue it back onto the time parameter output.
Now I have a coll with a long list like this.
(eg 4 = note on 4ms from start of seq; 92 43 = note/velocity; 10 = duration)
1, 4 92 43 10;
2, 241 99 56 72;
3, 466 60 38 225;
So my question is can I make a midi file from this data that seq will understand?
I have tried feeding it back into detonate but I want the original midi file to play alongside the randomised midi file with the ability to switch between the two in real-time…
Why don’t you create the randomized version as a new midi file (coll > detonate > file)?
Then you could play it alongside the original one using seq.
Sorry didn’t explain exactly what I wanted…
When I load in the original midi file I wanted the randomised version to be created immediately ready for playback.
Am I right in thinking that with detonate I would need to record the new sequence back before I could use it?
You could also play the coll data directly, like this
----------begin_max5_patcher---------- 771.3ocuW1saZCCE.95vSgUtlUE6PRfNoIs8ZTMgLIFpWcrQINcPq5697ezB izDyX3KvA6b7Imy24Gm75jn3Uhcj1Xv8fG.QQuNIJxrjdgH27n3Z7tRFt0HV bontlvkwSs2SR1IMqukg2CJELFPrFvERkVchv6pobFQZ1Ozs3ZAW1RegXVK4 tjOjUzIOH7gU2hkkOR4aV1PJkViEt.p1DXQhYLSOBmeWB3mtsPqLVkX0u9BL O9nGJGWadnweughYfeHXUw5691jI5goWIFVKZpwx6ATdEY2TPEgIwRZMArkp 7AvyDlnjJ2Cp5ZTqK3e8a2TLgPVzTfzWP44CBpY2.PIEa1vHC5jm5MvAB5YK z1+byHJ4v369hUKx8aIV4iopHTudJ7ewU3jeq17Ygbcxt5I2qKl9+JcuHU6s oEFmdVwPgwE2fn3m35uv.MjM854nKwyQi64IPK.NyyOKnGOU8qOvLObfQBVA nWekMZzZATpo.OEcW1XbYEluQylOqnnHn4MsLZIA.us4NNFkLSeICcE4N4gC NpyLv6udtLdeTTtoZJMebtXxc5iKYgiK03mH5dsWeiVOZ2XgRlGsaVyDXoNu w9m9fzrvAoRQGWRZ5kQYWBilMZ5CL0bwBrgYjtkyTW00.cfPgjSL102e1CHY eyK0jLu58LcfdPvwvi61ZeaYEVhcXwwkHaxwQUKQwGj5AibuKo5NOQ1eDNzq 7Ll04rUkGkqeQLcSjLkK4jwFU5UOnd0SVhVSvKRSoCnITeZx8WkJs3oE+LoZ oBnpX0RrT1PW0IseDzwvhTuhXXOzs8iR9LQmXFk+2e6jIQPu9oYjshtlxCwY WlN3iTgJRqjxMeOvQx.OQlGoUUD9wulXMsZqPUJ4LAqadV0guVDD5gIoMaTv LoLOsnK.Rv745BQzBai8YldWmNChrmGZkzLKTnMbQa0IR.3HVzhSjIDVThGV T3XzbOrnYA0h7ofXdPsnbOxilGz7nBOXTVPYTgGLJKnLJ2CFUD1Se7vhxuBK RM4sI+g3Q76Q -----------end_max5_patcher-----------
I agree with just playing back using the coll. I have an example, called CollSeq that does this sort of thing, which can be found here: http://xfade.com/max/examples/
Broc thanks for your patch, it did work but I’ve ended up using the excellent CollSeq from Chris…. Problem solved works perfectly… much appreciated..
seq is a really dumb object. forget it – and use detonate.
with detonate you would eventually no longer want to randomize or resort
the events in the stored data – but rather PLAY the data randomised or
resorted right from the stored data in the object in realtime.
this is much easier AND allows for more flexibilty.
for reading consecutive data from detonate including the delta time just connect
the time output to the "next" message (this is kind of missing the helpfile imo)