Rtmidi

Jul 20, 2023

Set of C++ classes that provide a common API for realtime MIDI I/O

RtMidi is a set of C++ classes RtMidiIn, RtMidiOut, and API specific classes that provide a common API Application Programming Interface for realtime MIDI input/output across Linux ALSA, JACK, Macintosh OS X CoreMIDI, JACK, and Windows Multimedia Library operating systems. RtMidi significantly simplifies the process of interacting with computer MIDI hardware and software. It was designed with the following goals

  • object oriented C++ design
  • simple, common API across all supported platforms
  • only one header and one source file for easy inclusion in programming projects
  • MIDI device enumeration


Checkout these related ports:
  • Zynaddsubfx - Realtime software synthesizer
  • Zrythm - Modern music production system, also known as DAW
  • Zplugins-lv2 - Collection of LV2 plugins to be bundled with Zrythm
  • Zmusic - GZDoom's music system as a standalone library
  • Zita-rev1 - Reworked version of the reverb originally developed for Aeolus
  • Zita-resampler - C++ library for resampling audio signals
  • Zita-njbridge - Command line client to transmit audio over a local IP network
  • Zita-mu1 - Simple Jack app used to organise stereo monitoring
  • Zita-jclient - Library to create a Jack client with a few lines of C++
  • Zita-dpl1 - Look-ahead digital peak level limiter
  • Zita-convolver - Fast, partitioned convolution engine library
  • Zita-bls1 - Blumlein Shuffler converter of binaural signals to stereo speaker pair
  • Zita-at1 - Autotuner Jack application
  • Zita-alsa-pcmi - Easy access to ALSA PCM devices
  • Zinf - GTK-based MP3 player