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

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

Модератор: Bizdelnick

Ответить
Аватара пользователя
UnixNoob
Сообщения: 1379
ОС: 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
Модератор
Сообщения: 4823
Статус: фанат консоли (=
ОС: 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
Сообщения: 1379
ОС: Slackware

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

Сообщение UnixNoob »

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

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

Сообщение ormorph »

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

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

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

Сообщение UnixNoob »

ormorph писал(а):
11.01.2021 19:22
В pavucontrol в устройствах вывода - общие настройки, повторяется в alsamixer.
Для отдельных приложений(клиентов), в момент проигрывания в pavucontrol -> Проигрывание.
Может я чего-то не вижу, но у меня нет "общих".
Spoiler
pavucontrol.png
pavucontrol.png (55.43 КБ) 1438 просмотров
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 2645
ОС: Gentoo

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

Сообщение ormorph »

UnixNoob писал:
11.01.2021 19:40
Может я чего-то не вижу, но у меня нет "общих".
Один из этих регуляторов связан с общим регулятором pulseaudio в alsamixer.
Spoiler
ИзображениеИзображение
Спасибо сказали:
Аватара пользователя
UnixNoob
Сообщения: 1379
ОС: 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
Сообщения: 1379
ОС: 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
Сообщения: 2645
ОС: 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
А так да, лучше в скрипте установить ограничение громкости.
Спасибо сказали:
Ответить