LMMS / LMMS/lmms

Support audio processing with more than 2 channels

Open
#5,108 7 comments 2 reactions 0 assignees View on GitHub
core enhancement
Dominant language
C++
Stars
10.4k
Forks
1.3k
Avg merge
2d 13h
Merged PRs (30d)
7

Description

Some plugins require more than 2 channels for its audio input/output. Here are some common use-cases:
- Stereo sidechain compressor: requires 2 stereo inputs
- Drum kits: some drum kit VSTs can use multiple outputs for multiple samples, for examples, stereo out 1 for kick, stereo out 2 for snare

However, there are some difficulties which come from the internal structure of the LMMS core:
- LMMS uses interleaved stereo formats while external plugins like VST, LADSPA, Zyn, and LV2 expect non-interleaved format.
For audio outputs and file outputs, the interleaved form might be beneficial. However, I think it's not for internal processing.

Features that can be implemented:
- Multi-channel matrix effect, as an extension of the current stereo matrix plugin
- Better support for sidechain compressor or vocoder plugin, see #3817 and #4337
- Native drum sampler(#4075) with per-sample effect mixing

Contributor guide

No contributing guide indexed for this repository

Research direction

No files, tests, or specific entry points are named. Start by mapping LMMS core audio processing and the plugin interfaces mentioned, then review issues #3817, #4337, and #4075; done would require a decided multi-channel design and working support for the selected use cases.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
audio-video-rtc
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.