The sndioctl utility can display or manipulate controls of sndio(7) audio devices, like the output level.
The options are as follows:
-d Dump the raw list of available controls and exit. Useful as a debugging tool.
-fdevice
Use this sndio(7) audio device.
-i Display characteristics of requested controls instead of their values.
-m Monitor and display audio controls changes.
-n Suppress printing of the variable name.
-q Suppress all printing when setting a variable.
-v Enable verbose mode, a.k.a. multi-channel mode. By default controls affecting different channels
of the same stream are disguised as a single mono control to hide details that are not essential.
If no commands are specified, all valid controls are displayed on stdout. Unless -d, -m, -n, or -i are
used, displayed lines are valid commands. The set of available controls depends on the audio device.
Commands use the following two formats to display and change controls respectively:
[group/]stream[channel].function[group/]stream[channel].function=value
On the left-hand side are specified the control group (if any), the affected stream name, and the
optional channel number. Examples of left-hand side terms:
output.leveloutput[0].level
If the channel number (including the brackets) is omitted, the command is applied to all channels.
Values are numbers between 0 and 1. Two-state controls (switches) take either 0 or 1 as value, typically
corresponding to the off and on states respectively.
If a decimal is prefixed by the plus (minus) sign then the given value is added to (subtracted from) the
current value of the control. If "!" is used instead of a number, then the switch is toggled.