Магия pipewire. Настройка качественного звука в Linux

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
| Гайд | ИИ, сервисы и приложения

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

В настоящее время актуальными системами реализации звука в Linux принято считать: 

  • ALSA — это одна из старейших звуковых подсистем ядра Linux, которая по своей сути является встроенным звуковым драйвером на уровне ядра Linux. Обеспечивает минимальные задержки, но очень капризна при работе c современными беспроводными устройствами и с несколькими звуковыми потоками.
  • PulseAudio — звуковой сервер/ретранслятор расположенный между ядром системы и физическими устройствами ввода и вывода звука. Позволяет управлять множеством звуковых потоков, изменять их частоту, работать с беспроводными устройствами. В общем, лишён почти всех недостатков ALSA, но прилично искажает изначальный сигнал и имеет весомые задержки.
  • Pipewire — современная реализация звукового сервера/ретранслятора, что по принципу работы полностью аналогичен PulseAudio. Лишён почти всех недостатков Pulseaudio и имеет обширную совместимость с множеством устройств прямо из коробки.

Разбирать более подробно или затрагивать ещё какие-либо системы реализации звука в Linux не имеет большого смысла, если вы не являетесь музыкантом и не занимаетесь записью множества звуковых потоков через профессиональные интерфейсы. Так что не будем тянуть кота за хвост и перейдём к установке и настройки самого современно и качественного звукового сервера в Linux - pipewire.

Система автора

Подготовка

Прежде чем приступать к установке и настройки ретранслятора, необходимо правильно отрегулировать ALSA.

Выполним установку ALSA и вспомогательных пакетов:

sudo pacman -S alsa alsa-utils alsa-firmware alsa-card-profiles alsa-plugins

  • ALSA — звуковой драйвер ядра (обычно присутствует).
  • Alsa-utils — консольный микшер (alsamixer).
  • Alsa-firmware — драйверы для различных звуковых карт.
  • Alsa-card-profiles — готовые профили.
  • Alsa-plugins — различные алгоритмы шумодава и прочее ПО.

После окончания установки вводим в терминале команду alsa-utils для вызова консольного микшера.

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

  • Клавиша F6 это выбор звуковой карты.
  • Клавиша F3 переключает на настройки устройств ввода (микрофон).
  • Клавиша F4 отображает настройку устройств вывода (колонки).
  • Для включения или выключить регуляторов служит клавиша M.
  • Регулировка значений выполняется с помощью стрелок.

Здесь каждый сам решает, что и как подкрутить. Тем не менее, если шкала Master (общая громкость) стоит не на 100, то будет логично с помощью стрелок на клавиатуре (вверх) её задрать на максимум. Всё остальные настройки - по собственному усмотрению.

Сохраняем изменения командой в терминале:

sudo alsactl store

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

Установка и настройка Pipewire

Выполним базовую установку Pipewire и вспомогательных пакетов:

sudo pacman -S pipewire pipewire-alsa pipewire-pulse pipewire-jack pavucontrol

  • Pipewire — радиосервер.
  • Pipewire-alsa — модуль расширения для перехвата запросов ALSA в pipewire.
  • Pipewire-pulse — модуль расширения для перехвата запросов PulseAudio в pipewire.
  • Pipewire-jack — модуль расширения для перехвата запросов jack в pipewire (уменьшение задержки).
  • Pavucontrol— удобный графический микшер.

Активируем демона:

systemctl --user enable --now pipewire.service pipewire.socket pipewire-pulse.service wireplumber.service

Запустим красивый графический микшер pavucontrol командой в терминале:

pavucontrol

Выберем нашу звуковую карту и выставляем режим: "Аналоговый стерео дуплекс". Он позволяет задействовать одновременно устройство ввода и вывода. В других вкладкам редактируем громкость наших устройств до желаемого уровня.

Windows vs Linux

Сравним ради интереса звучание Windows и Linux в S.T.A.L.K.E.R.: Тень Чернобыля при 16 Бит 48 кГц.

