LMMS / LMMS/lmms

Strange behavior of Mute and Solo buttons when connected to MIDI CC

Open
#5,578 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
C++
Stars
10.4k
Forks
1.3k
Avg merge
2d 13h
Merged PRs (30d)
7

Description

The Mute and Solo buttons of the tracks behave very sick if controlled via MIDI input.

Steps to reproduce:
- Connect any of the Mute or Solo buttons to a MIDI toggle button.
- Toggle the value between 0 and 127.

Expected behavior:
The buttons should function normally without any glitches.

Actual behavior:
See the video below:
[solomutemidi.mkv.zip](https://github.com/LMMS/lmms/files/4908795/solomutemidi.mkv.zip)
The funny thing is that the sound itself behaves almost like it should be, just inverted. So 0 is unmuted or solo, 127 is muted or non-solo. This seems to be just a GUI problem.

They seem to handle 0 and 1 values correctly, but most of the controllers send 127 for ON, and most of the software threats 0-63 as OFF and 64-127 as ON. I think LMMS should do this too.

Edit:
I also found a little problem with LCD numbers:
[lcdmidi.zip](https://github.com/LMMS/lmms/files/4913456/lcdmidi.zip)
As you can see, the displayed number changes one step later than the actual value, which is shown by midisnoop. This can be the reason why the toggle buttons get inverted.

Tested: 1.2.2 AppImage

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file or test is named. Reproduce with a MIDI toggle sending 0 and 127, comparing the Mute/Solo display, sound behavior, and LCD number timing; then trace the MIDI-control and GUI update paths. Done means the buttons and displayed values respond consistently across the reported MIDI range.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.