Augmenting MIDI Hardware with Perl: Building Custom MIDI Filters

2025-02-01
Augmenting MIDI Hardware with Perl: Building Custom MIDI Filters

This article details building a custom MIDI filter using Perl and the RtMidi library to enhance the capabilities of an M-Audio Oxygen Pro 61 MIDI keyboard. Two key features are implemented: a software-generated pedal tone and fifth interval, transforming single-note plays into chords; and a bank-switcher using the controller's pads to select MIDI channels, acting like 'tracks'. Asynchronous event handling ensures minimal latency, and the filter is extensible to add features such as 'pickup' functionality and rhythmic strumming effects.