-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
midly
integration for comprehensive message parsing
#35
Comments
It does sound very reasonable!
While we are talking about parsing underlying Midi messages, I wonder if it also would resolve #33, as it looks like some midi controllers have different ways of handling, in this case, the NOTE_OFF event. Looking at Regarding #29, you might be right but I think it has more to do with it being |
Some updates:
The main thing I've run into is that It could be nice to add some convenience functions for certain transformations (e.g. NOTE_ON with velocity 0 is converted to NOTE_OFF), or a comprehensive Anyway, I'm happy to proceed with the mirrored |
Nice, that's good news! I'm all for the mirrored |
Currently,
bevy_midi
only parses Note On and Note Off messages, leaving it to the user to parse most messages. Because messages are consistently presented as 3 bytes, some messages are bound to be incorrectly parsed as well (this is the root cause of #29 , I think).What do you think about using an external library, like
midly
, to do the messaging parsing? It hasMidiStream
specifically meant for parsing undelimitted byte streams of MIDI data into discrete events.It does add an external dependency, and it would be a breaking change to the interface if
bevy_midi
directly uses itsLiveEvent
as the output. (midly
itself has only one optional dependency inrayon
, whichbevy_midi
wouldn't need for streaming data).If it sounds reasonable, I'd be happy to take a crack at it.
The text was updated successfully, but these errors were encountered: