So lösen Sie, dass Pulseaudio aufgrund fehlender Bibliotheken nicht mit einem Mixer verbunden wird?

7219
Mala

Ich habe versucht, pulseaudio zu installieren, und ich kann keine direkte Antwort darauf finden, was mit ALSA zu tun ist. Läuft PulseAudio auf ALSA? Soll ich ALSA zuerst loswerden? ALSA ist ein Soundserver, richtig? So ist PulseAudio ... Wie Sie sehen, bin ich etwas verwirrt. Wie auch immer, ich habe scheinbar beides - nur scheint keiner zu funktionieren: - \

/etc/asound.conf enthält:

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

pulseaudio läuft tatsächlich. Der Versuch "amixer -Dpulse" führt jedoch zu

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` 

Ich habe nachgesehen und die Datei ist ja nicht da. Habe ich aber
/usr/lib32/alsa-lib/libasound_module_ctl_pulse.so

Wenn Sie einen Song im VLC spielen, wird der Stream in pavucontrol angezeigt, aber es wird kein Ton zu meinen Lautsprechern gelangen. Ich bin in Gruppen pulseund pulse-access(nicht ganz sicher, wofür sie bestimmt sind, aber sie konnten nicht schaden). und folgte der Anleitung http://pulseaudio.org/wiki/PerfectSetup zum Brief.

Aktualisieren:

Seltsamerweise, wenn ich /etc/asound.conf lösche, werden Audiostreams immer noch in pavucontrol angezeigt ... also ... läuft pulseaudio tatsächlich? Benutze ich es Wie kann ich sagen?

5

4 Antworten auf die Frage

5
quack quixote

Hier ist eine direkte Antwort: PulseAudio ist ein Sound-Server . ALSA ist ein Kernel-Sound-Subsystem. Sie tun unterschiedliche Dinge - ALSA bietet Chipsatztreiber für Ihre Soundkarte oder Ihren Onboard-Soundchip. PulseAudio leitet den Ton zwischen Programmen, Soundchips und sogar Systemen weiter.

PulseAudio ist ein Sound-Server für POSIX-Systeme. Ein Sound-Server ist grundsätzlich ein Proxy für Ihre Soundanwendungen. Damit können Sie erweiterte Vorgänge an Ihren Sounddaten durchführen, wenn diese zwischen Ihrer Anwendung und Ihrer Hardware übertragen werden. Dinge wie das Übertragen des Audios auf einen anderen Computer, das Ändern des Sample-Formats oder der Kanalanzahl und das Mischen mehrerer Sounds zu einem werden einfach über einen Sound-Server erreicht.

Um PulseAudio verwenden zu können, benötigen Sie irgendwo einen Audiotreiber. Dies kann ALSA oder OSS sein . Diese stellen die Kernel-Sound-Treiber bereit, um Tonsignale vom Computer auszugeben.

Folgen Sie den Schritten auf der Seite " Erste Schritte ", um eine PulseAudio-Befehlszeile aufzurufen. Sie können die CLI verwenden, um zu testen, ob alles richtig läuft.

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

Überprüfen Sie auch Ihre /etc/pulse/daemon.confund die /etc/pulse/default.paKonfigurationsdateien (sie können installiert werden, /usr/local/etc/pulsewenn Sie PA selbst kompiliert und installiert haben).

Ich habe diese Dateien durchgesehen und sie scheinen mir in Ordnung zu sein - aber ich weiß nicht wirklich, wonach ich suchen soll. Auflistungssenken gibt dagegen "0 verfügbare Senke" zurück. Ist das schlecht? Ich weiß nicht wirklich was eine Spüle ist ... Mala vor 14 Jahren 0
Eine Audiosenke ist ein Ort, an den die PA Audiosignale sendet. Es könnte sich um eine Soundkarten- / Chipsatz-Ausgabe handeln. es könnte ein anderes Programm sein. In diesem Fall haben Sie jedoch noch keine definiert. Es klingt, als müssten Sie Ihr `default.pa` überprüfen. Hier würden Sie die Befehle zum Einrichten von PA eingeben, um mit Ihrer Hardware zu sprechen. Verwenden Sie die obigen Links für Details und Beispiele. quack quixote vor 14 Jahren 0
1
Neal

Ich muss zugeben, dass ich sehr viel Glück hatte und keine Pulseaudio-Probleme hatte und daher nicht wirklich weiß, wie ich sie lösen soll.

Ich kann Ihnen jedoch eine grundlegende Vorstellung davon geben, was Pulseaudio ist ...

Im Grunde genommen ist pulseaudio eine zusätzliche Schicht im Soundsystem, die sich zwischen den vorhandenen Tonquellen und -ausgängen befindet. Daher benötigen Sie immer noch ALSA auf Ihrem System, aber die Idee ist, dass das Programm, das ein Geräusch erzeugen möchte, ein (virtuelles) pulseaudio-Gerät hat. Pulseaudio befasst sich dann mit dem ALSA-Kram.

Anstatt viele Programme für den Umgang mit den ALSA-Treibern zu konfigurieren, müssen Sie viele Programme für den Umgang mit pulseaudio konfigurieren und pulseaudio für den Umgang mit den ALSA-Treibern konfigurieren. Dies ist angeblich "eine gute Sache".

0
ktalik

Ich hatte einen ähnlichen Fehler, nachdem ich einige ALSA-bezogene Pakete unter Arch Linux aktualisiert hatte.

amixer set Master 5%+ 

ist zurückgekommen

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 

Paketversionen:

  • 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

Die Lösung bestand darin, das Paket json-c zu aktualisieren (von 0.10-2 auf 0.11-1).

0
Yaroslav Havrylovych

Diese Datei ist Teil von alsa-plugins-pulseaudio. Das System hatte alsa-plugins-pulseaudio-1.1.5-1.fc27.i686 installiert, x86_64 fehlte jedoch. So tat ich:

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

Hoffe das war hilfreich.