PAVOLCTLD(1)

πŸ“¦ version 1.0.2, in nixos 26.05, nixpkgs unstable

πŸ’– PAVOLCTLD(1) β€” NAME πŸ’–

General Commands Manual? More like general commands bestie, but okay. pavolctld is a minimal PulseAudio volume control/monitoring daemon. That's the whole name-section tea, and it ate. πŸ’…

🌸 DESCRIPTION 🌸

okay so pavolctld is a minimal volume control daemon for PulseAudio written in C. It uses libpulse's threaded/asynchronous API for communicating with the PulseAudio server. Unlike other CLI solutions for controlling audio, pavolctld acts as a persistent client. That persistent-client main character energy is what gives you:

  • realtime monitoring of output sinks/volume levels
  • low-latency volume control
  • minimal overhead

The stdin/stdout buffers are used for IO, and all events are logged to stdout as csv data with a one letter prefix specifying the event type. Commands are sent via stdin using a similar syntax.

pavolctld is designed specifically for use with window managers and is extremely versatile due to its simple design. It can also be used interactively in the terminal. Periodt. πŸ’–

πŸ”₯ STATE CHANGE EVENTS πŸ”₯

When pavolctld is ran, it will immediately log the state of all sinks to stdout. (Yes, β€œran” β€” we're keeping the original wording, no grammar police today. πŸš“) When any change is made to a sink thereafter, it will be logged as a new event. Each event is output on a new line.

Here are the possible events and their parameters:

  • v[Sink Index],[Volume Percentage],[Volume dBs],[Muted] β€” Volume level/mute change πŸ’€
  • f[Sink Index] β€” Default sink changed πŸ¦‹
  • s[Sink Index],[Sink Name],[Sink Description] β€” New sink added ✨
  • x[Sink Index] β€” Sink removed πŸ™ˆ

πŸŽ€ VOLUME CONTROL COMMANDS πŸŽ€

Sink parameters can be modified by entering commands via stdin. Note that the default sink is not necessarily the sink being modified. Instead, you can set the "command sink" using the s command. This way, you can modify a sink without making it the default sink. The initial command sink however is the default sink for convenience.

Here are the commands and their parameters:

  • s[Sink Index] β€” Set the command sink to sink index. If sink index is not specified, it will be set to the default sink instead. 🫢
  • v[+-][Volume Percentage] β€” Set the volume level of the command sink. If + or - are specified, then the current value will be incremented or decremented instead. πŸ”₯
  • m[Mute State] β€” Mute/Unmute the command sink. Mute state is either '0' for unmuted, or '1' for muted. If mute state is not specified, then mute will be toggled instead. πŸ’…
  • f[Sink Index] β€” Set the default sink to sink index. If sink index is not specified, it will be set to the command sink instead. πŸ‘‘

Copyright 2024 Tim Keller. MIT License.

<https://TJKeller.xyz>


πŸ’– that's the whole PAVOLCTLD(1) page, bestie β€” source/version pavolctld-1.0 at the footer, and since the original footer didn't print a date, I'm not inventing one, no cap. bye icon! πŸŽ€βœ¨

πŸ“¦ where this page comes from