Alsa linux сброс настроек

Обновлено: 02.07.2024

Оригинал: Control Audio volume through the Ubuntu Command Line
Автор: Karim Buzdar
Дата публикации: 10 июля 2019 года
Перевод: А. Кривошей
Дата перевода: февраль 2020 г.

Человек, разбирающийся в терминале, найдет способ выполнить любое действие, находясь в командной строке. В основном мы делаем системные настройки в графическом интерфейсе Ubuntu, но есть определенные ситуации, когда вы можете сделать это из командной строки. ALSA или Advanced Linux Sound Architecture обеспечивает поддержку аудио для большинства дистрибутивов Linux.

В этой статье мы объясним, как вы можете установить пакет утилит ALSA, если он еще не установлен в вашей Ubuntu. Мы также объясним, как вы можете управлять звуковыми свойствами ваших звуковых карт с помощью:

Alsamixer - графический интерфейс для ALSA
Amixer - командный интерфейс для ALSA

Мы запускали команды и процедуры, упомянутые в этой статье, в системе Ubuntu 18.04 LTS.

Установка ALSA

Пакет Alsa-utils содержит утилиты Alsamixer и Amixer. Этот пакет доступен в официальных репозиториях Ubuntu и может быть легко установлен в командной строке с помощью команды apt-get.

Откройте терминал либо через системный поиск приложений, либо с помощью сочетания клавиш Ctrl+Alt+T.

Следующим шагом является обновление индекса репозиториев вашей системы с помощью следующей команды:

обновление индекса репозиториев

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

Теперь вы готовы установить Alsa-utils; вы можете сделать это, выполнив следующую команду от имени sudo:

установка alsa-utils

Система может попросить вас ввести пароль для sudo, а также запросить выбор Y/n для продолжения установки. Введите Y, а затем нажмите Enter; программное обеспечение будет установлено в вашей системе. Однако процесс может занять некоторое время в зависимости от скорости вашего интернета.

Использование Alsamixer - графического интерфейса для Alsa

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

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

Alsamixer отобразит свойства вашей звуковой карты по умолчанию следующим образом:

Alsamixer

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

Представления Alsamixer

Когда вы открываете интерфейс Alsamixer, вы видите его в представлении Payback. Это означает, что из этого представления вы можете управлять только параметрами, связанными с воспроизведением звука. Два других вида, на которые вы можете переключиться:

Представление Capture

Представление Capture

Представление All

Чтобы просмотреть свойства, связанные как с захватом, так и с воспроизведением звука, вы можете переключиться в режим «All», нажав клавишу F5, когда открыт Alsamixer. Вот так выглядит All:

Представление All

Представление Playback

Чтобы вернуться в режим Playback, нажмите кнопку F3.

Выбор звуковой карты

Утилита Alsamixer отображает свойства карты, которая выбрана «по умолчанию». Для просмотра/редактирования свойств другой звуковой карты, установленной в вашей системе, вы можете нажать F6.

просмотр/редактирование свойств звуковой карты

Меню звуковой карты, как показано выше, появляется при нажатии клавиши F6. Вы можете перемещаться вверх и вниз по меню и затем нажать Enter, чтобы выбрать другую карту. Вы также можете вручную ввести имя карты, если оно не отображается в списке, выбрав пункт меню «enter device name».

Вы можете выйти из этого меню, нажав Esc.

Управление свойствами звука

Самая важная часть использования Alsamixer - это возможность увеличивать и уменьшать громкость определенного устройства.

Вы можете перемещаться влево и вправо, чтобы выбрать устройство, громкость которого вы хотите увеличить, уменьшить или отключить.
Когда вы выбрали устройство, используйте клавиши вверх и вниз, чтобы увеличить или уменьшить громкость соответственно.
Чтобы отключить устройство/элемент управления, нажмите клавишу m, когда выбрано это свойство.
Для получения информации обо всем, что вы можете сделать с помощью Alsamixer, нажмите элемент управления F1. Это отобразит справку следующим образом:

окно справки

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

Использование Amixer для управления звуком с помощью команд

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

Введите следующую команду, чтобы увидеть все, что вы можете сделать с Amixer:

окно справки amixer

Ваша команда amixer выглядит в целом так:

Во всех ваших командах amixer вам нужно указывать три вещи:

