LMMS Progress Report: February 2026
LMMS Progress Report: February 2026
Welcome back to our monthly series of LMMS Progress Reports!
If you missed last month's report, you can find it here.
Nightly News
February was a highly productive month with 17 PRs merged.
Detachable windows (#3532)
Multi-monitor users rejoice! After nearly 9 years (yes, nine), the highly requested detachable windows feature has finally been merged. The PR was originally authored by lukas-w, but development stalled not long after it began. Then over the years, other developers took over the PR to work on it for a while, but it wasn't until sqrvrt came on the scene that it was refactored and further developed to the point where it was ready to merge. There are still some known bugs, but they are minor, cosmetic issues that we plan to fix in future PRs.To detach a window, simply click the new "detach" button located next to the maximize and close buttons in a window's frame. Then to reattach the detached window, just click the close button. The behavior of detached windows can be customized in the Settings, with the available options being: "Attach and show when closed", "Attach and hide when closed", and "Always detached".
PortAudio backend fixes (#7444)
sakertooth refactored and fixed the PortAudio backend used on Windows. Its MME option now works on both the MinGW and MSVC builds rather than producing choppy audio or none at all, and the DirectSound option now works on MSVC. You can find the full test results here.Frequency Shifter effect (not a pitch shifter) (#8140)
LostRobotMusic's nifty new frequency shifter is here! While technically merged on March 1, not in February, we don't want to wait an entire month to talk about it. The Frequency Shifter is packed with features beyond just the basic frequency shifting functionality, including an LFO, delay, and more. Check out the demo video here. And for more information, there's also a manual you can open inside the plugin by clicking the "?" icon.
Other changes:
- Add Info TextFloat for Piano Roll Knife Tool (and make cut notes auto selected) (#7953)
- Increase Clip Resize Grip Width (#8169)
- CMake: Check for PERL's List::MoreUtils (#8180)
- Fix Hardcoded Max dB Value When Double-Clicking Knobs (#8189)
- Fix Pattern Editor UI updates when adjusting note volume via scrolling (#8196)
- Fix velocity/panning change affecting unselected notes (#8201)
- Fix AutomatableSlider Creating Too Many Journal Entries (#8223)
- Clarify VST support to VST2 and mention LV2 support in README (#8233)
- Fix clips not retaining colors or names after using "Clear notes out of bounds" (#8234)
- Improve performance when moving channels in the Mixer (#8235)
- Fix Right-click Remove Node Precision with Pitch Bending (#8242)
- Fix Pitch Bending, Strum, and Knife Tools Affecting Per-Note Velocity/Panning (#8243)
- Fix PianoRoll Timeline Constantly Emitting positionJumped During Record-Play (#8252)
- Emit the
playbackPositionJumpedsignal only when the active timeline jumps (#8256) - Fix empty value returned by
FileRevealer::getSelectCommand()(#8281)
In progress
In February, 23 new PRs were opened, of which 5 have already been merged. The following is a list of both new and old PRs which were worked on in the past month.
Nearing completion
Add Oscilloscope Effect (#7937)
regulus79 addressed some review comments. We're now waiting for another approval or two before it's merged.Auto-quit rework (#8070)
messmerd added more unit tests, renamed some types, and addressed code reviews.Fix VST parameter automation performance (#8253)
This new PR by messmerd fixes a longstanding issue where CPU usage spikes when automating or adjusting VST parameters.
In the works
Add feature to export tracks (#7119)
sakertooth added the ability to bounce a track to a new sample track.Add support for multiple tracks/channels to
MidiExport(#8048)
messmerd cleaned up the PR to abide by style guidelines, made some performance improvements, added support for Gig Player's MIDI bank/program, and fixed a bug discovered by a tester."Universal" workspace panning (#8203)
yohannd1 has continued to work on this PR. In the past month, the remaining bugs were fixed, a bunch of code was refactored, and it was marked ready for review.Add ability to loop MIDI clips (#8254)
In this PR by Itreza2, MIDI clips can be "looped", which are essentially copies of clips that are all linked together. Any changes made to one of the "looped" clips is reflected in all the others. This functionality is similar to that of patterns, but for ordinary MIDI clips.Effect presets (#8273)
bratpeki added the ability to save and load effect presets. It also allows adding new effects by dragging and dropping a preset.
Other PRs
These PRs were also created or worked on during February.
- Don't fill notes that overlap slightly (#7569)
- Save Scale/Key Highlighting, and Many More Editor Options (#7854)
- Removed the first recording button from SongEditor as it has no use (#7899)
- Fixed missing emails in the author section (#7975)
- Optimize cloning steps in Pattern Clips and add limits (#8042)
- Lb302 cleanup (#8132)
- Add search bar for the soundfont player (#8193)
- Fix subwindow size limits (MainWindow::restoreWidgetState) (#8204)
- Use vcpkg for MinGW dependencies (#8218)
- CMake: fix build for CYGWIN (#8247)
- Fix Carla and editor segfaults (#8261)
- Skip sample rate conversion in
Sampleif the resampling ratio is 1 (#8262) - Move ~/.lmmsrc.xml to canonical config location (#8264)
- Fixed key inputs not updating time display (#8266)
- Modified Sample and Automation Tracks so that new clips match the Snapping Size (#8267)
- Fixed Issue - Can't copy notes between tracks in B+B editor (#8268)
- Improved action system (#8272)
- Fix Sf2 Player's reverb and chorus effects (#8274)
- PianoRoll: Note detuning visuals (#8278)
- Add a lockfree SPSC queue (#8280)
- Prevent key modifiers in
MainWindowfrom getting stuck (#8282) - Update .mailmap and CONTRIBUTORS (#8283)
- Enabled the piano roll and automation editor buttons only when not empty (#8285)
Goals for March
We're continuing to work towards the goal of releasing a new alpha version. Two more tasks were added to the 1.3-alpha.2 milestone since last month, but they are both nearly complete. We will be focusing on those remaining issues this month, as well as any new bugs that come up.
New contributors
- extern-stat fixed an undo/redo bug affecting slider widgets in #8223.
- WeakOstra fixed a Pattern Editor UI bug in #8196.
Closing thoughts
Thanks for reading! We have a lot of work ahead of us, but if you'd like to contribute to LMMS's development, it could go faster. Whether you're a developer or a tester, it all helps!
If you have any questions or suggestions, please let us know below or on our Discord.
Have a great March!