midi player

stefano's icon

in many years of using MAX i never had to play a midi file, but now i need to. I just found out how convoluted the whole situation is so i thought: should't there be an easier way to play a midi file? i know it's not a cutting edge feature that will make the internet go "wow look what max can do now" but it would be comfy and open quite a lot of possibilities that maybe people don't dare to explore because [seq] and [detonate] aren't quick to use and set up. Just a suggestion, cheers. S

Source Audio's icon

what is so difficult about it ?
you send read message to seq and hit bang or start ...

TFL's icon

Maybe what stefano would like is something in-between detonate and seq, or at least an accessible example or a "ready-to-use" abstraction alowing to play, pause, dynamically set the playback speed of a midi, just sort of like jit.movie would do with videos. Such a thing wouldn't be hard to do, but I get it could become cumbersome for some newcomers.
This said, i guess very few people start with Max by working directly with MIDI files, as I assume most people wanting to work with MIDI recordings and Max go with Live + M4L, which makes it pretty straightforward.

Source Audio's icon

it could be so, sure

stefano's icon

@source audio: you are right, reading and playing is easy but anything else becomes complicated (of course all is doable, and we all like relatively complicated stuff, otherwise we wouldn't be using MAX)
@TFL: yes that is exactly what i had in mind, a jit.movie approach would be ideal: normalized loop start and end, real-time speed/rate control, maybe even drag and drop if we wanna be fancy! and the possibility to run in with a phasor for sync. I am working on a theater/performance where visuals, lights and sounds are all influenced by a moving body on stage via kinect and other sensors and Max is driving everything. I was using Live for some "standard" audio processing and triggering midi sequences but i am ditching it because i am trying to spare as much CPU as possible (having all the different stuff running in MAX + LIVE sucks more WATTS than my power supply can provide and my battery is going down even when plugged [2019 macbook 16'' issue]) so i am moving all the LIVE processing to MAX (also midi loops) and i was surprised there wasn't a faster way to handle midi, i felt like i was working with MAX 4 again :)
Also @TFL's newcomers point is a valid one, i have the pleasure of teaching Max in different art universities since more then a decade and with MAX 8 newcomers can do quite a lot of stuff pretty quickly, but as soon as a student wants to experiment with midi looping... it gets hard. There are interfaces for playing with many things at beginner level -playlist for video and audio, vizzies, Beap etc.- but midi kind of fell behind. Maybe Ableton headquarters are vetoing easy to use midi in MAX so to avoid competition (just kidding... i like conspiracy stories...)
Sorry for the long post and thanks for the replies!

Roman Thilenius's icon

the strange thing is that quicktime player and quicktime web plug-in play midi just fine, but max doesnt. :)

if you ever start exploring detonate, be careful not to miss the difference between tracks and channels.

Source Audio's icon

from max 4 to 8 not much changed in respect to playing midi files,
except adding type 1 midi file support to seq.
it does not even tell you what tempo midi file is,
although it gets calculated internally for playback.
And that was so long before ableton - max marriage.

same could be mentioned for native support for any kind of compressed audio file format, and many other little things one might wish to have in max and can be found in quite few freeware apps.


stefano's icon

@source audio: (max 4 -> 8 no midi changes) yes that's a bit my point, most media related stuff became pretty streamlined with new max versions but midi stayed the same, i never had to deal with midi file playback in all this time, that's why i had a MAX 4, PTSD flashback :)
MIDI is not like .mp3 or .mp4, we don't have the same uncompression CPU hunger or disk speed problems... but i get the general point you make
@ROMAN: thanks for the tip!