Provided by: alsa-utils_1.2.6-1ubuntu1_amd64 bug


       alsaucm - ALSA Use Case Manager


       alsaucm <options> [command]


       alsaucm  (ALSA  Use Case Manager) is a program to use the ALSA Use Case Interface from the
       command line.

       On complex sound cards, setting up audio routes is not  trivial  and  mixer  settings  can
       conflict one another preventing the audio card to work at all.

       The  ALSA  Use  Case  Manager  is  a  mechanism  for  controlling  complex  audio hardware
       establishing a relationship between hardware configurations and meaningful use cases  that
       the end-user can relate with.

       The  use  case  manager  can also be used to switch between use cases when necessary, in a
       consistent way.

       At a lower level, the use case manager works by configuring the sound card ALSA  kcontrols
       to  change the hardware digital and analog audio routing to match the requested device use

       The use case manager kcontrol configurations are stored in easy to modify text  files.  An
       audio use case can be defined by a verb and device parameter.

       The  verb describes the use case action i.e. a phone call, listening to music, recording a
       conversation etc. The device describes the physical audio capture  and  playback  hardware
       i.e. headphones, phone handset, bluetooth headset, etc.


       Available options:

          -h, --help
                 this help

          -c, --card NAME
                 open card NAME

          -i, --interactive
                 interactive mode

          -b, --batch FILE
                 batch mode (use '-' for the stdin input)

          -n, --no-open
                 do not open first card found

       Available commands:

          open NAME
                 open card NAME.

                 valid names are sound card names as listed in /usr/share/alsa/ucm.

          reset  reset sound card to default state.

          reload reload configuration.

                 list available cards.

          list IDENTIFIER
                 list command, for items returning two entries (value+comment).

                 the value of the IDENTIFIER argument can can be:

                 • _verbs - get verb list (in pair verb+comment)

                 • _devices[/{verb}] - get list of supported devices (in pair device+comment)

                 • _modifiers[/{verb}]   -   get   list   of   supported   modifiers   (in   pair

                 The forms without the trailing /{verb} are valid only after a specific verb  has
                 been set.

          list1 IDENTIFIER
                 list command, for lists returning one item per entry.

                 the  value  of the IDENTIFIER argument can vary depending on the context, it can

                 • TQ[/{verb}] - get list of Tone Quality identifiers

                 • _enadevs - get list of enabled devices

                 • _enamods - get list of enabled modifiers

                 • _supporteddevs/{modifier}|{device}[/{verb}] - list of supported devices

                 • _conflictingdevs/{modifier}|{device}[/{verb}] - list of conflicting devices

          get IDENTIFIER
                 get string value.

                 the value of the IDENTIFIER argument can can be:

                 • _verb - return current verb

                 • [=]{NAME}[/[{modifier}|{/device}][/{verb}]] (For valid NAMEs look at the  ALSA
                   Use Case Interface)

          geti IDENTIFIER
                 get integer value.

                 the value of the IDENTIFIER argument can can be:

                 • _devstatus/{device}_modstatus/{device}

          set IDENTIFIER VALUE
                 set string value

                 The value of the IDENTIFIER argument can can be:

                 • _verb - set the verb to VALUE_enadev - enable the device specified by VALUE_disdev - disable the device specified by VALUE_swdev/{old_device} - switche device:

                   • disable old_device and then enable the device specified by VALUE

                   • if no device was enabled just return

                 • _enamod - enable the modifier specified by VALUE_dismod - disable the modifier specified by VALUE_swmod/{old_modifier} - switch modifier:

                   • disable old_modifier and then enable the modifier specified by VALUE

                   • if no modifier was enabled just return

                 Note  that  the  identifiers  referring  to devices and modifiers are valid only
                 after setting a verb.

          h, help

          q, quit


       The master use case files for each supported sound card are in /usr/share/alsa/ucm.

       For  example,   the   master   use   case   file   for   the   Pandaboard   card   is   in
       /usr/share/alsa/ucm/PandaBoard/PandaBoard.conf,  this  file  lists  all  the supported use
       cases, e.g.

          SectionUseCase."HiFi" {
                          File "hifi"
                          Comment "Play HiFi quality Music."

       Each use case defines a _verb, which is described  in  the  file  specified  in  the  File
       directive, like above.

       The HiFi verb above is described in /usr/share/alsa/ucm/PandaBoard/hifi.

       For   more   details   on  the  syntax  of  UCM  files,  see  the  alsa-lib  source  code:;a=blob;f=src/ucm/parser.c


       Some commands, like for instance list _devices, can only work after setting a _verb in the
       same execution, for instance this sequence doesn't work:

          # alsaucm -c bytcr-rt5640 set _verb HiFi
          # alsaucm -c bytcr-rt5640 list _devices

       However this command does:

          # alsaucm -n -b - <<EOM
          open bytcr-rt5640
          set _verb HiFi
          list _devices

       An example of setting the Speaker device for the HiFi verb of the bytcr-rt5640 card:

          # alsaucm -n -b - <<EOM
          open bytcr-rt5640
          set _verb HiFi
          set _enadev Speaker


       • Use Case Interface:


       None known.


       Antonio Ospite <>



                                            2016-09-22                                 ALSAUCM(1)