Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Use JACK/PipeWire for MIDI input #452

Closed
denilsonsa opened this issue Sep 8, 2023 · 2 comments
Closed

[Feature Request] Use JACK/PipeWire for MIDI input #452

denilsonsa opened this issue Sep 8, 2023 · 2 comments

Comments

@denilsonsa
Copy link

denilsonsa commented Sep 8, 2023

Under Linux, Odin2 seems to use some low-level layer to directly read input from MIDI devices. While this works fine, it's not as convenient as using JACK or PipeWire.

Screenshot of the Audio/MIDI Settings

If using JACK (or PipeWire, but PipeWire server has JACK support anyway), then the application will be available to be connected and routed freely using a tool like qpwgraph. For comparison, look at how amsynth behaves:

Using native JACK/PipeWire MIDI:

Screenshot of qpwgraph

Using ALSA MIDI, which somehow can still be re-routed using PipeWire:

Screenshot of qpwgraph

Observe how odin2 doesn't provide any MIDI input and thus can't be re-routed using PipeWire (or JACK) tools.

For completeness, both Dexed and OB-Xd and OPL Synthesizer ad Surge also suffer from the same issue.

@TheWaveWarden
Copy link
Owner

Hi @denilsonsa

Thanks for your request. Odin 2 uses the MIDI abstraction provided by the JUCE framework. As it has to run in a variety of different plugin formats and on three OSs, changing from this behaviour would mean a special solution for your case.

I see the other synths you posted use JUCE as well, so this feature request might be better suited for the JUCE framework itself to support the Pipewire / JACK midi features? 🙂

That being said the JUCE module in Odin 2 hasn't been updated in quite a while. Doing so could give a solution to your problem, assuming JUCE has grown to support your case in the meantime.

In any case, I'm stopped active development of Odin 2 apart in favour of another synth project for now, sorry 🙂

@denilsonsa
Copy link
Author

@TheWaveWarden Thanks for your quick response!

Oh, so JUCE handles that part? That explains why so many tools look similar! :)

I'm not a musician, I'm just enjoying exploring all these audio tools. Maybe someday I'll take music classes, but for now it's just a hobby. Don't worry, no need to make an special case for me. It's just way more convenient to do all the audio routing in one place, instead of trying to figure out which app is consuming the MIDI events.

I'm closing this issue here, and maybe poke people from the JUCE community.

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

No branches or pull requests

2 participants