Hurra! 5.1 Sound ohne Rauschen!
Geschrieben von: @studipiepst Mittwoch, den 02. Juni 2010 um 16:29 Uhr
Lange Zeit hatte ich ein Problem mit meinem Sound (Onboard Soundkarte mit ALC888 und ein Logitech G51 als Boxen). Stereo funktioniert alles super, doch wenn ich in Ubuntu auf 5.1 schalte, höre ich ein Rauschen bzw. Störgeräusche. Nach langem herum proben mit dem alsamixer, die Einstellungsmöglichkeiten bzw. Lautstärke-GUI von Ubuntu ist katastrophal, fand ich heraus, dass es am PCM Regler liegen könnte. Da standardmässig nur dieser Regler mit der Lauter/Leiser-Taste verbunden ist und ich keinen anderen Weg fand diesen zu "ersetzen", musste eine andere Lösung her.
Kanäle mit dem alsamixer richtig einstellen
Wie oben bereits angesprochen bin ich nicht gerade ein Fan der Audio-Einstellungen. Sieht zwar toll aus, bringt aber nichts, zumindest nicht bei mir. Damit ich den Subwoofer, Center usw. richtig einstellen konnte, musste ich auf den alsamixer zurückgreifen.
Variante 1: Shortcuts/Multimediatasten definieren
So weit wurde am System nichts geändert. Damit ich nun zukünftig nicht mehr auf den PCM sondern auf den Master Regler zurückgreife, habe ich zuerst ganz einfach mit:
amixer -c 0 sset Master,0 1+
bzw.
amixer -c 0 sset Master,0 1-
unter System > Einstellungen > Tastenkombinationen eigene Befehle angelegt und diese meinen Lauter/Leiser-Tasten zugewiesen. Leider stellte mich dieses Resultat nur bedingt zufrieden. Bei dieser Möglichkeit wird keine optische Rückmeldung angezeigt, man muss also schätzen wann man etwa bei 50% angekommen ist.
Variante 2: Shortcuts/Multimediatasten definieren
Auf der Suche nach einer schöneren Lösung führt kein Weg an Notify vorbei.sudo apt-get install libnotify-bin
Wieder einmal wurde ich im Forum von Ubuntuusers.de fündig. Auf meine Frage, ob jemand evt. eine Lösung hätte, fand scrawl eine Möglichkeit. Wir erstellen ein neues Script:
sudo gedit /usr/bin/vol.sh
und kopieren folgendes dort hinein:
#!/bin/sh
# created by abarilla
# modified by wujaklija
usage="usage: $0 [-c up|down|mute] [-i increment] [-m mixer]"
command=
increment=
mixer=
while getopts "c:i:m:h" o
do case "$o" in
c) command=$OPTARG;;
i) increment=$OPTARG;;
m) mixer=$OPTARG;;
h) echo "$usage"; exit 0;;
?) echo "$usage"; exit 0;;
esac
done
if [[ -z $command ]] || [[ -z $increment ]] || [[ -z $mixer ]]
then
echo $usage
exit 1
fi
#shift $(($OPTIND - 1))
#command=$1
#if [ "$command" = "" ]; then
# echo "usage: $0 {up|down|mute} [increment]"
# exit 0;
#fi
display_volume=0
echo "$mixer"
if [ "$command" = "up" ]; then
display_volume=$(amixer set $mixer $increment+ unmute | grep -m 1 "%]" | cut -d "[" -f2|cut -d "%" -f1)
amixer set PCM $increment+ unmute
fi
if [ "$command" = "down" ]; then
display_volume=$(amixer set $mixer $increment- unmute | grep -m 1 "%]" | cut -d "[" -f2|cut -d "%" -f1)
amixer set PCM $increment- unmute
fi
icon_name=""
if [ "$command" = "mute" ]; then
if amixer get Master | grep "\[on\]"; then
display_volume=0
icon_name="notification-audio-volume-muted"
amixer set $mixer mute
else
display_volume=$(amixer set $mixer unmute | grep -m 1 "%]" | cut -d "[" -f2|cut -d "%" -f1)
fi
fi
if [ "$icon_name" = "" ]; then
if [ "$display_volume" = "0" ]; then
icon_name="notification-audio-volume-off"
else
if [ "$display_volume" -lt "33" ]; then
icon_name="notification-audio-volume-low"
else
if [ "$display_volume" -lt "67" ]; then
icon_name="notification-audio-volume-medium"
else
icon_name="notification-audio-volume-high"
fi
fi
fi
fi
#notify-send -u normal -t 100 "$mixer"
notify-send "Volume" -i $icon_name -h int:value:$display_volume -h string:synchronous:volume
#notify-send "$mixer" -i $icon_name
Anschliessend müssen wir es noch ausführbar machen:
sudo chmod a+x /usr/bin/vol.sh
Nun kann man das Script z.B. mit:
vol.sh -c up -i 1 -m Master
benützen. Das Script kennt folgende Optionen:
/usr/bin/vol.sh [-c up|down|mute] [-i increment] [-m mixer]
Die Option -i kann nur Ganzzahlen entgegen nehmen.
Abschliessend legen wir nun die Tastenkombinationen fest. Wir weisen der Lauter-Taste also:
vol.sh -c up -i 1 -m Master
zu und analog ist leiser:
vol.sh -c down -i 1 -m Master
Nun haben wir eine schöne Anzeige und das Rauschen ist verschwunden!





Letzte Kommentare