Как переключаться между наушниками и динамиками, не отключая их

У вас есть окончание строк (CRLF )в вашем скрипте bash, test-interactive.sh. Это, скорее всего, потому, что вы разработали этот скрипт в редакторе Windows, который по умолчанию заканчивает строки с \r\nвместо окончаний \nна *nix-машинах. Таким образом, когда скрипт запускается, он задыхается от дополнительных \r, которые вы видите ниже. Очистите свой скрипт перед запуском, выполнив

dos2unix test-interactive.sh
1
03.08.2020, 12:15
2 ответа

1. Поддержка программного переключения

Проверьте, поддерживает ли ваша звуковая карта программное переключение для передней аудиопанели. Некоторые старые материнские платы вообще не поддерживают переключение программного обеспечения. Некоторые звуковые карты имеют разъемы для обоих вариантов на материнской плате:программной и аппаратной коммутации. В этом случае убедитесь из руководства к материнской плате, что вы используете разъем с программным переключением.

2. Alsamixer Авто -Отключение звука

Авто -Отключение звука — это функция Alsa. Это гарантирует, что при подключении наушников другие аудиовыходы автоматически отключаются. Вы можете найти и отключить это в alsamixer. Откройте AlsaMixer, выберите свою звуковую карту с помощьюF6 , затем перейдите с помощью<и>и найдите Auto -Mute. Если он включен, отключите его с помощью клавиши со стрелкой вниз.

3. Конфигурация PulseAudio

Это была самая проблематичная часть для меня, потому что PulseAudio плохо документирован. Когда я отключил AutoMute на предыдущем шаге, динамики играли в обоих случаях. Независимо от того, переключился ли я на наушники или линейный -выход.

Так что мне пришлось еще раз заглянуть в AlsaMixer и понять, как полоски громкости реагируют на переключение звука в настройках или pavucontrol.

Линия -выход:AlsaMixer Line-out

Наушники:AlsaMixer Headphones

Как видите, после переключения на наушники почти все индикаторы громкости приглушились. Но как я узнал через некоторое время, громкость моих динамиков почему-то регулируется полосой Front . Итак, теперь последнее, что мне нужно было сделать, это настроить PulseAudio для отключения звука этой передней громкости -полосы после переключения на наушники.

Файлы конфигурации PulseAudio, которые нам нужно отредактировать, хранятся в /usr/share/pulseaudio/alsa-mixer/paths/. В моем случае я редактировал только файл analog-output-headphones.conf, но это может варьироваться в зависимости от конфигурации.Вы должны отредактировать файл как root, чтобы он содержал эти строки:

[Element Front]
switch = off
volume = off

Когда вы закончите, сохраните файл и перезапустите PulseAudio с помощью pulseaudio -k.

Переключение выхода теперь должно работать должным образом.

5
18.03.2021, 23:15

Вы можете переключаться с помощью ярлыка, используя это на вкладыше -:

[[ $(pacmd list-cards | grep "active profile" | cut -d " " -f 3-) = "<output:hdmi-stereo-extra1+input:analog-stereo>" ]] && pacmd set-card-profile 0 "output:analog-stereo+input:analog-stereo" || pacmd set-card-profile 0 "output:hdmi-stereo-extra1+input:analog-stereo"

В этом случае альтернативами являются hdmi-stereo-extra1+input:analog-stereoи output:analog-stereo+input:analog-stereo.Перечислите свои профили, доступные с помощью:

pacmd list-cards | grep "output:" | grep -v "available: no"
0
24.06.2021, 16:35

Теги

Похожие вопросы