Как разрешить Pulseaudio не подключать микшер из-за отсутствующих библиотек?

7060
Mala

Я пытался установить pulseaudio, и я не могу найти прямой ответ о том, что делать с ALSA. PulseAudio работает поверх ALSA? Должен ли я сначала избавиться от ALSA? ALSA - это звуковой сервер, верно? Как и PulseAudio ... Как вы можете сказать, я несколько запутался. Во всяком случае, сейчас у меня, кажется, есть оба - кроме того, что ни один, кажется, не работает

/etc/asound.conf содержит:

pcm.pulse { type pulse }  ctl.pulse { type pulse } 

pulseaudio действительно работает. Однако попытка «amixer -Dpulse» приводит к

ALSA lib control.c:874:(snd_ctl_open_conf) Cannot open shared library /usr/lib64/alsa-lib/libasound_module_ctl_pulse.so amixer: Mixer attach pulse error: No such file or directory` 

Я проверил, и файл действительно не там. У меня однако есть
/usr/lib32/alsa-lib/libasound_module_ctl_pulse.so

Воспроизведение песни в VLC приведет к тому, что поток будет отображаться в pavucontrol, но звук не дойдет до моих динамиков ... Я в группах pulseи pulse-access(не совсем уверен, для чего они, но решил, что они не повредят) и следовали руководству http://pulseaudio.org/wiki/PerfectSetup к письму.

Обновить:

Как ни странно, когда я удаляю /etc/asound.conf, аудиопотоки по- прежнему отображаются в pavucontrol ... так что ... на самом деле работает pulseaudio? Я использую это? Как я могу сказать?

5

4 ответа на вопрос

5
quack quixote

Вот прямой ответ: PulseAudio - это звуковой сервер ; ALSA - это звуковая подсистема ядра. Они делают разные вещи - ALSA предоставляет драйверы чипсета для вашей звуковой карты или встроенного звукового чипа; PulseAudio направляет звук между программами, звуковыми чипами и даже системами.

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

Чтобы использовать PulseAudio, вам нужен где-то звуковой драйвер. Это может быть ALSA или OSS ; они предоставляют драйверы звука ядра для вывода звуковых сигналов с компьютера.

Следуйте инструкциям на странице « Первые шаги», чтобы вызвать командную строку PulseAudio; Вы можете использовать CLI для проверки правильности работы.

# get a pulseaudio commandline $ pulseaudio -nC  Welcome to PulseAudio! Use "help" for usage information.  # run this to see what sinks are configured >>> list-sinks 

Также проверьте ваши /etc/pulse/daemon.confи /etc/pulse/default.paконфигурационные файлы (они могут быть установлены, /usr/local/etc/pulseесли вы сами скомпилировали и установили PA).

Я просмотрел эти файлы, и они мне кажутся нормальными, но я не знаю, что искать. список-приемники, с другой стороны, возвращает «0 приемников доступно». Это плохо? Я не знаю, что такое раковина ... Mala 14 лет назад 0
Аудио приемник - это то место, где PA посылает аудио. это может быть выход звуковой карты / чипсета; это может быть другая программа. но в этом случае вы не определили ни одного. звучит так, как будто вам нужно проверить `default.pa`, именно здесь вы должны поместить команды для настройки PA для связи с вашим оборудованием. используйте эти ссылки выше для деталей и примеров. quack quixote 14 лет назад 0
1
Neal

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

Я могу, однако, дать вам общее представление о том, что такое pulseaudio ...

По сути, pulseaudio - это дополнительный слой в звуковой системе, который находится между существующими источниками звука и выходами. Таким образом, вам все еще нужен ALSA в вашей системе, но идея в том, что программа, которая хочет издавать шум, имеет (виртуальное) импульсное аудиоустройство. Pulseaudio затем занимается вещами ALSA.

Поэтому вместо того, чтобы настраивать множество программ для работы с драйверами ALSA, вы настраиваете множество программ для работы с pulseaudio и настраивает pulseaudio для работы с драйверами ALSA. Это якобы "хорошая вещь".

0
ktalik

У меня была похожая ошибка после обновления некоторых связанных с ALSA пакетов под Arch Linux.

amixer set Master 5%+ 

возвращенный

ALSA lib dlmisc.c:252:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/alsa-lib/libasound_module_ctl_pulse.so amixer: Mixer attach default error: No such device or address 

Версии пакета:

  • pulseaudio 4.0-2
  • lib32-libpulse 4.0-2
  • alsa-lib 1.0.27.2-1
  • lib32-alsa-lib 1.0.27.2-1
  • alsa-utils 1.0.27.2-1
  • alsa-plugins 1.0.27-2
  • lib32-alsa-plugins 1.0.27-1
  • pulseaudio-alsa 2-2

Решением было обновить пакет json-c (с 0.10-2 до 0.11-1).

0
Yaroslav Havrylovych

Эти файлы являются частью alsa-plugins-pulseaudio. В системе был установлен alsa-plugins-pulseaudio-1.1.5-1.fc27.i686, но x86_64 отсутствовал. Так я и сделал:

sudo dnf install alsa-plugins-pulseaudio-1.1.5-1.fc27.x86_64 

Надеюсь, это было полезно.