Midi Engine Core: Documentation

Let’s start off by covering the main classes you’ll be working with after importing MIDI Files in Unreal Engine 5.

The UMidiAsset

UMidiAsset is the simple data structure that will give you simplified access to MIDI data.
UMidiAssets contain UMidiTracks and UMidiTracks contain the UMidiNotes.

The UMidiTrack

The UMidiTracks represent your Instrument like Kick, Snare, Piano… And each UMidiTrack contains all the MidiNotes that belong or play within it.

The UMidiNote

Get MIDI Events in Unreal engine

The UMidiNote contains the following data you may be interested in:

  • StartTime (when the note starts playing, NoteON Event)
  • StopTime¬† (when the note stops playing, NoteOFF Event)
  • Velocity¬†
  • Note Id (Like C5, G#5 …)
  • Duration (How long the MidiNote plays)
  • MidiTrack (The instrument this MidiNote is representing. Like Kick/Snare)