1. Звуковая карта (номер карты), свойством которой вы хотите управлять.
2. Устройство/элемент управления, громкостью которого вы хотите управлять.
3. Значение громкости в процентах или децибелах, которое вы хотите установить, увеличить или уменьшить. Вы также можете указать, хотите ли вы отключить звук для звуковой карты.

Команда scontrols позволяет просматривать список элементов управления, которыми вы можете управлять:

Команда scontrols

1. Следующая команда установит громкость на главном элементе управления/устройстве первой звуковой карты на 100%.

2. Следующая команда установит громкость на элементе управления/устройстве Speaker второй звуковой карты на 30%.

3. Следующая команда установит громкость на элементе управления/устройстве Speaker второй звуковой карты на 3 дБ.

4. Следующая команда увеличит громкость на элементе управления/устройстве Speaker второй звуковой карты на 2 дБ.

5. Используйте следующие команды, чтобы отключить или включить звук устройства.


Для начала более подробно о сути задачи: есть ноутбук Asus N55 с Kubuntu 17.10 на борту. Нужно добиться той же конфигурации, которую можно получить на Windows:

  • Без подключения сабвуфера драйвер работает в режиме 2.0
  • При подключении сабвуфера драйвер переключается в режим 2.1. При этом переключении к каналам применяются частотные фильтры — НЧ для сабвуфера и ВЧ для колонок
  • При подключении наушников, вывод звука переключается на них, вывод на колонки/сабвуфер приостанавливается
  • При необходимости низких задержек можно с помощью выбора другого драйвера перейти в режим, обеспечивающий монопольный захват звуковой карты

Сразу после установки получаем нерабочий сабвуфер и нерабочие наушники.
В результате моих опытов мне удалось добиться следующего состояния системы:

  • Драйвер работает в режиме 2.1
  • При подключении сабвуфера ничего не изменяется
  • При подключении наушников, вывод звука переключается на них, вывод на колонки/сабвуфер приостанавливается, но фильтры продолжают работать и в наушники идут только ВЧ
  • При необходимости низких задержек можно адресоваться к карте через ALSA, но в этом режиме не работает сабвуфер, фильтры. Но работает переключение на наушники

Для знакомства с LMMS(с которой как оказалось нормально работать нельзя, но это отдельная тема) этого в общем-то хватает.
Если вы тоже добрались до этого состояния, то ничего нового этой статьей я вам не расскажу.

Вы когда-нибудь задумывались о том, как устроена звуковая система Linux? Вот и я нет — обычно звук либо был не нужен, либо как-то работал, колонки играли — ни о каких фокусах подключения сабвуфера или наушников речи не было.
Похоже, теперь самое время узнать об этом немного больше. Гугление показало следующую картину:


    — это компонент, обеспечивающий взаимодействие звуковых железок с ядром. Обеспечивает самый прямой доступ к устройству из разумных вариантов, но при этом доступ этот монопольный — включить песню в VLC и открыть видео в браузере, увы, не получится.
  • Для этих целей как раз и нужен PulseAudio — это sound-сервер, занимающийся маршрутизацией звуковых потоков. Именно он будет отвечать за микширование потоков звука из разных приложений при одновременном использовании. Ценой за такое удобство является дополнительная задержка звукового потока.
  • Существует еще JACK — аналог PulseAudio, позиционирующийся как "профессиональный" sound-сервер. Обещает крутые возможности по маршрутизации и минимальную задержку при диспетчеризации потоков.

Мало кто говорит, что PulseAudio де-факто является стандартом для интеграции звука, по крайней мере в Ubuntu. Практически любой софт, который издает звуки, будет с большой долей вероятности пользоваться PulseAudio API. FF, например, для поддержки JACK надо отдельно собирать.
Поэтому удалять PulseAudio не стоит, если вы не уверены, что все чем вы будете пользоваться, умеет работать с JACK. Видимо, поэтому существует еще вариант интеграции Jack-PulseAudio. Но от этого варианта я отказался, т.к. для работы в том софте, где требуются низкие задержки, меня устраивает монопольный доступ через ALSA(под Windows это работает так же — там, где нужна низкая задержка, запрашивается монопольный доступ). Возможно, когда дело дойдет до установки какого-нибудь Ardour, мне придется вернуться к этому варианту.

Так, ну хорошо, JACK не нужен. Выходит, чтобы все заработало, мне надо настроить ALSA-компонент для своей карточки и интеграцию его с PulseAudio

PulseAudio

Тут нам из коробки предлагают вот такую UI консоль


