Szenario: Ich spiele laute Musik. Ich lasse den Computer eine Stunde lang liegen. Ich komme zurück und spiele die Musik weiter, ohne daran zu denken, dass die Lautstärke auf „voll“ eingestellt ist.
Frage: Gibt es etwas, das ich installieren kann, beispielsweise ein Pulseaudio-Plugin, mit dem ich Folgendes angeben kann:
Wenn beispielsweise seit einigen Sekunden kein Audiosignal abgespielt wurde A
und die Lautstärke über liegt B
, wird das Audiosignal bei Beginn der Wiedergabe mit der Lautstärke abgespielt und C
die Lautstärke B
über einen Zeitraum von einigen D
Sekunden wieder schrittweise auf erhöht.
Es wäre äußerst wünschenswert, wenn dies „global“ erfolgen könnte, sodass die Quelle des Geräuschs keine Rolle spielt.
Antwort1
Sie können einen Musik-Player installieren, der über eine solche Funktion verfügt.
Meines Wissens verfügt Clementine über diese Funktion und sie ist im Ubuntu Software Center verfügbar!
Antwort2
Eine Möglichkeit besteht darin, die Lautstärke Ihres Systems beim Suspendieren (oder Fortsetzen) mit einem Skript stummzuschalten oder zu verringern. Das bedeutet, dass Sie es nach dem Fortsetzen manuell aufdrehen müssen, aber ...
Der Befehl zum Einstellen der Lautstärke sollte etwa so lauten:
pacmd set-sink-volume 0 20000
( pacmd
ist im Paket enthalten pulseaudio-utils
), wobei dies 0
die Standardsenke (Tonausgabe) ist und die Lautstärke eine 16-Bit-Zahl (von 0 bis 65535) ist;weitere Details in dieser Antwort. Sie müssen experimentieren, um den Befehl zu finden, der für Ihr System funktioniert.
Um dies beim Suspendieren/Fortsetzen automatisch zu machen, können Sie die gleiche Technik verwenden, die indieser Beitrag:(Ich habe es nicht getestet, aber es sollte funktionieren).
Bearbeiten/Erstellen der Datei
gksudo gedit /etc/pm/sleep.d/02_shush
Fügen Sie diesen Inhalt ein:
#!/bin/sh # set the volume low on suspend and resume. Change the command to suite your # system. You can do that just in suspend OR resume or whatever; edit to your # taste... case "$1" in resume|thaw) # this command(s) will be executed at resume time pacmd set-sink-volume 0 20000 > /dev/null ;; suspend|hibernate) # this command(s) will be executed before suspend pacmd set-sink-volume 0 20000 > /dev/null ;; esac
speichern und schließen
ausführbar machen:
sudo chmod 755 /etc/pm/sleep.d/02_shush