Skip to content
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

Compatibility with pulseaudio-ctl #6

Open
somini opened this issue Mar 27, 2022 · 7 comments
Open

Compatibility with pulseaudio-ctl #6

somini opened this issue Mar 27, 2022 · 7 comments

Comments

@somini
Copy link
Contributor

somini commented Mar 27, 2022

https://github.com/graysky2/pulseaudio-ctl/

This is a similar program that exists for pulseaudio control. Since these tools live and die by the interface, I would request this interface to be implemented.

/usr/bin/pulseaudio-ctl mute        ==>  Toggle status of mute
/usr/bin/pulseaudio-ctl mute-input  ==>  Toggle status of mute for mic
/usr/bin/pulseaudio-ctl up          ==>  Increase vol by 5 %
/usr/bin/pulseaudio-ctl up 25       ==>  Increase vol by 25 %
/usr/bin/pulseaudio-ctl down        ==>  Decrease vol by 5 %
/usr/bin/pulseaudio-ctl down 50     ==>  Decrease vol by 50 %
/usr/bin/pulseaudio-ctl set 40      ==>  Set vol to 40%
/usr/bin/pulseaudio-ctl atmost 30   ==>  Set vol to 30% if current higher than that

From what I can tell, these are mostly aliases, there are only one crucial feature to implement:

  • mute -> mute toggle
  • mute-input: To Implement
  • up/up X -> change +X
  • down/down X -> change -X
  • set X -> change X (not sure this is supported`
  • atmost X: To Implement. Can be hacked around by reading the status, then writing the new value, it's lower priority.
@somini
Copy link
Contributor Author

somini commented Mar 27, 2022

There's also this issue to implement the opposite of this, pipewire support on pulseaudio-ctl:

graysky2/pulseaudio-ctl#68

@smasher164
Copy link
Owner

Thanks for filing this. I didn't think about maintaining compatibility with pulseaudio-ctl.

Input volume control is something that should definitely be added. The default input sink is something that can be retrieved via pw-dump, so it should be the same sort of logic.

Atmost is interesting. Is that something people actually use?

@somini
Copy link
Contributor Author

somini commented Apr 2, 2022

Atmost is interesting. Is that something people actually use?

I don't use it personally, but it might be very useful for automation. For example, limiting the audio level when connecting new devices, or when on calls?

@somini
Copy link
Contributor Author

somini commented Dec 17, 2022

FYI, looks like WirePlumber "solved" this issue by shipping a program that does basically the same thing:

https://wiki.archlinux.org/title/WirePlumber#Keyboard_volume_control

@smasher164
Copy link
Owner

Maybe I should redirect users to use wpctl instead?

@somini
Copy link
Contributor Author

somini commented Jan 25, 2023

Yeah, I think WirePlumber and PipeWire are almost sister projects, it's the default session manager.

@eternal-sorrow
Copy link

Not everyone uses wireplumber with pipewire, please don't abandon this project.

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

No branches or pull requests

3 participants