MIXER(8)

πŸ“¦
version 15.1 Β· 2 versions
, in freebsd 15.1

πŸ’… MIXER(8) β€” ok bestie, let's talk about your soundcard

Hey hi hello 🫢 this one's from section 8 of the System Manager's Manual (the system manager's manual, yes, very official, very demure) and it's literally all about mixer, the little utility that lets you touch your soundcard's mixer controls instead of just yelling at your speakers. Slay.


✨ NAME ✨

mixer β€” manipulate soundcard mixer controls πŸ’– (read: poke at the volume, the mutes, the recording sources, all of it)


πŸŽ€ SYNOPSIS πŸŽ€

mixer [-f device] [-d pcmX | X] [-os] [dev[.control[=value]]] ...
mixer [-os] -a
mixer -h

That's it. That's the whole vibe check. 🌸


πŸ¦‹ DESCRIPTION πŸ¦‹

The mixer utility is used to set and display soundcard mixer device controls. Periodt. πŸ’…

The options, bestie (all of them, no cap)

  • -a β€” Print the values for all mixer devices available in the system (peep β€œFILES” πŸ‘€).
  • -d pcmX | X β€” Change the default audio card to pcmX, where X is the device's unit number (so like, for pcm0, the unit number is 0). Wanna see how to list all available audio devices in the system? β€œEXAMPLES” has you covered ✨.
  • -f device β€” Open device as the mixer device (again, see β€œFILES”).
  • -h β€” Print a help message. Tiny little cry for help, but make it documentation πŸ₯Ί.
  • -o β€” Print mixer values in a format suitable for use inside scripts. The mixer's header (name, audio card name, ...) will not be printed. Clean. Minimal. Main character energy.
  • -s β€” Print only the recording source(s) of the mixer device. Just the recsrc, nothing else, obsessed.

The mixer devices you can actually mess with πŸ‘‘

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. 😭 Yes I know, devastating. Not every card has every knob. It's giving "limited edition."

What happens with no arguments

Without any arguments, mixer displays all information for each one of the mixer's supported devices to stdout. All the tea β˜•, dumped straight out.

If the dev argument is specified, mixer displays only the values for dev. And you can pass more than one device β€” go off, specify as many as you want πŸ’….

Commands, and how they're formatted

Commands use the following format:

  • dev β€” Display all controls
  • dev.control β€” Display only the specified control
  • dev.control=value β€” Set control value

The available controls πŸŽ›οΈ

(Replace dev with one of the available devices, iykyk.)

  • dev.volume β€” value: vol|[+|-]lvol[%][:[+|-]rvol[%]]
  • dev.mute β€” value: 0|1|^
  • dev.mute β€” value: off|on|toggle
  • dev.recsrc β€” value: ^|+|-|=
  • dev.recsrc β€” value: toggle|add|remove|set

dev.volume β€” the volume one πŸ”₯

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 means the value should be treated as a percentage of 1.0, rather than an absolute value. So like, 70% means the same as 0.7. Math is mathing ✨.

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. So if the volume is currently 0.40 and an adjustment of +20% is specified, then the final volume will be set to 0.60. See? It's not adding to what you have, it's measuring from 1.0. That's the trick. πŸ™ˆ

Volume can also be set using the shorthand dev=value. This syntax does not apply to other controls β€” volume only, bestie, don't get greedy.

dev.mute β€” the (un)mute one 🀫

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

dev.recsrc β€” the recording source one πŸŽ™οΈ

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. Only. The. One. πŸ‘‘

🌈 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. Matching set, cute πŸŽ€.
  • /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`

That last one is giving save-state energy and honestly? Iconic. πŸ’Ύβœ¨


πŸ‘€ SEE ALSO πŸ‘€

mixer(3), sound(4), sysctl(8) β€” go read those too, bestie, knowledge is free 🫢


πŸ•°οΈ HISTORY πŸ•°οΈ

The mixer utility first appeared in FreeBSD 2.0.5 and was rewritten completely in FreeBSD 14.0. Glow-up of the century, no notes. πŸ’…


πŸ‘‘ AUTHORS πŸ‘‘

Christos Margiolis <christos@FreeBSD.org> β€” thank you for your service, king πŸ«‘πŸ’–


And that's the whole page, bestie!! 🌸 This little gem came to you from the Debian build, dated February 26, 2026 β€” so go forth, mix responsibly, and remember: relative percentages are relative to 1.0, not to your current volume. Bye bye!! πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from
  • freebsd 15.1: base 15.1
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms