script om die volume uit te skakel wanneer koptelefoon ontkoppel word

pikkewyn-159784_640

Dit het met my gebeur dat terwyl ek in die vroeë oggendure geslaap het, ek op volle volume na swaar musiek geluister het, en per ongeluk die koptelefoon ontkoppel het wat veroorsaak het dat dit deur die hele huis gespeel is (ek dink hulle het my gehaat op daardie tydstip haha). Skryf dus 'n klein skrif wat die volume demp as dit ontkoppel word:

Die eerste ding was om te installeer alsa-utils om die volume van opdragte maklik te kan bestuur:

sudo pacman -S alsa-utils

Die volgende ding was om deur middel van 'n Google-soektog te ontdek dat dit ook in gewone tekslêers (dit kan met enige teksredigeerder gelees word, in Windows sal dit baie ingewikkelder wees) ontdek word wat die status van die klankkaarte is. kopieer die lêer en vergelyk dan die veranderinge.

Die lêer is:
/proc/asound/card0/codec#0

Dit kan in sommige gevalle wissel, byvoorbeeld as ons meer as een klankkaart het. As u meer wil weet, laat ek die skakel van die alsa-dokumentasie: http://alsa.opensrc.org/Proc_asound_documentation

Ek koppel die koptelefoon en kopieer die lêer:
mkdir $HOME/.audifonos && cp "/proc/asound/card0/codec#0" "$HOME/.audifonos/con.txt"

Dan trek ek die koptelefoon uit en gebruik die diff-opdrag wat die verskillende lyne tussen die twee lêers wys:
diff "/proc/asound/card0/codec#0" ".audifonos/con.txt"

Daar is sekere data waarin ons nie belangstel nie, dus moet ons met grep filter sodat dit slegs die lyne met die woord "Pin-ctls" toon.

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

As die opdrag niks op die skerm wys nie, beteken dit dat ons 'n koptelefoon aan het. aangesien dit niks kan teruggee nie, gee dit 'n fout terug.

Om hierdie fout te sien tik ons:
echo $?

As dit een per skerm vir ons wys, vertel dit ons van die fout.

konsole

aan die ander kant, as ons dit uitvoer, stuur dit die koptelefoon af, in welke geval dit geen fout sal oplewer nie:
echo $?

hallo

Met dit in gedagte en om bash te weet, is dit maklik om dit te doen:

Hoofdtelefoon.sh

Ek laai dit af, ek gee uitvoeringsregte om dit vir die eerste keer oop te maak sodat dit "installeer" (dit vra net om koptelefoon aan te sluit en die lêer te kopieer wat dit aan die begin verduidelik)
wget http://paste.desdelinux.net/?dl=5178 && chmod +x audifonos.sh && ./audifonos.sh

Om te voltooi, laat ek dit outomaties begin elke keer as ek die rekenaar aanskakel

Vanaf Xfce gaan ek na toepassings> konfigurasie> Sessie en begin> toepassings autorun> voeg en plaas die script


Die inhoud van die artikel voldoen aan ons beginsels van redaksionele etiek. Klik op om 'n fout te rapporteer hier.

13 kommentaar, los joune

Laat u kommentaar

Jou e-posadres sal nie gepubliseer word nie. Verpligte velde gemerk met *

*

*

  1. Verantwoordelik vir die data: Miguel Ángel Gatón
  2. Doel van die data: Beheer SPAM, bestuur van kommentaar.
  3. Wettiging: U toestemming
  4. Kommunikasie van die data: Die data sal nie aan derde partye oorgedra word nie, behalwe deur wettige verpligtinge.
  5. Datastoor: databasis aangebied deur Occentus Networks (EU)
  6. Regte: U kan u inligting te alle tye beperk, herstel en verwyder.

  1.   Teël dijo

    Gebruik u toevallig 'n WM? Dit is dat dit ten minste in Arch met Gnome-Shell 3.16 die veranderinge in die volumekontroles behou, byvoorbeeld as ek die HDMI aansluit, wys dit my die maksimum volume, as ek koptelefoon aansluit, wys dit my baie laag en in die ingeboude luidsprekers amper die meeste.

    Alhoewel ek dit geruime tyd wou doen, was dit 'n teef wat die volume moes verlaag om die luidsprekers te kon gebruik sodat die geluid nie vir ander hard of irriterend was nie. Baie dankie vir die bydrae.

    1.    reën dijo

      vir niks x, ek gebruik xfce 😛

      1.    Teël dijo

        Ek het net onthou dat ek een keer na p0rn gekyk het en die koptelefoon en die hdp ontkoppel het en Shyla se gekerm gehoor het: c
        Die goeie ding is dat dit net 'n fragment van ten minste 'n ewige sekonde was en dat dit soos horrorfilms geklink het toe 'n prostituut XD vermoor is.
        As ek dit oordink, gaan ek dit by gunstelinge voeg

  2.   Yoyo Moreno dijo

    Hahahahahaha het dieselfde met my gebeur toe ek dit omstreeks middernag onbedoeld ontkoppel en 'n goeie Hard Core klink op volle volume XD, my familie was bang: v

  3.   noxonsagteware dijo

    Goeie inligting sal op 'n stadium vir my nuttig wees. Baie dankie

  4.   Andreser dijo

    U hou my nie vir die gek nie, u het na * of gay in Spaans gekyk en u koptelefoon is ontkoppel xD
    Dankie vir die bydrae, in Linux Mint bly die volume behoue, byvoorbeeld as ek stom sit en dan die koptelefoon verbind, sal ek in die koptelefoon klank hê en sonder dit.
    Groete.

    1.    reën dijo

      hahaha, nee maar in daardie gevalle werk dit ook (?)

      1.    Andreser dijo

        Ja, dit werk ook in daardie gevalle (͡ ° ͜ʖ ͡ °)

  5.   Deni dijo

    Goeie inligting, 'n voorstel, as die stelsel 'devd' ondersteun, hoe gaan ek voort om hierdie lêer te kopieer of te skep?

    [code] $ PREFIX / share / voorbeelde / cups / ulpt-cupsd.conf tot $ PREFIX / etc / devd / [/ code]

    1.    reën dijo

      Ek kon jou nie sê nie, is die cp-opdrag nie genoeg nie?

      1.    Deni dijo

        Nee, daar staan ​​dat die gids nie bestaan ​​nie en ek weet ook nie hoe om dit te skep nie.

  6.   fernando dijo

    Heheheh, as ek jou vertel dat dit al meer as een keer met my gebeur het en met dieselfde musiek, so skryf ek dit neer om dit later te installeer. Groete en in die naam van Heavy Metal dankie.

  7.   David dijo

    …… ~ $ sudo pacman -S ook -utils
    [sudo] wagwoord vir David:
    sudo: pacman: opdrag nie gevind nie