Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces octave handling for MIDI. This avoids the need to encode notes with
oct.ges
within the octave.A simplified version of
octave-001
from the test suite:Show MEI
Another example with
tstamp
boundary:Show MEI
Implementation details
oct.ges
is still provided, then it will be preferred over any calculated shift due to octaves.InitMIDI
, because they are encoded after the affected notes and chords.timestamp
elements are not visited in theGenerateMIDIFunctor
- they have layer zero. To make this work we introduce an ordering on alignments.