Зачем нужно менять выходное аудиоустройство по умолчанию в Debian 10?

Зачем нужно менять выходное аудиоустройство по умолчанию в Debian 10?

tl;dr Я хочу переключаться между наушниками/усилителем, не меняя никаких настроек. Как это сделать?

В Windows все аудиовыходы были доступны одновременно, поэтому я мог отправлять звук на внешний усилитель (подключенный к заднему разъему) и/или на наушники (подключенные к переднему разъему) без каких-либо изменений в конфигурации.

В Debian мне нужно было установить pavucontrol и изменить "Output Devices", "Built-in Audio Analog Stereo", "Port" на "Headphones (unplugged)" вместо "Line Out (plugged in)" по умолчанию, чтобы использовать наушники. При выборе по умолчанию звук идет только на задний разъем. После изменения на "Headphones (unplugged)" звук идет как на задний, так и на передний разъемы. Если звук может идти на оба, почему это не опция по умолчанию в каждой системе Linux?

решение1

Если у вас подключены наушники, а там написано "Наушники (отключены)", это означает, что обнаружение подключения работает неправильно. Либо он определяет ваш аудиовыход как способный к обнаружению, хотя на самом деле это не так, либо он не может определить, подключены ли ваши наушники.

И почему отключенный выход отключен? Это, скорее всего, позволит сэкономить электроэнергию на ноутбуках. При работе от батареи каждая капля энергии имеет значение. И это не вредит настольным компьютерам,предполагая, что информация о подключении/отключении верна,что не соответствует действительности в вашем случае.

Обнаружение штекеров работает с использованием таблицы прошивки, которая описывает, какие входные штекеры обнаружения штекеров аудиочипа связаны с какими физическими разъемами. К сожалению, у поставщиков иногда возникают расхождения между таблицей прошивки и фактической аппаратной разводкой, которые затем исправляются в выпущенных драйверах Windows. Затем пользователям Linux необходимо определить ошибки разводки, специфичные для аппаратной модели, и сообщить об этом разработчикам драйвера, чтобы аудиодрайвер мог применить специфичную для модели причуду к информации, считываемой из таблицы прошивки.

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

Аудиочип HD-Audio также может иметь функцию автоматического отключения звука, которая может отключать выходы динамика/линии при обнаружении подключения наушников. Обычно вы можете получить доступ к этой функции с помощью alsamixer -c 0(вам может понадобиться -c 0опция, чтобы явно указать, что вы хотите микшер фактического аудиочипа, а не слой PulseAudio поверх него). Если есть переключаемая настройка с надписью «Auto-Mute Mode», то это все. В Debian 10 она, похоже, обычно отключена по умолчанию, но вы можете проверить это.

Если на вашем шасси установлен старый аудиовыход типа AC-97, то в нем может быть реализована аппаратная функция отключения других выходов при подключении наушников, и в этом случае ее нельзя будет легко отключить.

alsa-tools-guiПакет Debian включает hdajackretaskинструмент, который может быть использован для (помимо прочего) манипулирования информацией об обнаружении штекеров. Если вы обнаружите настройки, которые заставляют ваше обнаружение штекеров работать правильно (или просто отключают обнаружение неработающих штекеров, если это лучшее, что вы можете сделать) в вашем оборудовании, пожалуйста, сообщите об исправлении и модели вашей системы/материнской платы разработчикам аудио Linux, чтобы специфическая для вашей модели особенность вашей системы могла быть добавлена ​​в драйверы и автоматически компенсирована.

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

решение2

Возможно, вы сможете обойти свою проблему, установивpaprefs, затем запустите его, перейдите на вкладку «Одновременный вывод» и включите виртуальное устройство вывода:

Настройки PulseAudio, на которых показана вкладка «Одновременный вывод»

Закройте настройки, перезапустите PulseAudio ( pulseaudio -k), и вы должны увидеть новый вывод:

Диалог выбора устройства вывода звука PulseAudio

Выберите это, и ваш звук будет отправлен на все настроенные устройства одновременно. Возможно, это все равно не отправит звук на выходы наушников, если они не будут обнаружены как подключенные...

Связанный контент