How can I trigger sounds/animations through MIDI note mapping?

Godot Version v4.7.stable.official [5b4e0cb0f]

So, this will be a bit specific… I’ve heard you folk are nice, so I hope you’ll all bear with me a little :slight_smile:

If you have an understanding of the inner workings of My Singing Monsters, you’ll know that they use MIDI files to trigger sounds and animations, as well as keeping track of BPM or time signatures.

Every song has a MIDI file, and each monster in that song gets a unique channel, with notes mapped to each of their tracks. I want to achieve something similar in Godot, so that I can create a fan game.

MIDI files only contain note data. If you can read a MIDI file, you can play animations based on the notes. Godot doesn’t read MIDI by itself, do you have a plugin to read MIDI files or did you write your own?

I’m familiar with how MIDI works, I suppose I was more so looking for guidance as to what tools to use for the job. I’ve been looking at plugins, but have only found 2. One doesn’t seem to parse the notes properly, and the other doesn’t seem to support my specific use case.