2 # From http://crunchbanglinux.org/forums/topic/11392/pulseaudio-volume-control-with-media-keys/
4 default_sink=`pactl list sinks | awk '/Name:/ {print $2; exit}'`
5 active_port=`pactl list sinks | awk '/Active Port:/ {print $3; exit}'`
6 VOLUME_FILE=~/.config/pulse/volume-$active_port
7 CURVOL=`cat $VOLUME_FILE` # Reads in the current volume
9 if [[ $1 == "increase" ]]
11 CURVOL=$(($CURVOL + 1310)) #1310 is 2% of the total volume (65535), you can change this to suit your needs.
13 if [[ $1 == "decrease" ]]
15 CURVOL=$(($CURVOL - 1310))
19 pactl set-sink-mute "$default_sink" 1
22 if [[ $1 == "unmute" ]]
24 pactl set-sink-mute "$default_sink" 0
27 if [[ $CURVOL -ge 0 && $CURVOL -le 65540 ]] # Check to see if the volume is a valid number (65540 was needed in this case because of how I rounded the increment)
29 pactl set-sink-volume "$default_sink" $CURVOL
30 echo $CURVOL > $VOLUME_FILE # Write the new volume to disk to be read the next time the script is run.