Resolves #3092 Add source support to wireplumber module#3638
Merged
Alexays merged 2 commits intoAlexays:masterfrom Mar 28, 2025
Merged
Resolves #3092 Add source support to wireplumber module#3638Alexays merged 2 commits intoAlexays:masterfrom
Alexays merged 2 commits intoAlexays:masterfrom
Conversation
- Adds microphone support etc to the wireplumber module.
The existing module hardcodes the selected node type to "Audio/Sink". This feature allows the user to override this
via `"node-type": "Audio/Source"`.
- Unlike the pulseaudio module, this change does not try to see the module manage both input and output. The same effect
can be achieved by running two instances of the wireplumber module.
This approach:
- Works around some of the complexity overhead that seem to have caused similar PRs to stall.
- Using separate module instances also allows both the microphone and speaker levels to be controlled with a scroll
wheel. This is something a unified module like pulseaudio struggles with.
- Similarly, separate instances allows the source volume level to be exposed as the state. Ie- the linear-gradient
css patterns can be applied to both input and output.
- The module only fetches nodes for "node-type". This causes the 'onMixerChanged' log to spam whenever two or more wireplumber modules were registered on different nodes. To reduce this the unknown node warning will now only print if the node is not the focus of any current module.
Contributor
Author
|
Is there any reason why this hasn't been merge? I would like this feature :) If there is anything I can do to help, I don't mind contributing to get this merged. |
|
I've tested this patch it works great! Thanks for your work @RowanLeeder! I've also added a section here on how to install this as flake input for NixOS systems so you don't have to wait until this is merged: https://github.com/Alexays/Waybar/wiki/Installation |
|
@Alexays is there anything I can do to help this get merged into main? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

This change adds support for source (microphone etc) nodes to the WirePlumber module.
This is done via a new
"node-type": "Audio/Source"param (defaults to"Audio/Sink").The intent here is to use two instances of the module to control the speakers and microphone separately: