From 003bf2804f7d53d70711d4f902f8558da508fd81 Mon Sep 17 00:00:00 2001 From: Sauraen Date: Sun, 9 Jan 2022 20:56:22 -0800 Subject: [PATCH] Fixed issue with FL Studio compatibility mode not working --- Source/SeqFile.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Source/SeqFile.cpp b/Source/SeqFile.cpp index 20d6411..e77cd2d 100644 --- a/Source/SeqFile.cpp +++ b/Source/SeqFile.cpp @@ -855,8 +855,17 @@ int SeqFile::importMIDI(File midifile, ValueTree midiopts){ OwnedArray chantracks; for(int channel=0; channel<16; channel++){ chantracks.add(new MidiMessageSequence()); - mastertrack->extractMidiChannelMessages(channel+1, *chantracks[channel], false); - mastertrack->deleteMidiChannelMessages(channel+1); + for(int m=0; mgetNumEvents(); ++m){ + msg = mastertrack->getEventPointer(m)->message; + if(msg.getChannel() == channel+1 && ( + !(bool)midiopts.getProperty("flstudio") || + !msg.isController() || + !(msg.getControllerNumber() == 114 || msg.getControllerNumber() == 115))){ + chantracks[channel]->addEvent(msg); + mastertrack->deleteEvent(m, false); + --m; + } + } mastertrack->updateMatchedPairs(); chantracks[channel]->updateMatchedPairs(); }