amixer -c0 set Line 50% unmute
amixer -c0 set CD 0% mute
amixer -c0 set Mic 100% unmute
Это далеко не всё что вы можете.
Обратите внимание на все numid у которых values в значении 2 во второй строке после numid:
$ amixer -c0 contents
...
numid=2,iface=MIXER,name='Headphone Playback Switch'
; type=BOOLEAN,access=rw------,values=2
: values=on,on
numid=1,iface=MIXER,name='Headphone Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=74,step=0
: values=74,74
| dBscale-min=-74.00dB,step=1.00dB,mute=0
numid=24,iface=MIXER,name='PCM Playback Volume'
; type=INTEGER,access=rw---RW-,values=2,min=0,max=255,step=0
: values=255,255
| dBscale-min=-51.00dB,step=0.20dB,mute=0
numid=13,iface=MIXER,name='Mic Boost Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=3,step=0
: values=0,0
| dBscale-min=0.00dB,step=12.00dB,mute=0
numid=11,iface=MIXER,name='Mic Capture Switch'
; type=BOOLEAN,access=rw------,values=2
: values=off,off
numid=10,iface=MIXER,name='Mic Capture Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=80,step=0
: values=0,0
| dBscale-min=-74.00dB,step=1.00dB,mute=0
...
numid=12,iface=MIXER,name='Internal Mic Boost Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=3,step=0
: values=0,0
| dBscale-min=0.00dB,step=12.00dB,mute=0
...
numid=4,iface=MIXER,name='Speaker Playback Switch'
; type=BOOLEAN,access=rw------,values=2
: values=on,on
numid=3,iface=MIXER,name='Speaker Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=74,step=0
: values=74,74
| dBscale-min=-74.00dB,step=1.00dB,mute=0
numid=23,iface=PCM,name='Capture Channel Map'
; type=INTEGER,access=r----R--,values=2,min=0,max=36,step=0
: values=0,0
| container
| chmap-fixed=FL,FR
numid=22,iface=PCM,name='Playback Channel Map'
; type=INTEGER,access=r----R--,values=2,min=0,max=36,step=0
: values=0,0
| container
| chmap-fixed=FL,FR
Это означает что вы можете регулировать баланс, включать и выключать каналы.
Например регулировка уровней головных телефонов:
$ amixer -c0 cget numid=1
numid=1,iface=MIXER,name='Headphone Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=74,step=0
: values=74,74
| dBscale-min=-74.00dB,step=1.00dB,mute=0
Вывод подсказывает, что значений два, - values=2, левый и правый канал. А также минимальное и максимальное значение для каждого канала. Здесь они оба на максимуме и это отображает третья строка.
Снизим например уровень левого канала:
$ amixer -c0 cset numid=1 64,74
numid=1,iface=MIXER,name='Headphone Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=74,step=0
: values=64,74
| dBscale-min=-74.00dB,step=1.00dB,mute=0
и выключим правый канал:
$ amixer -c0 cset numid=2 on,off
numid=2,iface=MIXER,name='Headphone Playback Switch'
; type=BOOLEAN,access=rw------,values=2
: values=on,off
Восстанавливается аналогично:
$ amixer -c0 cset numid=1 74,74
numid=1,iface=MIXER,name='Headphone Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=74,step=0
: values=74,74
| dBscale-min=-74.00dB,step=1.00dB,mute=0
$ amixer -c0 cset numid=2 on,on
numid=2,iface=MIXER,name='Headphone Playback Switch'
; type=BOOLEAN,access=rw------,values=2
: values=on,on
Отдельного упоминания заслуживает Auto-Mute Mode:
$ amixer -c0 cget numid=5
numid=5,iface=MIXER,name='Auto-Mute Mode'
; type=ENUMERATED,access=rw------,values=1,items=2
; Item #0 'Disabled'
; Item #1 'Enabled'
: values=1
Item подсказывает, что у этого режима два состояния:
0 Disabled и 1 Enabled
values=1 в конце, говорит что Auto-Mute Mode включен.
Auto-Mute Mode, это режим, который позволяет держать спикеры ноутбука во включенном или выключенном состоянии при подключенной через джек 3.5 гарнитуре.
Выключим Auto-Mute Mode, чтобы звук шёл не только через гарнитуру, но и через спикеры ноутбука:
$ amixer -c0 cset numid=5 0
numid=5,iface=MIXER,name='Auto-Mute Mode'
; type=ENUMERATED,access=rw------,values=1,items=2
; Item #0 'Disabled'
; Item #1 'Enabled'
: values=0
Стоит только помнить, что numid у вас будут свои, что само-собой разумеется.
Управление через numid и cget/cset дадут вам полную власть над звуком и дадут возможность выставить абсолютно все нужные пресеты.
Также обращайте внимание на то, что этот уровень доступа означает только чтение (см. значение access):
numid=23,iface=PCM,name='Capture Channel Map'
; type=INTEGER,access=r----R--,values=2,min=0,max=36,step=0
: values=0,0
| container
| chmap-fixed=FL,FR