mididings is a MIDI router and processor for ALSA or JACK MIDI. It's implemented as a Python module, thereby offering a powerful and flexible means to set up patches, while the actual MIDI processing code is written in C++.
| Tags | Software Development Libraries Python Modules multimedia Sound/Audio MIDI |
|---|---|
| Licenses | GPL |
| Operating Systems | POSIX Linux |
| Implementation | C++ Python |
Recent releases


Changes: This release adds functions to limit the number of simultaneous notes, or to make a MIDI signal monophonic (with retriggering). It provides a new event-type agnostic inversion operator for filters, and Output() now supports sending volume changes (CC 7).


Changes: This version adds support for processing standard MIDI files directly. Patch numbers can now be greater than 128, and Output() supports sending bank select messages. Various bugs have been fixed.


Changes: Several problems with the JACK backend have been fixed. This release also features support for channel aftertouch, a few additional units, and a new operator (%) for filters. A new function has been added to mididings.extra that allows saving the selected patch number and restoring it the next time the script is run.


Changes: This release adds some convenience functions to run shell commands, and to send OSC or DBUS messages. The validity checking of function arguments has been improved to produce more helpful error messages.


Changes: This release fixes a bug that caused events to not be processed properly under certain circumstances.