diff options
author | Timmy Keller <tjk@tjkeller.xyz> | 2024-10-07 21:29:25 -0500 |
---|---|---|
committer | Timmy Keller <tjk@tjkeller.xyz> | 2024-10-07 21:29:25 -0500 |
commit | 1874c39d1260c9b83134b40c13b287300ee9b0c5 (patch) | |
tree | bc0e88798f64462716f9191f2a49caf0b5692e6e /pavolctld.1 | |
parent | 23d702cdbf81d4ced47e28b7d8a33bc83083e1e3 (diff) | |
download | pavolctld-1874c39d1260c9b83134b40c13b287300ee9b0c5.tar.xz pavolctld-1874c39d1260c9b83134b40c13b287300ee9b0c5.zip |
add manpage and mit license
Diffstat (limited to 'pavolctld.1')
-rw-r--r-- | pavolctld.1 | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/pavolctld.1 b/pavolctld.1 new file mode 100644 index 0000000..0eb8abc --- /dev/null +++ b/pavolctld.1 @@ -0,0 +1,64 @@ +.TH PAVOLCTLD 1 pavolctld\-1.0 +.SH NAME +pavolctld - A minimal PulseAudio volume control/monitoring daemon +.SH DESCRIPTION +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. This allows for realtime monitoring of output +sinks/volume levels, low-latency volume control, and 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. +.P +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. +.SH STATE CHANGE EVENTS +When pavolctld is ran, it will immediately log the state of all sinks to +stdout. 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. +.P +Here are the possible events and their parameters: +.TP +.B v[Sink Index],[Volume Percentage],[Volume dBs],[Muted] +Volume level/mute change +.TP +.B f[Sink Index] +Default sink changed +.TP +.B s[Sink Index],[Sink Name],[Sink Description] +New sink added +.TP +.B x[Sink Index] +Sink removed +.SH 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. +.P +Here are the list of commands and their parameters: +.TP +.B 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. +.TP +.B 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. +.TP +.B 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. +.TP +.B 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. +.SH COPYRIGHT +Copyright 2024 Tim Keller. +MIT License. +.P +.P +<https://TJKeller.xyz> |