rtpmidid is a Linux daemon that connects ALSA sequencers with network rtpmidi devices. It allows both share devices as well as access shared devices via normal ALSA sequencer connections.
The latest release of rtpmidid, version 23.12, introduces significant improvements with a focus on the MIDI router, providing enhanced functionality and a more streamlined architecture. This release, named "Midirouter Edition," is the result of months of development aimed at simplifying the server, fixing bugs in the librtpmidi library, and paving the way for future expansions.
The main goal for this release was simplification of the source code to allow easy future expansion.
Available for download at https://github.com/davidmoreno/rtpmidid ... tag/v23.12
More info at https://www.coralbits.com/rtpmidid-23-1 ... r-edition/
What's New?
1. Midirouter
The core change involves centralizing all MIDI routing into a single object: the MIDI router. This facilitates communication between MIDI peers, such as rtpmidi clients, servers, ALSA connections, and listeners, paving the way for easy integration of new functionalities in future releases.
2. INI Configuration File
Introducing an INI configuration file for streamlined configuration management. This file allows users to specify default behaviors, initial connections, and other settings, promoting a more organized and user-friendly configuration experience.
3. Memory Optimization
Significant improvements in memory management, eliminating malloc/free in the hot path. The code has been optimized to reduce memory usage, providing a smoother experience during common MIDI operations.
4. Enhanced Statistics and Command Management
The command line interface via Unix sockets has been enhanced, providing improved statistics and easier expansion. Users can now gain insights into connection details, packet counts, latency (including averages and standard errors), and tweak internal connections.
5. Top-like Command Line Management
A new TUI (Text-based User Interface) offers real-time data and interactivity for streamlined command-line management. This feature serves as a proof of concept for a more user-friendly GUI management system in future releases.
6. Ninja Compilation
For developers, the release includes optional but enabled features such as ninja compilation and precompiled headers to speed up the compilation process.
Final words
Please give it a go, and if you find any bug, have any feature request or just any comment don't hesitate to contact add a new issue at github: https://github.com/davidmoreno/rtpmidid/issues