Volume de linha de comando por aplicativo (talvez amixer ou pactl?)

7

Eu posso alterar o volume principal com esses comandos (da linha de comando), e isso afeta todos os aplicativos, mas como eu altero o volume para apenas um aplicativo ( XMMS , por exemplo)?

amixer -q  set Master     toggle  # or pactl set-sink-mute   0 toggle
amixer -q sset Master 5%+ unmute  # or pactl set-sink-volume 0 -- -5%
amixer -q sset Master 5%- unmute  # or pactl set-sink-volume 0 -- +5%

pacmd dump # é interessante, e há aplicativos de GUI que podem fazer isso: gnome-control-center sound , pavucontrol

    
por 9mjb 10.06.2015 / 19:36

2 respostas

12

Você pode obter o número de entrada do coletor com o comando pactl.

$ pactl list sink-inputs
...
Sink Input #7119
    Driver: protocol-native.c
    Owner Module: 12
    Client: 6298
    Sink: 0
...
Properties:
    application.icon_name = "google-chrome"
    media.name = "Playback"
    application.name = "Chromium"
...

Usando esse número (# 7119), você especifica a entrada do coletor.

$ pactl set-sink-input-mute 7119 toggle

Ele identificará o aplicativo com a propriedade application.icon_name . O seguinte é um caso para especificar o Chromium.

#!/bin/sh
LANGUAGE="en_US"

app_name="Chromium"

current_sink_num=''
sink_num_check=''
app_name_check=''

pactl list sink-inputs |while read line; do \
    sink_num_check=$(echo "$line" |sed -rn 's/^Sink Input #(.*)//p')
    if [ "$sink_num_check" != "" ]; then
        current_sink_num="$sink_num_check"
    else
        app_name_check=$(echo "$line" \
            |sed -rn 's/application.name = "([^"]*)"//p')
        if [ "$app_name_check" = "$app_name" ]; then
            echo "$current_sink_num" "$app_name_check"

            pactl set-sink-input-mute "$current_sink_num" toggle
        fi
    fi
done
    
por 11.06.2015 / 18:53
1

Para a PulseAudio, Roland Haas escreveu uma ferramenta: link

Eu tive que instalar o libpulse-dev linux-libc-dev libc6-dev zlib1g-dev libpcre3-dev libglib2.0-0 libglib2.0-dev .
Você também pode precisar de um compilador (gcc) para make .

Fonte: link "Como alterar o volume de apps / streams de reprodução pulseaudio que não estão atualmente em uso "

    
por 28.03.2018 / 01:33