drywetmidi | NET library to read , write , process MIDI files | Audio Utils library
kandi X-RAY | drywetmidi Summary
kandi X-RAY | drywetmidi Summary
Here the list of noticeable projects that use DryWetMIDI:.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of drywetmidi
drywetmidi Key Features
drywetmidi Examples and Code Snippets
Community Discussions
Trending Discussions on drywetmidi
QUESTION
I use DryWetMIDI which works fine with some Keyboards.
With my Johannus organ DryWetMIDI InputDevice receives a NoteOn message when I release a key! I've checked the Keyboards messages with Midi-OX. The Keyboard sends the right messages (NoteOn/NoteOff) when I press and release a key.
How can this happen? What's going wrong?
...ANSWER
Answered 2021-Mar-23 at 12:32I'm posting the answer based on comments.
Your device sending Note Off as Note On with velocity of zero which is common way to encode Note Off. But DryWetMIDI doesn't process incoming events by default, so you see raw messages as a device sends them.
Right now in the latest release of the library there is no way to configure this behavior. But I've added SilentNoteOnPolicy
property to InputDevice
so it will be available in the next release. Or you can build the library from sources right now from develop branch.
Setting the policy to NoteOff
tells DWM automatically transform Note On with zero velocity to Note Off.
QUESTION
I'm using DryWetMidi library in C# and trying to acquire a program/instrument title from a loaded chunk, but I fail to find such field that gives me the title. So far I just have:
...ANSWER
Answered 2021-Jan-09 at 13:52TrackChunk has Events property which gives access to all MIDI events within a track chunk. Just find ProgramChangeEvent ones and collect program numbers:
QUESTION
I am developing a Unity game that relies on MIDI input from a piano keyboard, using the DryWetMIDI library. I have to detect when a chord has been played and process the chord as a whole.
Currently, my approach is to wait for 0.1 seconds after the first note press, and put all notes pressed during this period into a list. Then I process this list. However, when I attempt this with Coroutine, the code inside WaitThenNotify() never executes.
Here is the code.
...ANSWER
Answered 2020-Jul-06 at 11:56I'm the author of DryWetMIDI. I suppose your problem is related to multi-threading. OnEventReceived
will be called from internal WinMM thread. But as far as I know in Unity you should start coroutines on main Unity thread. So you need to call StartCoroutine
from Unity main thread.
Please read this section of the library docs: https://melanchall.github.io/drywetmidi/articles/playback/Common-problems.html#setactive-can-only-be-called-from-the-main-thread-in-unity.
Related question: https://answers.unity.com/questions/1670686/startcoroutine-can-only-be-called-from-the-main-th.html
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install drywetmidi
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page