Мне кажется, к такому инструменту пояснения излишни. После применения настроек вы сразу сможете слышать изменения, так что пробуйте.
Еще amarao советует обратить внимание на pactl /pacmd. Если я доберусь — напишу, что там к чему с этими утилитами

Диагностика ALSA

Первым делом понадобятся хоть какие-то инструменты для диагностики — это пакет alsa-utils
sudo apt install alsa-utils
Теперь посмотрим, как видит наше оборудование система
aplay -l


Кроме того, настройки надо проверять. Для этих целей обнаружилась утилита speaker-test


вызов speaker-test --help покажет, что умеет утилита, но мне особенно интересна конфигурация
speaker-test -Dplughw:1,0 -c4

  • -D — id устройства. 1,0 — это индексы устройства и подустройства, их мы видели выше в выводе aplay
    а вот структура текстовой части описана тут
  • -c — количество каналов на которые будет выведен тест
    В моем случае первые 2 канала работают хорошо, а вот дальше интересно — 3й канал LFO не звучит, но зато звучит 4й канал. Такое ощущение, что LFO настроен как… стерео. Мне кажется, это часть моей проблемы.

Настройка ALSA

Тут и тут советуют поизучать dmix — это модуль микшера каналов в ALSA — буду смотреть

alsamixer

alsamixer — псевдографический интерфейс микшера. Половина советов по настройке ограничивается этой утилитой. И действительно, именно эта утилита часто покажет, когда канал неожиданно замьютился или у него сбросился уровень громкости.


Но настройка в микшере результата не дала.

hdajacksensetest

Следующая полезная утилита — hdajacksensetest. Показывает какие разъемы детектируют подключение внешних устройств.


Ок, я вижу, что мой внешний сабвуфер подключен на порт 0x1a.
Давайте попробуем найти как можно объяснить карте, куда выводить LFO.

hdajackretask

Большинство советов по настройке маппинга указывают на утилиту hdajackretask:


Тут вроде бы все понятно — есть порты, есть маппинг. К сожалению, никакие манипуляции с портом 0x1a к успеху не привели.
Может, после настройки надо явно перезагружать сервисы?
sudo alsa force-reload
Нет, смотрим дальше.

HDAAnalyzer

Для настройки маппинга есть еще одна утилита:
скачать ее можно в виде python-скрипта(. ) вот тут.


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

Правка конфигов

PulseAudio

/usr/share/pulseaudio
в папке alsa-mixer тут лежат конфиги. Т.к. Pulseaudio более-менее работает тут я ничего трогать не стал.
/etc/pulse/daemon.conf
Как я понял, это настройки службы pulseaudio — один из немногих конфигов, изменения в котором на что-то влияют. именно тут настройками:
enable-lfe-remixing = yes
lfe-crossover-freq = 200
я заставил звучать свой сабвуфер из Pulseaudio так, как он должен. Для lfe-crossover-freq 200 — это очевидно частота среза в герцах.
Но тут же становится очевидно, что настроить нечто более сложное(при подключении наушников прекращать отправлять бас на сабвуфер) в этом конфиге возможности нет.

