Skip to content

rtpmidid 24.12

Latest
Compare
Choose a tag to compare
@davidmoreno davidmoreno released this 15 Dec 11:11
· 2 commits to master since this release

This is a year worth of effort to make rtpmidi more stable and useful.

As always, please report any issue and feature request to the issue tracker, and I will try my best to make it happen.

Featured Improvements

New features

  • Raw MIDI devices - Can configure them in the ini file, command line or cli util.
  • Optionally use std::format instead of fmt library, where available.
  • Improvements to the TUI.
  • Improvements to the INI configuration file: rawmidi devices, can set local UDP port for clients. Use regex for auto add to the autodiscover and announcement (positive and negative)
  • More tests.

Fixes

  • Improved SysEx support. #123 Thanks to sadgitarius.
  • Improed Avahi support.

Internal changes

  • Full rework of rtpmidi clients, encapsulating UDP use, name resolution and many more items.
  • Use a state machine for rtpmidi clients. Improves reliability and simplifies the code.
  • Added new rtpmidi packet class to ease testing. This is effectively a second mini implementation of the protocol, so it can be used to test correctness.
  • Internal signals, used for raw midi devices to do not open the device until really in use.

Known bugs

  • When setting a DNS name for connect_to, it may block everything for some seconds if can not resolve the remote endpoint.
  • Once it got into a loop of trying to connect to the remote server, but was properly connected, making the connection reset every 10 seconds. Could not reproduce.
  • Avahi / zeroconf / bonjour announcements sometimes are not properly detected.

Contributor changes

New Contributors

Full Changelog: v23.12...v24.12

Thanks to everybody who contributed with pull requests, bug reports and just using rtpmidid. You rock!