Het is mij overkomen dat terwijl mensen in de vroege ochtenduren sliepen, ik naar zware muziek op vol volume luisterde en per ongeluk de koptelefoon loskoppelde waardoor het door het hele huis klonk (ik denk dat ze me op dat moment haatten haha ). Dus ik schreef een klein script dat wanneer ze offline gaan, het volume wordt gedempt:
Het eerste was installeren alsa-utils om het volume eenvoudig te kunnen beheren vanaf commando's:
sudo pacman -S alsa-utils
Het volgende was om via een Google-zoekopdracht die ook opslaat in platte tekstbestanden (het kan worden gelezen met elke teksteditor, in Windows zou dit allemaal veel ingewikkelder zijn) de staat van de geluidskaarten te ontdekken en dat alles wat je nodig hebt is kopiëren het bestand en vergelijk vervolgens de wijzigingen.
Het bestand is:
/proc/asound/card0/codec#0
Dit kan in sommige gevallen afwijken, bijvoorbeeld als we meer dan één geluidskaart hebben. Als je meer wilt weten, laat ik de alsa-documentatielink achter: http://alsa.opensrc.org/Proc_asound_documentation
Ik sluit de koptelefoon aan en kopieer het bestand:
mkdir $HOME/.audifonos && cp "/proc/asound/card0/codec#0" "$HOME/.audifonos/con.txt"
Vervolgens koppel ik de koptelefoon los en gebruik ik het diff-commando dat de verschillende lijnen tussen de twee bestanden laat zien:
diff "/proc/asound/card0/codec#0" ".audifonos/con.txt"
Er zijn enkele gegevens waarin we niet geïnteresseerd zijn, dus we moeten filteren met grep zodat alleen de regels worden weergegeven met het woord "Pin-ctls".
diff "/proc/asound/card0/codec#0" ".audifonos/con" | grep Pin-ctls
Als de opdracht niets op het scherm laat zien, betekent dit dat we een koptelefoon op hebben. Omdat het niets kan retourneren, retourneert het een fout.
Om deze fout te zien, typen we:
echo $?
Als het ons een op het scherm laat zien, vertelt het ons over de fout.
Aan de andere kant, als wanneer we dit uitvoeren, het iets retourneert, hebben we de koptelefoon losgekoppeld, in welk geval het geen fout zal retourneren:
echo $?
Nu met dit in gedachten en bash kennende, is het gemakkelijk om het te doen:
Ik download het, ik geef uitvoeringsrechten om het voor de eerste keer te openen, zodat het kan worden "geïnstalleerd" (het vraagt alleen om een koptelefoon aan te sluiten en het bestand te kopiëren dat ik aan het begin heb uitgelegd)
wget http://paste.desdelinux.net/?dl=5178 && chmod +x audifonos.sh && ./audifonos.sh
Om te eindigen laat ik het automatisch starten elke keer dat ik de pc aanzet
Vanuit Xfce ga ik naar toepassingen > configuratie > Sessie en start > toepassing automatisch starten > script toevoegen en plaatsen
Gebruik je toevallig een WM? Het is dat het in ieder geval in Arch met Gnome-Shell 3.16 de veranderingen in de volumeregelaars behoudt, bijvoorbeeld wanneer ik de HDMI aansluit, laat het me het maximale volume zien, wanneer ik een koptelefoon aansluit, laat het me een heel laag volume zien en in de geïntegreerde luidsprekers bijna het meest.
Hoewel ik daar eigenlijk een tijdje naar op zoek was, was het vervelend om het volume te moeten verlagen om de luidsprekers te kunnen gebruiken en dat het geluid niet hard of vervelend was voor anderen. Hartelijk dank voor de bijdrage.
voor niets 🙂, ik gebruik xfce 😛
Ik herinnerde me net dat ik een keer naar p0rn aan het kijken was en ik had de koptelefoon op en de hdp losgekoppeld en ze hoorden Shyla's gekreun :c
Het mooie is dat het maar een fragment was van minstens een eeuwige seconde en het klonk als horrorfilms als ze een prostituee vermoorden XD
Als ik erover nadenk, ga ik het toevoegen aan favorieten
Hahahahahaha hetzelfde overkwam mij toen ik het rond middernacht onbedoeld loskoppelde en een goede harde kern klonk op vol volume XD mijn familie was bang: v
Goede informatie zal me ooit van pas komen. ontzettend bedankt
Je houdt me niet voor de gek, je keek naar por*o gay in het Spaans en je koptelefoon was losgekoppeld xD
Bedankt voor de bijdrage, in Linux Mint blijft het volume behouden, als ik bijvoorbeeld demp en vervolgens de koptelefoon aansluit, heb ik geluid in de koptelefoon en niet zonder.
Groeten.
hahaha, nee maar in die gevallen werkt het ook(?)
Ja, in die gevallen werkt het ook ( ͡° ͜ʖ ͡°)
Goede informatie, een suggestie, als het systeem 'devd' ondersteunt, hoe ga ik dan verder met het kopiëren of aanmaken van dit bestand?
[code] $PREFIX/share/examples/cups/ulpt-cupsd.conf naar $PREFIX/etc/devd/ [/code]
Ik zou het je niet kunnen vertellen, is het cp-commando niet genoeg?
Nee, er staat dat de directory niet bestaat en ik weet ook niet hoe ik deze moet maken.
Hehehe nou als ik je vertel dat het me meer dan eens is overkomen en met dezelfde muziek, dus ik schrijf het op om het later te installeren. Groetjes en namens Heavy Metal bedankt.
…… ~ $ sudo pacman -S alsa-utils
[sudo] wachtwoord voor David:
sudo: pacman: opdracht niet gevonden