FreeBSD manual

download PDF document: mixer.8.pdf

MIXER(8) FreeBSD System Manager's Manual MIXER(8)
NAME mixer - manipulate soundcard mixer controls
SYNOPSIS mixer [-f device] [-d pcmN | N [-V voss_device:mode]] [-os] [dev[.control[=value]]] ... mixer [-os] -a mixer -h
DESCRIPTION The mixer utility is used to set and display soundcard mixer device controls.
The options are as follows:
-a Print the values for all mixer devices available in the system (see FILES).
-d pcmN | N Change the default audio card to pcmN, where N is the unit number (e.g for pcm0, the unit number is 0). See EXAMPLES on how to list all available audio devices in the system.
There is also the possibility of hot-swapping to the new default device if virtual_oss(8) exists in the system and is running, in which case the -V option needs to be specified as well.
Hot-swapping generally cannot happen with plain sound(4), so the user has to restart the track in order to get sound coming out of the new default device. This is because applications usually open a device at the start of the track and do not check for default device changes, in order to open the new device mid-track. virtual_oss(8), on the other hand, can do hot-swapping, because it creates a virtual device for applications to open, and then does all the necessary routing and conversions to the appropriate device(s).
Note that hot-swapping will work only for applications that are using virtual_oss(8) devices, and not plain sound(4) ones.
-f device Open device as the mixer device (see FILES).
-h Print a help message.
-o Print mixer values in a format suitable for use inside scripts. The mixer's header (name, audio card name, ...) will not be printed.
-s Print only the recording source(s) of the mixer device.
-V voss_device:mode Specify a virtual_oss(8) control device, as well as a mode (see below), in order to hot-swap devices. play Playback rec Recording
The mode part is needed, so that mixer will not accidentally hot-swap both the recording and playback device in virtual_oss(8), if only one direction is to be hot-swapped.
See EXAMPLES on how to use this option.
The list of mixer devices that may be modified are:
vol, bass, treble, synth, pcm, speaker, line, mic, cd, mix, pcm2, rec, igain, ogain, line1, line2, line3, dig1, dig2, dig3, phin, phout, video, radio, and monitor.
Not all mixer devices are available.
Without any arguments, mixer displays all information for each one of the mixer's supported devices to stdout. If the dev argument is specified, mixer displays only the values for dev. More than one device may be specified.
Commands use the following format:
Name Action dev Display all controls dev.control Display only the specified control dev.control=value Set control value
The available controls are as follows (replace dev with one of the available devices):
Name Value dev.volume vol|[+|-]lvol[%][:[+|-]rvol[%]] dev.mute 0|1|^ dev.mute off|on|toggle dev.recsrc ^|+|-|= dev.recsrc toggle|add|remove|set
The dev.volume control modifies a device's volume. The optional lvol and/or rvol values have to be specified. The values should typically be decimal numbers between 0 and 1 with at most 2 digits after the decimal point. A trailing percent sign indicates that the value should be treated as a percentage of 1.0, rather than an absolute value. Thus, 70% means the same as 0.7. If the left or right volume values are prefixed with + or -, the value following will be used as a relative adjustment, modifying the current settings by the amount specified. Note that relative percentages are still relative to 1.0, not to the current value. If the volume is currently 0.40 and an adjustment of +20% is specified, then thet final volume will be set to 0.60.
Volume can also be set using the shorthand dev=value. This syntax does not apply to other controls.
The dev.mute control (un)mutes a device. The following values are available:
0 | off unmutes dev
Recording sources are marked with src. To modify the recording source you can use one of the following modifiers on a rec device:
^ | toggle toggles dev of possible recording devices
+ | add adds dev to possible recording devices
- | remove removes dev from possible recording devices
= | set makes dev the only recording device.
FILES /dev/mixerN The mixer device, where N is the number of that device, for example /dev/mixer0. PCM cards and mixers have a 1:1 relationship, which means that /dev/mixer0 is the mixer for /dev/pcm0 and so on. By default, mixer prints both the audio card's number and the mixer associated with it in the form of pcmN:mixer. The /dev/mixer file, although it does not exist in the filesystem, points to the default mixer device and is the file mixer opens when the -f device option has not been specified.
EXAMPLES List all available audio devices in the system:
$ mixer -a | grep ^pcm
Increase the vol device's volume by 5%:
$ mixer vol=+5%
Change the volume for the vol device of the /dev/mixer0 mixer device to 0.65:
$ mixer -f /dev/mixer0 vol.volume=0.65
Increase the mic device's left volume by 0.10 and decrease the right volume by 0.05:
$ mixer mic.volume=+0.10:-0.05
Toggle the mute for vol:
$ mixer vol.mute=toggle
Add mic and remove line from the recording devices:
$ mixer mic.recsrc=add line.recsrc=remove
Dump /dev/mixer0 information to a file and retrieve back later:
$ mixer -f /dev/mixer0 -o > info ... $ mixer -f /dev/mixer0 `cat info`
Suppose virtual_oss(8) is running with /dev/vdsp.ctl as its control device, and pcm0 as the playback device. Change the default device to pcm1, and hot-swap to it for both recording and playback in virtual_oss(8): The mixer utility first appeared in FreeBSD 2.0.5 and was rewritten completely in FreeBSD 14.0.
AUTHORS Christos Margiolis <christos@FreeBSD.org>
FreeBSD 14.2-RELEASE August 14, 2024 FreeBSD 14.2-RELEASE