-
-
Notifications
You must be signed in to change notification settings - Fork 752
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Resolves #3092 Add source support to wireplumber module #3638
base: master
Are you sure you want to change the base?
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.
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 |
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: