Broadcast MIDI Events!
This plugin is an extension for MIDI Engine: Core that adds functionality to “playback” a MIDI file / UMidiAsset sequentially and broadcasts Midi Events like NoteON as Unreal Engine 5 Delegates / Events /Event Dispatchers. This gives the programmer an opportunity to react or respond to each MIDI Event as it happens in realtime which will sync with the music.
Pro Tip: Use the Custom Playheads Array to get notified ahead of time before a MIDI Note plays.
This plugin is bundled into MIDI Engine : Complete Bundle. Download it below.
Use Cases of MIDI Broadcasters
Example use cases include but are not limited to:
- Rythm-based UE5 Projects like Synthesia, Guitar Hero… etc
- Sync Game Objects /Actors to Music just like Animusic. Audio Reactive objects in UE5.
- Playback music as MIDI to reduce Audio File Size costs *limited functionality*
Key Features Of The Framework
MIDI Broadcasters Component
The plugin comes with a Quartz-based MIDI Broadcaster Actor Component that can be added to any Actor which will give it MIDI Event Broadcasting Capability. The Programmer just needs to call the “StartBroadcast()” function only.
MIDI Listener Component
The MIDI Listener Component is also part of the framework and gives an Actor the ability to listen to any MIDI Events that are broadcast by any MIDI Broadcasters. By Listening for MidiEvents, like NoteOn, the Actor can react to these MidiEvents as they occur.
MIDI Broadcasters Subsystem
The framework also comes with the MIDI Broadcasters Subsystem.
If for some reason you can not use the MIDI Listener Component, You can listen for MIDI Events through this subsystem by binding to the MIDI Note On Event both in CPP and BP.