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

Linux version can't send large sysex (e.g. Take 5 patches) #318

Open
christofmuc opened this issue Apr 1, 2024 · 1 comment
Open

Linux version can't send large sysex (e.g. Take 5 patches) #318

christofmuc opened this issue Apr 1, 2024 · 1 comment
Labels
bug Something isn't working wontfix This will not be worked on

Comments

@christofmuc
Copy link
Owner

          Very strange. It seems that both programs want to send the same bytes, and actually do so by handing it over to the JUCE libraries sendMessage function. 

Let's assume Linux MID uses ALSA.

Looking the source from the sendMessageNow() in juce_Midi_linux.cpp, it seems there is no upper limit of message size - but the message would be broken apart into multiple blocks in case ALSA wants to. But the blocks are immediately relayed to the "Sequencer", which for ALSA seems to also be the output device.

Googling, this seems to be a frequent issue with Linux MIDI and ALSA, e.g.

* https://github.com/thestk/rtmidi/issues/214
* https://github.com/davidmoreno/rtpmidid/issues/93
* https://github.com/asb2m10/dexed/issues/157
* https://forum.electra.one/t/command-line-preset-file-upload-tool/592/16

Sadly, the JUCE library even swallows error messages from the Linux send code instead of logging or reporting it.

it seems for Linux, we'd need to drop JUCE. We're on JUCE 7.0.6, and I did not see anything in the release log https://github.com/juce-framework/JUCE/releases that indicates they are willing to touch the Linux MIDI code. I'll open a new issue for the large sysex on Linux topic because this is probably not Take 5 specific. Thanks for reporting!

Originally posted by @christofmuc in #122 (comment)

@christofmuc christofmuc added the bug Something isn't working label Apr 1, 2024
@christofmuc
Copy link
Owner Author

The amidi tool was reported to work (in the original thread), but that uses ALSA raw midi ports, while JUCE MIDI is using the Sequencer API...

@christofmuc christofmuc added the wontfix This will not be worked on label Apr 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

1 participant