#!/bin/sh
#
# Volume change and display script (C) 2003 Georg Lukas <georg@op-co.de>
#
# Syntax: ./vol.sh [-|--|+|++|mute]

export DISPLAY=:0
export LC_CTYPE=de_DE.UTF-8
MUTE=/tmp/mute.vol 


display() {
	#pgrep mplayer > /dev/null && return
	killall -9 osd_cat 2>/dev/null
	echo "$@" | osd_cat -p bottom -A left -f '-*-lucidatypewriter-bold-r-normal-sans-34-240-100-100-m-200-iso10646-1' -c green -O 2 -u black -d 2
}
display_v() {
	#pgrep mplayer > /dev/null && return

	vol=$1
	v1=$(($vol/5))
	v2=$((20-$vol/5))

	killall -9 osd_cat 2>/dev/null
	 display $(	echo -n "Volume: ";
		while [ $v1 -gt 0 ] ; do
			echo -n "="
			v1=$(($v1-1))
		done
		while [ $v2 -gt 0 ] ; do
			echo -n "-"
			v2=$(($v2-1))
		done
	)
}



#echo $vol
function vol_change() {
	rm -f $MUTE
	aumix -v$1
	vol=`aumix -q|grep ^vol|cut -f 2 -d " "|sed s/,//`
	display_v $vol

}

case "$1" in
	++)
		vol_change +10
	;;
	--)
		vol_change -10
	;;
	+)
		vol_change +5
	;;
	-)
		vol_change -5
	;;
	mute)
		if [ -f $MUTE ] ; then
			aumix -v`cat $MUTE`
			rm -f $MUTE
			display "Volume unmuted"
		else
			vol=`aumix -q|grep ^vol|cut -f 2 -d " "|sed s/,//`
			echo $vol > $MUTE
			aumix -v0
			display "Volume muted"
		fi
		exit
	;;
	*)
		echo "Syntax: $0 [-|--|+|++|mute]"
esac

exit

vol=`aumix -q|grep ^vol|cut -f 2 -d " "|sed s/,//`
display_v $vol
exit

[ -f $MUTE ] && aumix -v`cat $MUTE` && rm $MUTE && exit
aumix -q|grep ^vol|cut -f 2 -d " "|sed s/,// > $MUTE && aumix -v0

case "$1" in
	+)
	;;
	-)
	;;
	mute)
	;;
esac
