Управление громкостью из терминала/скрипта

Здравствуйте.
Подскажите, пожалуйста, как увеличить/уменьшить громкость из терминала/скрипта?
Звуковая подсистема - pulseaudio, поверх ALSA.
Хотелось бы повесить запуск команд увеличения/уменьшения громкости на хоткеи, для управления громкостью из тайлового оконного менеджера i3wm.
Можно управлять громкостью через alsa, можно через pulseaudio. В такой конфигурации (pulse поверх alsa) изменение уровня в одной системе автоматически отображаются в другой.
В alsa простейший пример выглядит так:
amixer -q sset Master "20%" on
Для pulseaudio как-то так:
pactl set-sink-volume 0 20%
где 0 - номер нужного источника (можно имя), который можно узнать из вывода
$ pactl list sinks
Аудиоприёмник №0
        Состояние: SUSPENDED
        Имя: alsa_output.pci-0000_00_1b.0.analog-stereo
        ...
Ну и неплохой пример серьезного подхода к этой теме здесь.
У мну так:
~/.xbindkeysrc
——————————
"amixer -c 0 sset Master 2-"
 XF86AudioLowerVolume
"amixer -c 0 sset Master 2+"
 XF86AudioRaiseVolume
Стоит оговориться, что можно обойтись без xbindkeys, забиндив нужные клавиши в конфиге i3, но я изредка запускаю awesome, OpenBox и т.д. Короче - это одно решение для всех оболочек.
И, кстати, вам действительно так нужно pulseaudio?
Спасибо за ответы, успел найти прекрасно работающие команды увеличения/уменьшения громкости (возможно, это кому-нибудь пригодится):

amixer -D pulse set Master 3%+ unmute
amixer -D pulse set Master 3%- unmute

Pulsaudio нужен только для скайпа (скайп не хочет использовать ALSA).

Отдельное спасибо за ~/.xbindkeysrc - не знал о такой возможности.
alexc
Pulsaudio нужен только для скайпа
Побойтесь Бога! Скайп - последнее, ради чего стоить ставить пульс. Хотя, я вообще не знаю, ради чего его стоит ставить.
Установите эмулятор пульсыlib32-apulse, если имеется 64-битная система). Запускаете скайп:
$ apulse skype
или
$ apulse32 skype
для i686 и x86_64 соответственно.
Собственно wiki.
Я бы эти пакеты вообще вынес в экстру, потому как от пульса толку никакого, кроме изжоги. )
$ pulseaudio-ctl -h
pulseaudio-ctl v1.60

 /usr/bin/pulseaudio-ctl {up,down,mute,mute-input,set,atmost} [n]

 Where up and down adjust volume in ±5 % increments
 Where up and down [n] adjust volume in ±n % increments
 Where mute toggles the mute status on/off
 Where mute-input toggles the input status on/off
 Where set set the volume to [n] %
 Where atmost only takes effect if current volume is higher than [n]

 Optionally, redefine an upper threshold in /home/arcanis/.config/pulseaudio-ctl/config

 Volume level     : 100 %
 Is sink muted    : no
 Is source muted  : no
 Detected sink    : 0
 Detected source  : 1
 Pulse version    : 5.0
PGP 0x31361F01
arcanisrepo
Aivar
Побойтесь Бога! Скайп - последнее, ради чего стоить ставить пульс. Хотя, я вообще не знаю, ради чего его стоит ставить.

ALSA неправильно определила устройство по умолчанию для вывода звука - HDMI, при установке pulsaudio проблема разрешается самим pulsaudio. Плюс, приложения при выводе звука в ALSA используют устройство монопольно, блокируя вывод звука из других приложений, что не очень удобно.
Спасибо за pulsaudio-ctl - полезная штука.
alexc
ALSA неправильно определила устройство по умолчанию для вывода звука - HDMI
Установите нужное устройство по умолчанию в конфиге альсы.

alexc
приложения при выводе звука в ALSA используют устройство монопольно, блокируя вывод звука из других приложений, что не очень удобно.
Не верю. dmix сейчас включен по умолчанию. Используйте -ao alsa без указания конкретного устройства.
Ну и покажите конфиг.
Хотя, какой конфиг, если упор уже сделан на пульс...
 
Зарегистрироваться или войдите чтобы оставить сообщение.