скрипт отключения громкости при отключении наушников

пингвин-159784_640

Со мной случилось так, что, когда люди спали рано утром, я слушал тяжелую музыку на полной громкости и по ошибке отключил наушники, из-за чего она стала звучать по всему дому (я думаю, они меня ненавидели в в то время ха-ха). Итак, запрограммируйте небольшой скрипт, который при отключении отключает звук:

Первым делом нужно было установить Alsa-Utils чтобы легко управлять громкостью с помощью команд:

sudo pacman -S alsa-utils

Следующим шагом было обнаружение с помощью поиска в Google, что alsa сохраняет в простых текстовых файлах (его можно прочитать с помощью любого текстового редактора, в Windows все это было бы намного сложнее) состояние звуковых карт и что он принимает только копию файл, а затем сравните изменения.

Это файл:
/proc/asound/card0/codec#0

В некоторых случаях это может отличаться, например, если у нас более одной звуковой карты. Если вы хотите узнать больше, я оставляю ссылку на документацию alsa: http://alsa.opensrc.org/Proc_asound_documentation

Подключаю наушники и копирую файл:
mkdir $HOME/.audifonos && cp "/proc/asound/card0/codec#0" "$HOME/.audifonos/con.txt"

Затем я отключаю наушники и использую команду diff, которая показывает разные строки между двумя файлами:
diff "/proc/asound/card0/codec#0" ".audifonos/con.txt"

Есть некоторые данные, которые нас не интересуют, поэтому мы должны отфильтровать с помощью grep, чтобы отображались только строки со словом «Pin-ctls».

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

Если команда ничего не показывает на экране, значит, у нас есть наушники. поскольку он ничего не может вернуть, он возвращает ошибку.

Чтобы увидеть эту ошибку, мы набираем:
echo $?

Если он показывает нам по одному на экране, это говорит нам об ошибке.

комфорт

с другой стороны, если когда мы выполняем это, он что-то возвращает, тогда у нас отключены наушники, и в этом случае он не вернет ошибку:
echo $?

привет

Имея это в виду и зная bash, это легко сделать:

Headphones.sh

Я скачиваю его, даю разрешения на запуск, чтобы открыть его в первый раз, чтобы он «установился» (он только просит подключить наушники и скопировать файл, который объясняется в начале)
wget http://paste.desdelinux.net/?dl=5178 && chmod +x audifonos.sh && ./audifonos.sh

Чтобы закончить, я заставляю его запускаться автоматически каждый раз, когда я включаю компьютер

Из Xfce я перехожу в приложения> конфигурация> сеанс и запуск> автозапуск приложений> добавляю и помещаю скрипт


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Плитка сказал

    Вы случайно не пользуетесь WM? По крайней мере, в Arch с Gnome-Shell 3.16 он сохраняет изменения в регуляторах громкости, например, когда я подключаю HDMI, он показывает мне максимальную громкость, когда я подключаю наушники, он показывает очень низкий уровень громкости и встроенные динамики почти самый.

    Хотя на самом деле я пытался сделать это в течение некоторого времени, это была сука, чтобы уменьшить громкость, чтобы иметь возможность использовать динамики, чтобы звук не был громким и не раздражал других. Большое спасибо за ваш вклад.

    1.    дождь сказал

      зря 🙂, я использую xfce 😛

      1.    Плитка сказал

        Я только что вспомнил, что однажды смотрел p0rn, отключил наушники и hdp и услышал стоны Шайлы: c
        Хорошо то, что это был всего лишь фрагмент, по крайней мере, вечной секунды, и это было похоже на фильмы ужасов, когда убили проститутку XD
        Подумав, добавлю в избранное

  2.   Йеё Морено сказал

    Хахахахахаха, то же самое случилось со мной, когда я непреднамеренно отключил его около полуночи и хороший Hard Core зазвучал на полной громкости XD, моя семья испугалась: v

  3.   программное обеспечение noxons сказал

    Хорошая информация мне пригодится в какой-то момент. большое спасибо

  4.   Андресер сказал

    Вы меня не обманываете, вы смотрели * или гея на испанском и у вас были отключены наушники xD
    Спасибо за вклад, в Linux Mint сохраняется громкость, например, если я отключу звук, а затем подключу наушники, в наушниках у меня будет звук, а без них - нет.
    Привет.

    1.    дождь сказал

      хахаха, нет, но в тех случаях это тоже работает (?)

      1.    Андресер сказал

        Да, это тоже работает в тех случаях (͡ ° ͜ʖ ͡ °)

  5.   Дени сказал

    Хорошая информация, предложение, если система поддерживает devd, как мне продолжить копирование или создание этого файла?

    [код] $ PREFIX / share / examples / cups / ulpt-cupsd.conf в $ PREFIX / etc / devd / [/ code]

    1.    дождь сказал

      Я не мог сказать вам, разве недостаточно команды cp?

      1.    Дени сказал

        Нет, там написано, что каталог не существует, и я тоже не знаю, как его создать.

  6.   Фернандо сказал

    Хе-хе-хе, хорошо, если я скажу вам, что это случалось со мной более одного раза и с той же музыкой, поэтому я запишу это, чтобы установить позже. Приветствую и от имени Heavy Metal спасибо.

  7.   Давид сказал

    …… ~$ sudo pacman -S alsa-utils
    [sudo] пароль для Дэвида:
    sudo: pacman: команда не найдена