Несмотря на сжатие YouTube, разница в качестве очевидна.

Заключение

Вот, собственно, и всё. Посредством новейшего ретранслятора pipewire и удобного графического микшера pavucontrol мы всего за пару кликов обеспечили поддержку беспроводных гарнитур, качественный звук, минимальные задержки и удобное регулирование. Конечно, можно было бы заморочиться и установить битрейт повыше, кодек получше, ядро с уймой патчей, но это нужно лишь аудиофилам. Уважайте свободу, используйте Linux и ни в коем случае не предавайте себя.

Автор не входит в состав редакции iXBT.com (подробнее »)
Об авторе
Сисадмин и любитель эльфиек.

24 комментария

T
Это магия REALTEK драйвера. Под Linux разрабу драйвера alsa для realtek получилось запустить с какими то параметрами железо методом тыка, больше драйвер не трогают пока не будут жалобы. Так как нет никаких даташитов, работает и ладно. Под Windows сам realtek делает свой драйвер включая множество магических данных посылаемых на чип для инициализации и конфигурации. Такие как частоты среза и крутизну фильтров и настройки DSP.
Любой USB dac под Linux и Windows звучит одинаково, если нет каких то проблем в ОС с прерываниями и плохими драйверами. Что не скажешь про встроенные realtek.
87638502@vkontakte
Не совсем, проверка была на разных ПК с разными звуковухами.
j
Как-то маловато. Для Pulse существуют офигенные плагины, например Лимитер, где можно задать предусиление и верхнюю границу, чтобы отчётливо слышать шорохи, шаги, тихий разговор в кино, и при этом не поднимать громкость в колонках, чтобы какие-нибудь выстрелы не били по ушам. Особенно актуально вечером или если надо послушать лектора с неидеальной дикцией.
(Кстати, я использую для вечернего кино Лимитер, хотя по уму для этой цели существует Компрессор, но настроить его мне пока не удалось. Тоже тема для ГАЙДОВ)
j
так вот, есть ли подобные плагины в pipewire? есть ли запоминание уровня громкости раздельно для наушников и для колонок, как в Pulse
370582630@vkontakte
Все вышеперечисленное вами присутствует в EasyEffects
87638502@vkontakte
Все плагины Pulse теперь обратно совместимы с pipewire, но зачем вам такие костыли?
Установите Helvum и вы сможете менять каналы и прохождение звукового потока на прямую через удобный графический интерфейс.
j
всем спасибо, пойду пробовать
N
«Конечно, можно было бы заморочиться и установить битрейт повыше, кодек получше, ядро с уймой патчей, но это нужно лишь аудиофилам. „
Лучше бы написал статью для аудиофилов со сборкой аудиофильского реалтайм ядра. А то вся статья сводится к банальной установке pipewire.
87638502@vkontakte
В этом и был смысл. Помочь новичкам, а не аудиофилам.
П
Не понял, где показано в каком режиме выводится звук? Какие значения частоты/битности стоят в конфиге альсы и что прописано в конфигах пайпвайр? Какие алгоритмы ресемплинга используются?
ЗЫ было бы полезно, если бы автор привёл разжёванный пример настройки pipewire в части конфигурирования аудиоустройств в плане настроек частоты, битности, ресемплера и тому подобного.
87638502@vkontakte
Все значения по умолчанию из коробки. Это очевидно. 16 Бит 48 кГц.
П
Очевидно то, что я сейчас на диване лежу. А что там в конфигах pipewire и как оно там аудиопоток через себя пропускает — совсем не очевидно. И совсем не очевидно что там у вас в конфигах пульсы и альсы накручено.
87638502@vkontakte
Я ещё раз повторяю, что конфигурация пульсы и альсы всегда из коробки, установлена только громкость.
d
Статья нужная, однозначно!
Но не в таком виде!
Поскольку как уже отметили, здесь просто показана установка пакетов, которые уже из коробки стоят во всех современных дистрах.
Название статьи опять же за качественный звук, если так, то меня интересует формат подачи звука а-ля асио или васапи эксклюзив (т.е условный автомат частоты, и отсутствие вмешательства в сигнал, монопольный вывод) как это сделано в винде.
Да в лине есть аналог асио, это насколько я знаю, есть альса, но каких то внятных замеров а-ля луп режим, или с двух разных карт вход-выход, с графиками, с блек джеком и куртизанками, я не видел нигде, а очень, знаете ли хотелось бы!
Ибо в свое время некоторые производители ПО грешили махинациями, как то вмешательства в сигнал различными приблудами а-ля Nahimic (3д паранормирование в реальном времени, на уровне системы, весьма всратое, прошу заметить), или например обещание автомата частоты, но на деле на графиках имд начинает показывать каки то карусели, явно намекая на передискретизацию, или например всрато настроенный цифровой фильтр, когда при 0 dBFS (100% микшера) идет клип, и надо держать не выше уровня -3 dBFS (80% микшера) и прочие веселые вещи, которые можно отловить ПО, и которые на слух, сложно заметить, но на уровне ощущений будет постоянно гореть апож, от непонимания почему что то звучит не так (ибо не все звукари от роду).
87638502@vkontakte
Материал создавался для новичков.
Я, если не поленюсь, ещё выпущу продолжение.
&
ради качественного воспроизведения музыки я готов «страдать», поэтому её выводом занимаются исключительно отдельные компы с голой alsa и это безальтернативно. Впрочем, пульсы нет давно нигде, разве что костыль apulse кое-где использую.
От pipewire ничего хорошего не жду, но руки до него не дошли пока.
спасибо за статью.
115714461586402090162@google
Адепты линукс все никак не возьмут в толк, что типовой юзверь не будет лезть туда, где все начинается со слов «откройте консоль».
Хотите что-то популяризовать — делайте гуй, в котором будет достаточно как в винде — нажать «далее, далее, далее, завершить».
И только тогда к вам народ потянется.
Да, вписать пару команд в консоли — это для простого обывателя «сложна, сложна».
Ломать голову и изучать консоль, народ в эпоху пальцетыка на андроид и огрызке, просто не будет.
87638502@vkontakte
Причём тут адептность и пользователи Windows?
Гайд написан линуксойдом для людей, которым это надо. Это вы влезли с очередными «консольными войнами».
a
к чему это тут? поплакать про сложна в кансоле?
A
https://www.youtube.com/watch?v=RvWgm6aZTQA&ab_channel=unfa%F0%9F%87%BA%F0%9F%87%A6
Возможно, конечно, за год что-то доработали, но год назад были определённые косяки в pipewire.
Впрочем, вероятно, это касается более узкоспециализированного применения, для «бытовых» нужд (прослушивания музыки, просмотра видео) он, возможно, уже достаточно стабилен.

Добавить комментарий

Сейчас на главной

Новости

Публикации

Как создавался гигант МАЗ-525: уникальные особенности и почему водителям приходилось управлять стоя

Послевоенные годы в СССР были временем восстановления, амбициозных строек и масштабных проектов. Страна нуждалась в новой технике, способной справляться с огромными объёмами работы. Возведение...

Чайник из какого материала лучше: пластик, металл, стекло или керамика

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

Почему в марте 1918 года столица была перенесена из Петрограда в Москву

В начале марта 1918 года в истории Российской Советской Федеративной Социалистической Республики произошло одно из ключевых событий, повлиявшее в какой-то степени на будущее страны —...

Что делать, если новые «дворники» скрипят и плохо чистят

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

Как часто нужно менять зубную щётку: почему нельзя тянуть с заменой

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

Обзор рожковой кофемашины с капучинатором Zigmund & Shtain Al caffe ZCM-887

Zigmund & Shtain Al caffe ZCM-887 — недорогая рожковая кофемашина с автоматическим приготовлением экспрессо, латте, мокачино и капучино. Для истинных гурманов предусмотрена книга с...