LMMS is a digital audio workstation (DAW). In order to control how audio is being played (e.g. to send notes to LMMS), the MIDI protocol can be used. This enables you to connect a virtual or real keyboard to LMMS and play music.
There are different libraries that allow LMMS to use MIDI. LMMS uses these libraries to start "MIDI clients". Of those, LMMS currently supports ALSA, OSS and sndio.
You can also select a dummy client if you don't need MIDI. A dummy client is also created if a desired MIDI client could not be started.
Couldn't create MIDI-client, neither with ALSA nor with OSS. Will use dummy-MIDI-client.
This is wrong/misleading:
There is also sndio MIDI, not only ALSA and OSS.
LMMS did not try to create a MIDI client.
Steps to reproduce
Enable dummy MIDI client in the settings (MainWindow Menu Bar -> Edit -> Settings -> MIDI). Close LMMS. Start LMMS. You'll see the warning in the command line.
Expected behavior
No output at all in case dummy client was explicitly selected. Warning if a "real" MIDI client was selected, but could not be created.
No mentioning of ALSA or OSS.
Actual behavior
Output in all cases, mentioning only ALSA and OSS (but not sndio).
Affected LMMS versions
All.
Solution hints
Look at src/core/Mixer.cpp.
The same problem is fixed correctly in Mixer::tryAudioDevices.
Submit a pull request (PR) against master. (we may change the base, but don't worry about that for now)
Did not know that referencing an issue in the commit message and pushing to the fork on my own repository would result in these commits appearing here! Sorry for that.
Bug Summary
LMMS is a digital audio workstation (DAW). In order to control how audio is being played (e.g. to send notes to LMMS), the MIDI protocol can be used. This enables you to connect a virtual or real keyboard to LMMS and play music.
There are different libraries that allow LMMS to use MIDI. LMMS uses these libraries to start "MIDI clients". Of those, LMMS currently supports ALSA, OSS and sndio.
You can also select a dummy client if you don't need MIDI. A dummy client is also created if a desired MIDI client could not be started.
Now, starting LMMS with dummy MIDI client (explicitly selected) warns you:
This is wrong/misleading:
Steps to reproduce
Enable dummy MIDI client in the settings (MainWindow Menu Bar -> Edit -> Settings -> MIDI). Close LMMS. Start LMMS. You'll see the warning in the command line.
Expected behavior
No output at all in case dummy client was explicitly selected. Warning if a "real" MIDI client was selected, but could not be created.
No mentioning of ALSA or OSS.
Actual behavior
Output in all cases, mentioning only ALSA and OSS (but not sndio).
Affected LMMS versions
All.
Solution hints
src/core/Mixer.cpp
.Mixer::tryAudioDevices
.master
. (we may change the base, but don't worry about that for now)