Feedback loop protection - could it be optional?
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.4k
- Forks
- 1.3k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 7
Description
Hey, I really like the new shiny mixer that allows me to do submixes and compress the drum group together while having the great control over individual elements, or the possibility to use send effects for easy, quick and efficient mixing. It's totally awesome!! Plus it's made to protect clumsy users from blowing their eardrums with a feedback loop.
However...
The LMMS-savvy guys might want to be able to create a feedback loop.
This way we could construct some totally freaking-out sound effects. It's starting to look like a modular synthesis environment, just the elements are in racks, not on a desk, but _all the wires_ are there!
I'd like to be able to disable the feedback loop protection just for me, because I want to have fun, yes I understand the risk (trust me, I'm an engineer!).
I propose adding a "[x] FX-mixer feedback loop protection" checkbox in the options window in the "Misc" panel. On by default.
Possible issues are projects that contain mixer feedback loops, that are being loaded by users who have the protection on. I propose pausing the loading and displaying a **dialog window** in such case:
Title: Warning!
Message: This project contains one or multiple FX-mixer infinite loops. By default LMMS wouldn't let this to be done. Feedback loops might create extremely loud sounds and are prone to get out of control. You can proceed on your own risk - the protection will be disabled only for this session, unless you want to turn it off permanently:
Checkbox: [ ] Disable FX-mixer feedback loop protection (see also: Edit > Settings > General > Misc > FX-mixer feedback loop protection)
Buttons:
[ Proceed ] [ Cancel ]
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the FX-mixer feedback loop protection and the options window's Misc panel described in the issue, then trace how projects containing mixer loops are loaded. Define the settings and warning-dialog behavior before implementation. Done means optional protection is off only as requested, defaults on, and unsafe project loading offers the stated Proceed and Cancel choices.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100