alsactl - advanced controls for ALSA soundcard driver
alsactl [options] [store|restore|names] <card # or id>
alsactl is used to control advanced settings for the ALSA soundcard drivers. It supports multiple soundcards. If your card has features that you can’t seem to control from a mixer application, you have come to the right place.
store saves the current driver state for the selected soundcard to the configuration file.
restore loads driver state for the selected soundcard from the configuration file.
names generates list of available device names for applications. The card number or id is ignored for this command. The list is always generated for all available cards.
If no soundcards are specified, setup for all cards will be saved or loaded.
Help: show available flags and commands.
/var/lib/alsa/asound.state (or whatever file you specify with the -f flag) is used to store current settings for your soundcards. The settings include all the usual soundcard mixer settings. More importantly, alsactl is capable of controlling other card-specific features that mixer apps usually don’t know about.
The configuration file is generated automatically by running alsactl store. Editing the configuration file by hand may be necessary for some soundcard features (e.g. enabling/disabling automatic mic gain, digital output, joystick/game ports, some future MIDI routing options, etc).
/etc/asound.names (or whatever file you specify with the -f flag) is used to store the list of device names available in your system. The list does not contain all virtual names, because the name space is infinite, but it detects present hardware and generates list of common names. The user / system administrator / another configuration tool might modify the file to add virtual names as well.
alsactl is by Jaroslav Kysela <firstname.lastname@example.org> and Abramo Bagnara <email@example.com>. This document is by Paul Winkler <firstname.lastname@example.org>.