aboutsummaryrefslogtreecommitdiff
path: root/src/midi_sequencer_impl.hpp
diff options
context:
space:
mode:
authorVitaly Novichkov <admin@wohlnet.ru>2018-08-31 03:55:14 +0300
committerVitaly Novichkov <admin@wohlnet.ru>2018-08-31 03:55:14 +0300
commitd8b894af640bd1e2b1115bd69c29b4654b3c6973 (patch)
tree6d5d28788bd719e6439976cd4716673bc74bc654 /src/midi_sequencer_impl.hpp
parentc7b3199669a7b7e0ba11eb0d94d4e143a5fdd633 (diff)
parentcf121066a365286bd1427f54064b487799623ec9 (diff)
downloadlibADLMIDI-d8b894af640bd1e2b1115bd69c29b4654b3c6973.tar.gz
libADLMIDI-d8b894af640bd1e2b1115bd69c29b4654b3c6973.tar.bz2
libADLMIDI-d8b894af640bd1e2b1115bd69c29b4654b3c6973.zip
Merge branch 'master' of git@github.com:Wohlstand/libADLMIDI.git
# Conflicts: # src/adlmidi_opl3.cpp
Diffstat (limited to 'src/midi_sequencer_impl.hpp')
-rw-r--r--src/midi_sequencer_impl.hpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/midi_sequencer_impl.hpp b/src/midi_sequencer_impl.hpp
index 0fe6192..e54c7ee 100644
--- a/src/midi_sequencer_impl.hpp
+++ b/src/midi_sequencer_impl.hpp
@@ -614,6 +614,19 @@ bool BW_MidiSequencer::buildSmfTrackData(const std::vector<std::vector<uint8_t>
}
}
+#ifdef ENABLE_END_SILENCE_SKIPPING
+ //Have track end on its own row? Clear any delay on the row before
+ if(event.subtype == MidiEvent::ST_ENDTRACK && evtPos.events.size() == 1)
+ {
+ if (!m_trackData[tk].empty())
+ {
+ MidiTrackRow &previous = m_trackData[tk].back();
+ previous.delay = 0;
+ previous.timeDelay = 0;
+ }
+ }
+#endif
+
if((evtPos.delay > 0) || (event.subtype == MidiEvent::ST_ENDTRACK))
{
evtPos.absPos = abs_position;