PipeWire — це сучасний мультимедійний сервер для Linux, що керує аудіо та відеопотоками. Він замінює застарілі системи PulseAudio (повсякденний звук) та JACK (професійна обробка музики), забезпечуючи надзвичайно низьку затримку, підтримку Bluetooth та стабільну роботу додатків.

Головні переваги PipeWire:

  • Універсальність: Працює як зі звичайними медіаплеєрами, так і з професійними цифровими звуковими студіями (DAW).
  • Наскрізна сумісність: Містить модуль pipewire-pulse, який дозволяє всім старим програмам, написаним для PulseAudio, працювати без зімін.
  • Керування відео: Дозволяє маршрутизувати відеопотоки з веб-камер та забезпечує безпечне захоплення екрана для Wayland.

Передісторія

Два десятиліття. Саме стільки часу користувачі Linux терпіли випадкові збої звуку.

Під час відеодзвінка звук зникає посеред речення. Навушники Bluetooth підключаються, але звуку немає. Ігри працюють, доки не натиснеш Alt+Tab — і все, нічого не чути. Кожен користувач настільного Linux пережив якусь версію цього кошмару.

Розвиток звукової підсистеми Linux відбувався пошарово. Найнижчим рівнем є апаратний рівень, що включає різноманітні аудіопристрої. Для взаємодії з драйверами апаратного забезпечення в Linux використовується стандартизований API під назвою Advanced Linux Sound Architecture (ALSA). Над ALSA розташований ще один рівень — звуковий сервер, який повинен забезпечувати взаємодію з програмами у просторі користувача. Спочатку цим рівнем були Pulseaudio та Jack, але нещодавно їх замінила система Pipewire.

Налаштування об’ємного звуку:

Системи об’ємного звуку класифікуються за допомогою чисел (наприклад, 5.1, 7.1), де перша цифра позначає кількість стандартних колонок на рівні вух, а друга — кількість спеціальних сабвуферів. В нашому випадку 5.1.

Набір прикладів конфігураційних файлів находиться у каталозі /usr/share/pipewire. Не редагуйте ці файли безпосередньо, оскільки оновлення медіасервера перезапишуть ваші зміни. Для налаштування необхідно скопіювати файли з каталогу прикладів в інший загальносистемний каталог /etc або в каталог користувача ~/.config. Файл із каталогу з вищим пріоритетом замінює собою файли з такою самою назвою з інших каталогів.

Медіасервер з коробки працює в стерео режимі, а нам необхідно щоб він розподіляв звук на 5.1. Для цього створюємо конфігураційний файл.

/etc/pipewire/pipewire-pulse.conf.d/20-upmix.conf
# Enables upmixing
stream.properties = {
    channelmix.upmix      = true
    channelmix.upmix-method = psd  # none, simple
    channelmix.lfe-cutoff = 150
    channelmix.fc-cutoff  = 12000
    channelmix.rear-delay = 12.0
}

Після цього перезавнтажуємо комп’ютер і насолоджуємся об’ємним звуком.

Show CommentsClose Comments

Leave a comment