Hurra! 5.1 Sound ohne Rauschen!

Multimedia

Endlich 5.1 Sound ohne störende Nebengeräusche Endlich 5.1 Sound ohne störende Nebengeräusche
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. Der mächtige alsamixer Der mächtige alsamixer

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!

Kommentar schreiben


Verwandte Beiträge

Letzte Kommentare

  • GROẞARTIG! Herzlischen Dank! Weiter...
  • Ich habe diese HTC hero und es ist fantastik! Weiter...
  • Vielen Dank für die hilfreichen Tipps! Ich habe versucht, eine lange Zeit, ... Weiter...
  • Vielen Dank für den Hinweis! Habe es eben geändert. Weiter...
  • Danke für den Artikel, aber mach bitte aus dem `sudo gedit` ein `gksu gedit... Weiter...