Skip to content

Add xsynth-interface module#113

Draft
Kaydax wants to merge 2 commits into
masterfrom
midi-interface
Draft

Add xsynth-interface module#113
Kaydax wants to merge 2 commits into
masterfrom
midi-interface

Conversation

@Kaydax

@Kaydax Kaydax commented Mar 13, 2025

Copy link
Copy Markdown
Member

This is a basic commit that adds in the xsynth-interface module. This module uses midir to create a virtual midi device host that lets applications to use XSynth as a midi out device

TODO:

  • Try to find a way to improve the MIDI input buffer to reduce lag when using ALSA
  • Get it working on windows

There are some other minor changes in this as well:

  • Change the config location for kdmapi to be xsynth/settings.json instead of xsynth-kdmapi/settings.json, this allows for the settings to be used between both kdmapi and the new interface module
  • Update and fix the main readme file, as it had an incorrect link to the kdmapi folder, as well as changing the redundant folder URLs to just use relative paths instead

@mbms0

mbms0 commented Mar 15, 2025

Copy link
Copy Markdown
Member

Maybe we can integrate this into xsynth-render (and rename it) and choose the operation mode on runtime, something like FluidSynth. So like when you run it without arguments it acts like a MIDI device unless you specify a MIDI file to be rendered or something. Just an idea though I am not sure if and how this would work rn.

Also since the code for the parsers is the same it would be a good idea to have it in one place (in core for example, since it will be universal to XSynth modules) and then import it in both this module and kdmapi.

@Kaydax Kaydax marked this pull request as draft March 17, 2025 00:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants