PulseAudio Максимальная громкость

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Аватара пользователя
UnixNoob
Сообщения: 623
ОС: Slackware

PulseAudio Максимальная громкость

Сообщение UnixNoob »

Привет всем. Почитал я в гугле но не смог разобраться.
Вопрос состоит в том, как мне ограничить максимальную громкость для динамиков 100%?
В pavucontrol я этого не нашел.
Вот это вот:

Код: Выделить всё

pacmd set-sink-volume <sink> <value>
с моим каналом и значением 100% пишет "False Volume Parser ", есть еще опции где-то PA_VOLUME_UI_MAX (~153%) PA_VOLUME_NORM (100%) но где они я не разобрался.
Может кто-то занимался чем-то подобным и сможет подсказать.
Спасибо сказали:

Аватара пользователя
SLEDopit
Модератор
Сообщения: 4762
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: PulseAudio Максимальная громкость

Сообщение SLEDopit »

UnixNoob писал:
11.01.2021 02:12
значением 100%
как я понимаю, set-sink-volume ожидает не %, а число. и 100% соответствует 65536.

Код: Выделить всё

VOLUME COMMANDS
       set-sink-volume|set-source-volume index|name volume
              Set the volume of the specified sink (resp. source). You may specify the sink (resp. source) 
              either by its index in  the  sink/source list or by its name. The volume should be an integer 
              value greater or equal than 0 (muted). Volume 65536 (0x10000) is 'normal' volume a.k.a. 
              100%. Values greater than this amplify the audio signal (with clipping).
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:

Аватара пользователя
UnixNoob
Сообщения: 623
ОС: Slackware

Re: PulseAudio Максимальная громкость

Сообщение UnixNoob »

SLEDopit писал(а):
11.01.2021 15:10
как я понимаю, set-sink-volume ожидает не %, а число. и 100% соответствует 65536.
Вы правы, число подошло, но оказалось что эта команда просто выставляет громкость, а не её пределы.
Значит надо искать что за опция PA_VOLUME_NORM. Вернее как она выставляется.
Спасибо сказали:

Аватара пользователя
ormorph
Сообщения: 1813
ОС: Gentoo

Re: PulseAudio Максимальная громкость

Сообщение ormorph »

В pavucontrol в устройствах вывода - общие настройки, повторяется в alsamixer.
Для отдельных приложений(клиентов), в момент проигрывания в pavucontrol -> Проигрывание.

Обычно пульса сохраняет настройки сделанные в ручную через pavucontrol, при перезагрузке они сохраняются, до момента пока не влезешь в железо, батарейку вытащишь и т.п..
Спасибо сказали:

Аватара пользователя
UnixNoob
Сообщения: 623
ОС: Slackware

Re: PulseAudio Максимальная громкость

Сообщение UnixNoob »

ormorph писал(а):
11.01.2021 19:22
В pavucontrol в устройствах вывода - общие настройки, повторяется в alsamixer.
Для отдельных приложений(клиентов), в момент проигрывания в pavucontrol -> Проигрывание.
Может я чего-то не вижу, но у меня нет "общих".
Spoiler
pavucontrol.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Спасибо сказали:

Аватара пользователя
ormorph
Сообщения: 1813
ОС: Gentoo

Re: PulseAudio Максимальная громкость

Сообщение ormorph »

UnixNoob писал:
11.01.2021 19:40
Может я чего-то не вижу, но у меня нет "общих".
Один из этих регуляторов связан с общим регулятором pulseaudio в alsamixer.
Spoiler
ИзображениеИзображение
Спасибо сказали:

Аватара пользователя
UnixNoob
Сообщения: 623
ОС: Slackware

Re: PulseAudio Максимальная громкость

Сообщение UnixNoob »

ormorph
Интересно. В Alsa Mixer громкость любого устройства ограничена 100%, в том числе Master, при условии увеличения её стрелочками вверх и вниз в консоли, и в баре она отображается как 100%.. Но регулировка с помощью Fn+ Громкость увеличивает её бесконечно. При чем не только число меняется, но и громкость. Так же изменяется число в AlsaMixer.
Получается что надо смотреть в сторону настроек i3wm что-ли, в котором увеличение громкости выполняется так:

Код: Выделить всё

# Pulse Audio controls
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
Большинство ищут как снять ограничение, а я пытаюсь понять как его поставить :wacko:
Спасибо сказали:

Аватара пользователя
UnixNoob
Сообщения: 623
ОС: Slackware

Re: PulseAudio Максимальная громкость

Сообщение UnixNoob »

Вариант с alsa вот такой:

Код: Выделить всё

bindsym XF86AudioRaiseVolume exec amixer -q set Master 2dB+ unmute
bindsym XF86AudioLowerVolume exec amixer -q set Master 2dB- unmute
bindsym XF86AudioMute exec amixer -q set Master toggle
не заработал. Может синтаксис не верный, не знаю.

Решилась проблема в i3wm с помощью скрипта с просторов интернета.
Понимаю что не хорошо наверно, для такой не сложной задачи, но не знаю как еще увидеть ограничение громкости.
Спасибо сказали:

Аватара пользователя
ormorph
Сообщения: 1813
ОС: Gentoo

Re: PulseAudio Максимальная громкость

Сообщение ormorph »

UnixNoob писал:
16.01.2021 23:55
не заработал. Может синтаксис не верный, не знаю.

Код: Выделить всё

#Добавить громкость на 1 процент
amixer sset Master 1%+
#Убавить громкость на один процент
amixer sset Master 1%-
#Включить выключить звук
amixer sset Master,0 toggle
#Вывести информацию
amixer sget Master
А так да, лучше в скрипте установить ограничение громкости.
Спасибо сказали: