LMMS hangs when starting for the first time and Alsa midi is unavailable
- Dominant language
- C++
- Stars
- 10.4k
- Forks
- 1.3k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 7
Description
Hi LMMS devs!
First of all thanks for the work you're doing on this great tool!
I'm a new user, just started yesterday, and I ran into some snags. I'll probably be creating a couple more issues which might help with making things work as smoothly as possible for new LMMS users.
Anyway, the issue I'm having is that LMMS hangs on the splash screen when starting it for the first time and the Alsa midi device is already in use. This happened to me because I already had Jack running, which I've configured to take the raw Alsa midi devices.
The only way for me to be able to start LMMS was to stop the Jack server, disable the midi-driver and then start LMMS.
The only output I get in the console is:
```
$ lmms
VST sync support disabled in your configuration
```
After some fiddling I think the following is the case:
- Jack is configured so that it takes control of Alsa midi devices (doesn't matter if it's set to raw midi or Alsa seq midi)
- LMMS defaults to Alsa raw midi
- When starting LMMS there's no check/failsave if the Alsa raw midi device isn't available and LMMS hangs indefinitely waiting for it to get access to it
Is this enough info to work with?
Is there any way to get more info/output out of LMMS on the console?
Also, when I initially didn't know this was caused by the Alsa midi device being in use I tried to get LMMS going with a default config ([this one](https://github.com/KXStudio/KXStudio/blob/master/config/lmmsrc.xml) from KXStudio) and that allowed me to start LMMS. But when accessing the setting LMMS would segfault. I'd expect that to be related to LMMS trying to access the Alsa midi device as well, but I've not figured out a way to verify that.
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce first startup with Jack controlling the ALSA MIDI device and LMMS configured for ALSA raw MIDI; the payload names no source files or tests. Trace the startup MIDI-device initialization, then verify that an unavailable device no longer hangs indefinitely and that the application starts or reports the failure clearly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- audio-video-rtc, desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100