среда, 4 сентября 2019 г.

PipeWire - что это и зачем?

Приветствую. Сегодня хочу немного поговорить о такой штуке, как PipeWire. Проект ещё молодой и активно развивающийся, потому информации в сети не так много. Как вы наверняка знаете, в Linux, для управления звуковыми потоками приложений, применяется звуковой сервер PulseAudio, написанный во второй половине нулевых печально знаменитым Леннартом Поттерингом. Дело в то, что сами по себе звуковые подсистемы Linux, такие как ALSA и почившая OSS, любили монопольно захватывать звуковую карту. Слушаете вы к примеру музыку через Amarok, и захотели включить ролик на ютубе. А там нет звука, потому что в этот момент звуковая карта занята плеером. Позднее конечно эту проблему решили частично, но всё же это было крайне неудобно. Нельзя было например играть в игру и слушать музыку одновременно. Для решения этой проблемы применялись звуковые сервера – для Гнома это был ESD, для KDE – aRTS. PulseAudio же стал стандартом, хотя первое время от него было больше вреда, чем пользы (сильная загрузка процессора, эпичные искажения звука). Плюс он позволяет гонять звук по сети, пользоваться Bluetooth-гарнитурами безо всякого пердолинга и много чего ещё. Но – это лишь звуковой сервер. И с видео он работать не умеет.