ALSACTL(1)

NAME
alsactl - advanced controls for ALSA soundcard driver

SYNOPSIS
alsactl [options] [store|restore] <card #>

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

INVOKING
alsactl [options] [store|restore] <card #>

  Commands
store saves the current driver setup for the selected soundcard to the configuration file. restore loads driver setup for the selected soundcard from the configuration file. If no soundcards are specified, setup for all cards will be saved or loaded.

  Options

-h, --help
    Help: show available flags and commands.

-f, --f file
    Select the configuration file to use. The default is /etc/asound.conf

-d, --debug
    Use debug mode: a bit more verbose.

-v, --version
    Print alsactl version number.

FILES
/etc/asound.conf (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).

  Configuration File Syntax
There are some terms in the config file that bear explaining. The "capabilities" comments before each line tells you some characteristics of each channel. This is purely informational; these are not flags you can set. Capabilities are listed below.

hardware-mute
    The soundcard itself is capable of muting the channel. Otherwise, kernel midlevel code will set the volume to minimum when an application requests muting on this channel.

join-mute
    Muting this channel can only be toggled for left and right at the same time, not independently -- even if you can control the volumes for left and right independently!

stereo
    The channel is stereo.

record
    The channel may be used as a recording source.

join-record
    Recording from this channel can only be toggled for both left and right at once; they cannot be toggled independently.

record-by-mute
    This channel can be recorded even if it's muted, so you can avoid feeding your record source back to the speakers.

external-input
    The channel controls a signal from an external input (like Line-In or CD). This serves to distinguish external source channels from onboard source channels (like OPL-3 synth).

digital
    This channel is fed to an onboard digital mixer for possible hardware processing (for instance, surround-sound processing if your card has it).

The configuration file also has boolean switches which are used to toggle certain card-specific advanced features. For example:
    ; Type is 'bool'.
    switch( "MIC Gain", false ) This shows that my card has a switchable mic gain, and that it's currently turned off. To turn it on, just change "false" to "true," save the config file, and run alsactl restore.

EXAMPLES
Let's say I have this entry in /etc/asound.conf for my PCM output.
    ; Capabilities: stereo hardware-mute digital.
    ; Accepted channel range is from 0 to 63.
    channel( "PCM", stereo( 40 mute, 50 mute )) When alsactl restore is run, the PCM volume will be set to 40 for the left and 50 for the right, but both will be muted. Since this card supports hardware-mute, muting will be done by hardware rather than by zeroing the levels.

SEE ALSO
amixer(1), alsamixer(1), aplay(1)

BUGS
None known.

AUTHOR
alsactl is by Jaroslav Kysela <perex@suse.cz> This document is by Paul Winkler <zarmzarm@erols.com>.