MIDI playback

gilbertoagostinho's icon

Hello,

I have a patch that plays music from a MIDI file, but I would like to be able to control the starting point of the playback. Apparently, the [seq] object only starts from the very beginning of the file, which is utterly annoying. Is there any way I can work around this issue?

Thanks in advance!
Gilberto

gilbertoagostinho's icon
broc's icon

I'd suggest using [detonate] instead. It allows explicit control of playback, in particular you can control the starting point by skipping a certain number of notes (delta times).

gilbertoagostinho's icon

Hi Broc,

Thanks a lot for your suggestion. I had a look on [detonate] and indeed it is much closer to what I need, but the problem now is that detonate only works with delta times during playback, and I really need to control my playback via time (ms).

A simple example: let's say that I have 8 seconds of music, 5 seconds of silence and then more music in my MIDI file, and I want my patch to start playing it from 10s. It means that I still would have 3 seconds of silence before the first sound is heard.

Take care,
Gilberto

broc's icon
Max Patch
Copy patch and select New From Clipboard in Max.

You need to calculate the sum of delta times until reaching or exceeding the starting point and from there run the normal playback loop, something like this.

ctrlzjones's icon

Once upon the time we had [seqplayer] by Eric Singer in 2004. It allows to set all kinds of parameters for midi files playback.

It is still loopin' with Max6 and os X_7.5.

SeqPlayer-2.2.zip
zip
gilbertoagostinho's icon

Hi Broc, your patch works wonderfully, thank you so much!

Hi Ctrlzjones, unfortunately I am using Windows and that external do not work :(