Skip to content

Conversation

@lupenox
Copy link

@lupenox lupenox commented Oct 4, 2025

This PR introduces a new AudioRecorder tool plugin for LMMS.

Captures audio from the system microphone (via ALSA on Linux).
Streams data into a background worker thread.
Saves recordings to .wav format using libsndfile.
Simple UI with Record / Stop buttons.

Currently, this is an experimental implementation:

Works on Linux with ALSA.
Recording starts and stops successfully, and .wav files are saved.
UI is functional but minimal (needs polish).
Output path handling can be improved (currently defaults to $HOME/Music/LMMS Recordings).

LMMS_STRINGIFY(PLUGIN_NAME),
"Audio Recorder",
QT_TRANSLATE_NOOP("PluginBrowser", "Record audio from a microphone to WAV"),
"Your Name <[email protected]>",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"Your Name <[email protected]>",
"Your Name <[email protected]>",

Missing

@szeli1
Copy link
Contributor

szeli1 commented Oct 10, 2025

Hello, #7786 exists. As far as I can tell, this tool isn't really integrated with lmms.
Here are the problems I see:

  1. ALSA, lmms already has classes that interface with alsa and many other audio APIs
  2. It doesn't use the lmms libsndfile code
  3. It doesn't save to a sample track or to any location in the application.
  4. .waw with 1 channel, you could use a better audio format

I'm not the one who will decide what will happen to this PR, but for the reasons I mentioned above, It is unlikely it will be merged before #7786. Unfortunately #7786 also competes with this PR.

@lupenox
Copy link
Author

lupenox commented Nov 16, 2025

Hello, #7786 exists. As far as I can tell, this tool isn't really integrated with lmms. Here are the problems I see:

  1. ALSA, lmms already has classes that interface with alsa and many other audio APIs
  2. It doesn't use the lmms libsndfile code
  3. It doesn't save to a sample track or to any location in the application.
  4. .waw with 1 channel, you could use a better audio format

I'm not the one who will decide what will happen to this PR, but for the reasons I mentioned above, It is unlikely it will be merged before #7786. Unfortunately #7786 also competes with this PR.

Hi, thanks a lot for taking the time to review this and for laying out the architectural issues so clearly. I really appreciate the detailed explanation.

This plugin started as a small experimental prototype to explore live audio capture inside LMMS, so I completely understand that it doesn’t follow the LMMS audio architecture yet. Your points about using the existing LMMS audio interfaces, libsndfile, and proper sample/track integration all make sense.

I’ll take a closer look at #7786 and the LMMS audio APIs to get a better understanding of the correct approach. I’m not sure yet how much time I’ll have to fully rewrite it, but this feedback gives me a much clearer direction if I decide to iterate on it.

Thanks again, the review was genuinely helpful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants