MIXER(8)

NAME
mixer - manipulate soundcard mixer controls

SYNOPSIS
mixer [-f device] [-d pcmX | X] [-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 pcmX | X
    Change the default audio card to pcmX, where X is the device's unit number (e.g for pcm0, the unit number is 0). See EXAMPLES on how to list all available audio devices in the system.

-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.

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

1 | on
    mutes dev

^ | toggle
    toggles the mute of dev

The dev.recsrc control modifies the recording sources of a mixer. mixer marks devices which can be used as a recording source with rec. 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/mixerX
    The mixer device, where X is the unit number of that device, /dev/dsp* devices and /dev/mixer* devices have a 1:1 relationship, which means that, for instance, /dev/mixer0 is the mixer device for /dev/dsp0.
/dev/mixer
    Alias to the default device's mixer device. mixer opens this when the -f device option is not 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`

SEE ALSO
mixer(3), sound(4), sysctl(8)

HISTORY
The mixer utility first appeared in FreeBSD 2.0.5 and was rewritten completely in FreeBSD 14.0.

AUTHORS
Christos Margiolis <christos@FreeBSD.org>