First, have a screenshot: loadsaprogchanges.logicx

The MIDI file I'm working with was generated by a tool which really likes program change events. While this is expected behavior for said tool, it makes the resulting file a pain to deal with in LPX.

This MIDI region has almost a thousand of these events (using 14 different program numbers total) and I'd like to split it at each of these events to separate all following notes (and volume/balance changes) into their own tracks for easier editing.

I tried writing a Scripter script that assigns all events following a program change event to another channel, which would allow me to use LPX's "Separate by MIDI channel" function, but apparently there's no way for Scripter (or any of the other MIDI FX plugins) to be applied destructively.

I also tried writing a Python script to go through the MIDI file and do the same thing, but I can't get it to output non-bogus data.

Do I have to split this region manually or is there an easier way?

  • did you ever solve this? – Alnitak Sep 15 '17 at 21:31
  • I didn't, sorry. – Peter W. Sep 16 '17 at 14:26
  • sounds like an interesting challenge, then :) – Alnitak Sep 17 '17 at 11:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.