Skript zum Ausschalten der Lautstärke, wenn die Kopfhörer nicht angeschlossen sind

Pinguin-159784_640

Es passierte mir, dass ich, während die Leute in den frühen Morgenstunden schliefen, schwere Musik mit voller Lautstärke hörte und versehentlich die Kopfhörer abtrennte, die dazu führten, dass sie im ganzen Haus gespielt wurden (ich glaube, sie hassten mich damals Haha). Schreiben Sie also ein kleines Skript, das die Lautstärke stummschaltet, wenn die Verbindung getrennt wird:

Das erste war die Installation alsa-utils um das Volume über Befehle einfach verwalten zu können:

sudo pacman -S alsa-utils

Das nächste war, durch eine Google-Suche herauszufinden, dass alsa in einfachen Textdateien speichert (es kann mit jedem Texteditor gelesen werden, in Windows wäre dies alles viel komplizierter), den Status der Soundkarten und dass nur das Kopieren der Datei und vergleichen Sie dann die Änderungen.

Die Datei lautet:
/proc/asound/card0/codec#0

Dies kann in einigen Fällen variieren, z. B. wenn wir mehr als eine Soundkarte haben. Wenn Sie mehr wissen möchten, lasse ich den Link der alsa-Dokumentation: http://alsa.opensrc.org/Proc_asound_documentation

Ich schließe die Kopfhörer an und kopiere die Datei:
mkdir $HOME/.audifonos && cp "/proc/asound/card0/codec#0" "$HOME/.audifonos/con.txt"

Dann ziehe ich den Kopfhörer aus und benutze den Befehl diff, der die verschiedenen Zeilen zwischen den beiden Dateien anzeigt:
diff "/proc/asound/card0/codec#0" ".audifonos/con.txt"

Es gibt einige Daten, an denen wir nicht interessiert sind, daher müssen wir mit grep filtern, damit nur die Zeilen mit dem Wort "Pin-ctls" angezeigt werden.

diff "/proc/asound/card0/codec#0" ".audifonos/con" | grep Pin-ctls

Falls der Befehl nichts auf dem Bildschirm anzeigt, haben wir Kopfhörer an. Da nichts zurückgegeben werden kann, wird ein Fehler zurückgegeben.

Um diesen Fehler zu sehen, geben wir Folgendes ein:
echo $?

Wenn eine Eins pro Bildschirm angezeigt wird, werden wir über den Fehler informiert.

Komfort

Wenn wir dagegen etwas zurückgeben, wird der Kopfhörer nicht angeschlossen. In diesem Fall wird kein Fehler zurückgegeben:
echo $?

Hallo

In diesem Sinne und mit dem Wissen um Bash ist es einfach, dies zu tun:

Headphones.sh

Ich lade es herunter und erteile Ausführungsberechtigungen, um es zum ersten Mal zu öffnen, damit es „installiert“ wird (es wird nur gefragt, ob Kopfhörer angeschlossen und die zu Beginn erläuterte Datei kopiert werden sollen).
wget http://paste.desdelinux.net/?dl=5178 && chmod +x audifonos.sh && ./audifonos.sh

Zum Abschluss starte ich es jedes Mal automatisch, wenn ich den PC einschalte

Von Xfce gehe ich zu Anwendungen> Konfiguration> Sitzung und Start> Autostart von Anwendungen> Hinzufügen und Platzieren des Skripts


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   Fliese sagte

    Benutzt du zufällig eine WM? Zumindest in Arch mit Gnome-Shell 3.16 werden die Änderungen in den Lautstärkereglern beibehalten. Wenn ich beispielsweise das HDMI anschließe, wird mir die maximale Lautstärke angezeigt. Wenn ich Kopfhörer anschließe, wird mir die Lautstärke sehr niedrig und im eingebauten Zustand angezeigt -in Lautsprechern fast am meisten.

    Obwohl ich das eigentlich schon seit einiger Zeit wollte, war es eine Hündin, die die Lautstärke verringern musste, um die Lautsprecher verwenden zu können, damit der Ton für andere nicht schrill oder nervig war. Vielen Dank für den Beitrag.

    1.    Regen sagte

      für nichts 🙂 benutze ich xfce 😛

      1.    Fliese sagte

        Ich erinnerte mich nur daran, dass ich einmal p0rn sah und die Kopfhörer und das HDP getrennt hatte und Shylas Stöhnen hörte: c
        Das Gute ist, dass es nur ein Fragment von mindestens einer ewigen Sekunde war und es sich wie Horrorfilme anhörte, als eine Prostituierte XD getötet wurde
        Wenn ich darüber nachdenke, werde ich es zu den Favoriten hinzufügen

  2.   Yoyo Moreno sagte

    Hahahahahaha, das gleiche passierte mir, als ich es unbeabsichtigt um Mitternacht abschaltete und ein guter Hardcore bei voller Lautstärke ertönte. XD Meine Familie hatte Angst: v

  3.   noxonsoftware sagte

    Gute Informationen werden mir irgendwann nützlich sein. Vielen Dank

  4.   Andreser sagte

    Sie täuschen mich nicht, Sie haben auf Spanisch nach * oder schwul gesucht und Ihre Kopfhörer wurden xD getrennt
    Vielen Dank für den Beitrag, in Linux Mint bleibt die Lautstärke erhalten, wenn ich zum Beispiel stumm schalte und dann die Kopfhörer anschließe, in den Kopfhörern habe ich Ton und ohne sie nicht.
    Grüße.

    1.    Regen sagte

      hahaha, nein aber in diesen Fällen funktioniert es auch (?)

      1.    Andreser sagte

        Ja, es funktioniert auch in diesen Fällen (͡ ° ͜ʖ ͡ °)

  5.   deni sagte

    Gute Informationen, ein Vorschlag, wenn das System 'devd' unterstützt, wie gehe ich vor, um diese Datei zu kopieren oder zu erstellen?

    [code] $ PREFIX / share / examples / cups / ulpt-cupsd.conf an $ PREFIX / etc / devd / [/ code]

    1.    Regen sagte

      Ich konnte dir nicht sagen, ist der Befehl cp nicht genug?

      1.    deni sagte

        Nein, es heißt, dass das Verzeichnis nicht existiert und ich auch nicht weiß, wie ich es erstellen soll.

  6.   fernando sagte

    Heheheh gut, wenn ich dir sage, dass es mir mehr als einmal passiert ist und mit der gleichen Musik, also schreibe ich es auf, um es später zu installieren. Grüße und im Namen von Heavy Metal danke.

  7.   Christian sagte

    …… ~$ sudo pacman -S alsa-utils
    [sudo] passwort für david:
    sudo: pacman: Befehl nicht gefunden