Lv2 plugins with no outputs should be loadable
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.4k
- Forks
- 1.3k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 7
Description
### Enhancement Summary
Currently, a few of plugins will not load in LMMS, saying `- no audio output channel` (if you have `LMMS_LV2_DEBUG` set).
This is a missed opportunity, because those plugins could be used well.
### Implementation Details / Mockup
As favored in discord, since LMMS requires to fill output buffers for all plugins, the solution is to let LMMS fill the output buffer with something sane in `Lv2Proc::copyBuffersToCore`, even if the plugin does not provide output via an output port. It has been agreed that in that case, the output buffer just shall mirror the values of the input buffer ("pass through").
An implementation must be careful so that for these plugins, the `Lv2Proc::outPorts()` function will never be called.
### Please search the issue tracker for existing feature requests before submitting your own.
- [X] I have searched all existing issues and confirmed that this is not a duplicate.
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 by locating the LV2 processing implementation containing Lv2Proc::copyBuffersToCore and Lv2Proc::outPorts(). Trace how plugins without audio output channels are currently rejected, then verify the no-output path without calling outPorts(). Done means such LV2 plugins load and their output buffer mirrors the input buffer.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- audio-video-rtc
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100