/usr/share/alsa/*
Тут лежит несколько shell-скриптов, в т.ч. alsa-info.sh, который может быть полезен при подготовке дефекта в трекере и т.д.
а в папке pcm какие-то конфиги, разобраться в которых мне не удалось:

Трогать их я пока не решился.
/etc/modprobe.d/alsa-base.conf — второй доказанно полезный конфиг. Вот эта строчка, дописанная в низ конфига, реально заставила работать наушники под ALSA:
options snd-hda-intel model=auto,auto probe_mask=1
Про настройку этого конфига написано довольно много. Одна из его целей, как я понял — сопоставить устройствам кодеки(model). Кодеки это… какой-то пресет маппингов… Есть табличка (копия есть тут). Думаю, в большинстве случаев для стандартных конфигураций этого действительно достаточно.
Там описаны модели для разных контроллеров. Но если для вас они не срабатывают, то вам рекомендуют добавить свою конфигурацию.
Звучит классно, но тут я должен сделать 2 ремарки:

  • гайда как сделать свою конфигурацию — что конфигурить, куда сохранять, коммитить и т.д. я не нашел.
  • После изменения настроек в alsa-base.conf нужно перезагружать ОС. Без перезагрузки никакие sudo alsa force-reload и даже хардкорный echo 1 | sudo tee /sys/class/sound/hwC1D0/reconfig не заставляют ALSA перечитать кодек устройства.

Кстати, в /sys/class/sound/hwC1D0/ — лежат файлы уже непосредственно устройства, т.е. как я понял hdajackretask работает именно с этими файлами. Тут тоже, наверное, можно сделать что-то полезное, если знать куда что писать.

Общий вывод, который я могу сделать по результатам проделанной работы: в целом видно, что если GUI, например, сообщество более-менее занимается, то звуковая подсистема явно остается за бортом.
На сегодняшний день возможности использования этой подсистемы не выдерживают никакой конкуренции с аналогами в других популярных ОС.
Такие досадные проблемы, как неработающий сабвуфер или наушники, или отсутствие НЧ-фильтра для сабвуфера, заставляют еще раз подумать, прежде чем отказываться от предустановленного софта. Ведь никому не хочется получать от своей железки меньше отдачи из-за кривостей ОС.

Пакет alsa-utils составляет неотъемлемую часть ALSA и содержит множество крайне полезных программ, в том числе и сценарий инициализации ALSA. Поэтому мы настоятельно советуем вам установить alsa-utils .

Листинг 7. Установка alsa-utils

Примечание

Eсли вы включили поддержку ALSA в вашем ядре, а не собрали её в качестве модулей, пожалуйста, перейдите в раздел сценарий инициализации ALSA. Всё, что осталось сделать всем остальным, это настроить ALSA. Сделать это очень просто благодаря утилите, входящей в состав alsa-utils — alsaconf .

3.2. Настройка

Последние версии udev (>=udev-103) в некоторой степени предоставляют автоматическое конфигурирование вашей аудио карты на уровне ядра. По возможности старайтесь полагаться на автоматическую настройку и позвольте ядру настроить вашу звуковую карту. В противном случае, чтобы настроить карту, используйте alsaconf , как это показано ниже.

Примечание

Пожалуйста, завершите все программы, которые могут обратиться к звуковой карте во время работы alsaconf .

Чтобы настроить вашу звуковую карту просто наберите alsaconf в командной оболочке с правами root.

Листинг 8. Запуск alsaconf

Вы увидите изящный управляемый с помощью меню интерфейс программы, которая автоматически исследует ваши устройства и попробует найти вашу звуковую карту. Вас попросят выбрать вашу звуковую карту из списка. Как только это будет сделано, вас спросят разрешения автоматически сделать необходимые изменения в /etc/modules.d/alsa . После этого программа изменит настройки громкости на оптимальный уровень, выполнит update-modules и запустит службу /etc/init.d/alsasound . Как только alsaconf завершит работу, вы сможете продолжить с настройки сценария инициализации ALSA.

3.3. Сценарий инициализации ALSA

Мы почти завершили настройку. Вне зависимости от выбранного вами способа установки ALSA, вам понадобится что-то, что будет загружать модули или инициализировать ALSA и восстанавливать настройки громкости при загрузке системы. Сценарий инициализации ALSA, называемый alsasound , сделает всё это для вас. Добавьте его в загрузочный уровень исполнения.

Листинг 9. Добавление ALSA в загрузочный уровень исполнения

Теперь проверьте файл /etc/conf.d/alsasound и убедитесь, что переменная SAVE_ON_STOP установлена в значение yes, тогда ваши настройки звука при выключении системы будут сохраняться.

3.4. Группа audio

Перед тем как начать проверку звука, необходимо сделать одну последнюю важную вещь. Главное правило в операционных системах *nix гласит: «не запускай ничего с правами root, если этого не требуется». И в данной ситуации это правило тоже применимо ;) Каким образом? Пожалуй, большую часть времени вы будете работать под учётной записью пользователя, при этом слушать музыку или иметь доступ к звуковой карте. Чтобы вы могли это делать, вы должны быть в группе audio. Тут то мы и добавим пользователей в эту группу, чтобы у них не было проблем с доступом к аудио устройствам. Мы воспользуемся gpasswd , так что вы должны иметь права root, чтобы сделать это.

Листинг 10. Добавление пользователей в группу audio

3.5. Проверка громкости!

Теперь все настройки и необходимые предпосылки выполнены, так что давайте заставим ALSA работать. Если вы запускали утилиту alsaconf , то можете пропустить этот шаг, так как alsaconf уже всё сделал за вас.

Листинг 11. Запуск сервиса

Теперь мы позаботились обо всём, что может быть необходимым, нам нужно проверить громкость, так как в определённых случаях звук выключен. Для этого мы воспользуемся alsamixer .

Листинг 12. Запуск alsamixer

Важно

Если у вас проблемы с запуском alsamixer и вы получаете ошибки, подобные этой: «alsamixer: function snd_ctl_open failed for default: No such file or directory», то, скорее всего, проблема в том, как демон udev инициализировал устройства. Выполните killall udevd; udevstart для перезагрузки устройств в /dev и попробуйте снова alsamixer . Это должно решить проблему.

Вот так может выглядеть микшер ALSA при первом запуске. Обратите внимание, что уровни каналов Master и PCM занижены и что под ними буквы MM. Это означает, что они выключены. Если вы попробуете что-нибудь проиграть, в то время пока alsamixer в таком состоянии, то вы ничего не услышите из ваших динамиков.


Главное окно микшера ALSA, каналы выключены

Для начала включим каналы и установим необходимые уровни громкости.

Внимание

Оба канала Master и PCM должны быть включены и установлены в слышимый уровень громкости, если вы хотите услышать что-нибудь из ваших динамиков.

Для перемещения между каналами используйте клавиши влево и вправо. ( <- и -> ).

Для того чтобы выключить/включить канал, например Master, выберите его и нажмите клавишу m .

Чтобы увеличить или уменьшить уровень громкости, используйте клавиши вверх и вниз.

Примечание

Будьте осторожны при установке значений для Bass и Treble. Обычно для обоих оптимально значение 50. Слишком высокие значения Bass могут вызвать дребезжание неспособных воспроизводить глубокие басы динамиков.

После того как вы всё сделаете, ваш микшер ALSA должен выглядеть, так, как это показано ниже. Заметьте, что вместо MM стоит 00 и уровни громкости в оптимальном значении.


Микшер ALSA готов зажигать

3.6. Проверка звука!

Наконец-то. Какие-нибудь звуки. Если всё прошло успешно, то теперь вы сможете услышать музыку. Быстрый способ проверить — это воспользоваться консольной командой, наподобие media-sound/madplay . Вы также можете использовать что-нибудь более известное, например, mpg123 . Если вы поклонник формата OGG, используйте программу ogg123 из пакета media-sound/vorbis-tools . Используйте любой удобный для вас плеер. Как всегда, emerge — всё что вам нужно.

Звук в системе - вещь очень необходимая. Вы можете захотеть послушать музыку, посмотреть фильм, пообщаться с друзьями через голосовую связь или видеочат. Для всего этого вам нужно будет, чтобы система поддерживала работу со звуком. И не менее важно, чтобы звук воспроизводился хорошо.

В этой статье мы не будем рассматривать установку драйверов или выполнить настройку звука linux по умолчанию. Мы будем говорить о комфортном управлении звуком. О том, как заставить звуковую систему работать лучше, чтобы получаемый звук соответствовал вашим желаниям.

Как работает аудио в Linux

Если не вдаваться в подробности, то вот небольшая схема того, как будет работать звук в Linux:


Здесь есть источник и есть цель. Что-то создает звук, что-то должно его получить и обработать, а затем, наконец, воспроизвести. Для большинства повседневных задач мы используем обычные приложения, например, VLC для генерации звука и колонки или наушники для воспроизведения.

В обратном порядке то же самое. Устройство, например, микрофон, генерирует звук, а затем отправляет его приложению, например, Jitsi или Skype. Модель всегда работает похожим образом. Но между этими двумя точками существует звуковая подсистема Linux.

Если не углубляться в историю, для управления звуком linux использовалась Advanced Linux Sound Architecture (ALSA). Если быть точным, то она и сейчас используется. Но в современных дистрибутивах настройка звука в linux выполняется без непосредственной настройки ALSA пользователем. Вместо этого применяются инструменты более высокого уровня - PulseAudio.

Почему именно PulseAudio?

Почему Pulse так необходим? Это не так. ALSA работает настолько хорошо, что многие дистрибутивы только сейчас начинают интегрировать Pulse по умолчанию. Тем не менее работа с ALSA может потребовать многих часов ручной настройки.

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

Сейчас мы требуем от нашего компьютера намного больше чем раньше. Раньше аудиовыход подключался к наушникам или колонкам и все. Сейчас же часто необходимо подключать компьютер к пучковой аудиосистеме, телевизору и получать звук с микрофона по Bluetooth.

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

Настройка Pulse

Чтобы настроить воспроизведение звука с помощью Pulse вам понадобится выполнить три вещи:

  • Проверьте соединения, как физические, так и виртуальные;
  • Подключите звуковой выход или вход к источнику звука;
  • Управляйте целями с помощью Pulse Audio Control (pavucontrol).

Шаг 1. Проверьте оборудование

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

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

Шаг 2. Проверьте ваше приложение

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


В приложении Google Hangouts настройки более упрощены:


Вам нужно убедиться, что приложение отправляет звук правильной подсистеме. Если сомневаетесь, лучше передать звук Pulse:

  • Отправьте звук Pulse и сможете управлять его воспроизведением динамически с помощью панели управления Pulse;
  • Если хотите получить ручной контроль - отправьте звук напрямую в ALSA. Это может понадобиться если вы используете такие профессиональные JACK или Patchage. Им нужно иметь полный контроль над маршрутизацией звука.

У Pulse есть плагин для ALSA поэтому даже если вы направите звук в ALSA, вы все равно сможете управлять им с помощью Pulse. Сигнал не будет перехвачен, так что об этом можно не беспокоиться.

Шаг 3. Настройка звука в pavucontrol

С помощью панели управления звуком PulseAudio или pavucontrol вы можете выполнять все необходимые действия. По умолчанию она находится в настройках Gnome, но может быть установлена отдельно. Для KDE утилита будет называться pavucontrol-qt.

Вы можете использовать pavucontrol чтобы настроить громкость звука и маршрутизацию на вашем компьютере. Возможно, вы ею уже пользуетесь ежедневно, но не знаете что это настройка pulseaudio. Когда вы регулируете громкость в своем окружении рабочего стола, вы используете те же инструменты.

Панель управления состоит из пяти вкладок:

  • Конфигурация - настройка звуковых карт. Она не используется часто, один раз устанавливаете нужные значения и забываете;
  • Устройства ввода - доступные устройства ввода, что-то, что может генерировать звук, например, микрофон или веб-камера;
  • Устройства вывода - доступные устройства вывода, такие как колонки или наушники, а также USB гарнитуры;
  • Запись - активные сеансы записи, например, браузер ищет аудиовход для чата или программа для записи, например, Audacity.
  • Проигрывание - активный поток звука, которые воспроизводится в данный момент. Вы можете менять громкость для одного или для двух каналов по отдельности для каждого приложения.


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

Шаг 4. Маршрутизация звука в Pulse

Вы можете выбрать на какое устройство будет передаваться ваш звук с помощью Pulse. Настройка звука Pulseaudio выполняется очень просто. Например, попробуйте что-то простое. Включите какую-либо музыку, затем перейдите на вкладку конфигурация.

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


Вы можете видеть, что здесь, кроме аудиовыходов есть HDMI. После установки новой видеокарты, она может перехватить приоритет вывода у звуковой. Но вы уже знаете куда смотреть. В остальных же случаях параметры не изменятся пока вы их сами не измените.

Теперь давайте предпримем что-то более сложное, например, запишем воспроизводимый звук в файл. Откройте Audacity и в настройках выберите источник звука Pulse. Иногда может быть Default Line:0


Затем начните запись, вы увидите что пишите тишину:


Дальше вернитесь к панели управления Pulse, перейдите на вкладку Запись и выберите источник для Audacity вместо Встроенное аудио - Monitor Встроенное аудио, дальше вы увидите как началась запись:



Таким образом, вы можете перенаправлять звук для приложений. Многие проблемы со звуком возникают из-за того, что система использует не то аудиоустройство по умолчанию. Возможно, ваша USB камера не установлена как стандартный аудиовход. В таком случае вы просто не получите звука.

То же самое верно для аудио. Если вы смотрите фильм и не слышите звук, проверьте Pulse. Возможно, он отправляется на неактивное устройство или громкость отключена.

Выводы

На компьютерах всегда были проблемы со звуком. Звуковым устройствам нужны драйвера, операционной системе нужно обнаружить их и управлять, а пользователь должен понимать как работают элементы управления. Мы рассмотрели как выполняется настройка звука в Linux. И да, это 2017 и Linux может воспроизводить звук. И даже больше, он может управлять звуком. Надеюсь, эта информация была полезна для вас.

Читайте также: