Linux und Ich

Blog über Ubuntu, Linux, Android und IT

Sounds mit PulseAudio umleiten

Sounds mit PulseAudio umleiten

| 46 Kommentare

Ich stolpere immer wieder über Anwender, die ein Problem mit Audioausgaben haben. Der Klassiker dabei ist dass Flash-Animationen und -Videos stumm bleiben obwohl andere Anwendungen wie Totem oder Rhythmbox ihren Ton brav ausgeben.

Die Ursache des Problems liegt oft daran, dass im System mehrere Soundkarten vorhanden sind. Nicht ungewöhnlich sind die eingebaute Soundkarte, ein USB-Headset, ein Bluetooth-Adapter und Headset usw… Wenn man nun das USB-Headset aufgesetzt hat, die interne Soundkarte auf Stumm gesetzt wurde und Flash den Sound auf die interne Karte schickt, dann kommt schnell der Eindruck auf, dass man ein größeres Problem hätte.

Die Lösung des Problem ist recht trivial. Man muss jedoch die dafür benötigten Programme nachinstallieren um PulseAudio vollständig managen zu können. Das erste ist PulseAudio Volume Control.

$ sudo apt-get install pavucontrol

Nach der Installation kann ma das Programm über “Anwendungen -> Unterhaltungsmedien -> PulseAudio Volume Control” starten. Eventuell ist der Eintrag nach der Installation des Paketes deaktiviert. Sollte er fehlen, so klickt man mit der rechten Maustaste auf “Anwendungen | System | Orte” und öffnet über Menüs bearbeiten den Menüeditor alacarte. Über diesen Kann man den Menüpunkt aktivieren.

In der Lasche Output Devices findet man die im System verfügbaren Ausgabegeräte. In meinem Beispiel ist das die eingebaute Soundkarte und eine USB-Soundkarte.

Pulseaudio listet die im System gefundenen Ausgabegeräte auf.

Pulseaudio listet die im System gefundenen Ausgabegeräte auf.

In der Lasche Playback wird nun jedes Programm aufgelistet, das gerade Klänge von sich gibt. Über die einzelnen Laschen kann man die Ausgabe jedes einzelnen Programms manipulieren. So kann man bspw. für Instant-Messaging Programme wie Pidgin den Sound individuell leiser stellen, so dass man nicht aus den Socken “gepingt” wird, wenn man kurz vorher laut Musik gehört hat und nun von jemanden angesprochen wird.

...und natürlich auch die Audiostreams. Also alle Anwendungen, die gerade Audiosignale abspielen wollen.

...und natürlich auch die Audiostreams. Also alle Anwendungen, die gerade Audiosignale abspielen wollen.

Letztendlich kann man hier auch die Ausgabe auf eine andere Soundkarte umleiten. Dazu muss man nur die passenden Soundkarte auswählen. Der Sound der Anwendung kommt dann unverzüglich aus der aus ausgewählten Soundkarten.

Letztendlich kann man den Stream auf die zweite Soundkarte umleiten.

Letztendlich kann man den Stream auf die zweite Soundkarte umleiten.

Dadurch hat man absolute Flexibilität was die Ausgabe von Klängen betrifft. Für jede Anwendung kann man festlegen auf welcher Soundkarte ihre Klänge ausgegeben werden sollen und wie laut die Ausgabe relativ zur maximalen Lautstärke sein soll.

Die Möglichkeiten dabei sind nicht nur auf den eigenen Rechner beschränkt. PulseAudio kann dank Avahi/Zeroconf Audio von einem Rechner auf den anderen Streamen. Angenommen man hat einen Rechner im LAN, der an eine Stereoanlage angeschlossen ist und ein kleines Notebook mit mickrigem Klang. So ist es problemlos möglich den Sound einer Anwendung auf den Rechner mit der Stereoanlage umzuleiten. Dazu müssen jeweils die PulseAudio-Einstellungen über

$ sudo apt-get install paprefs

installiert werden und dann unter “System -> Einstellungen -> PulseAudio-Einstellungen” eingestellt werden und dann eingestellt werden, dass die Soundkarte des “Soundservers” freigeben wird und das Notebook die Soundkarte des Servers findet.

PulseAudio im Netzwerk freigeben (Screenshot vom Desktop meiner Freundin ;D )

PulseAudio im Netzwerk freigeben (Screenshot vom Desktop meiner Freundin ;D )

Danach findet man im oben gezeigten Dialog die Soundkarte des Servers und schon kann man den Sound des Notebooks über die Stereoanlage hören, ohne dass man das Notebook an diese anschließen müsste.

(Bildnachweis: Monik Markus, CC-BY, Flickr)

Autor: Christoph

Hallo, ich bin Christoph -- Linux-User, Blogger und pragmatischer Fan freier Software. Wie Ihr ohne Zweifel bemerkt haben solltet schreibe ich hier über Linux im Allgemeinen, Ubuntu im Speziellen, sowie Android und andere Internet-Themen. Wenn du Freude an meinen Artikel gefunden haben solltest, dann kannst du mir über Facebook, Google+ oder Twitter oder natürlich dem Blog folgen.

46 Kommentare

  1. Thank you for this. I’ve been wanting to stream the sound coming from one computer onto another over the network for a long time.
    One problem I’ve been having with PulseAudio is that Audacity won’t list the correct sound device for output when PulseAudio is running. When I kill PulseAudio, Audacity will then list my correct sound device and becomes usable again. This tool should help me troubleshoot that problem.

  2. BTW, when trying to use my blogspot OpenID I get:
    Fatal error: Call to undefined function add_options_page() in /home/christoph-langner.de/hosts/christoph-langner.de/wp-content/plugins/header-footer/plugin.php on line 34

  3. Supertoller Tipp. Das Umleiten der einzelnen Audioziele war für mich nicht so interessant, aber gerade die Möglichkeit die Lautstärke der einzelnen Anwendungen löst bei mir viele Probleme mit Tonquellen, die sich sonst nicht direkt regeln ließen :).

  4. @Maxo
    Glad that I was able to help you. The version of Audacity which is available for Ubuntu Intrepid Ibex 8.10 doesn’t work nicely with PulseAudio. David Henningsson patched Audacity and built packages via his PPA. So add his PPA to your sources.list and update Audacity via his source.

    After the update you should be able to run Audacity with PA. Start Audacity, open “Edit -> Preferences -> Audio I/O” and select “ALSA: pulse” vor Playback and Recording.

    About OpenID, thanks for the hint. I’ll get into it.

  5. Ich finde, dass PulseAudio im Grunde eine gute Sache, die aufjedenfall weiterentwickelt werden sollte. Allerdings finde ich, dass es noch viel zu viele Probleme mit oft benötigten Programmen gibt. Dazu zählt bei mit aufjedenfall Skype, welches unter früheren Ubuntu-Versionen reibungslos funktionierte. Darum ist es meinermeinung nach nocht nicht an der Zeit PulseAudio in Produktivsystemen einzusetzen. Aber ich freue mich schon auf die Zeit, wenn das alles (fast)reibungslos laufen wird!

  6. Skype macht praktisch keine Probleme bei PA, zumindest auf meinen Rechnern ;) Wichtig ist, dass man Skype einmal ordentlich einstellt. Dann klappts eigentlich auch. Google nach “skype pulseaudio”, es gibt zig Blogs, die das beschreiben.

    Wann man nun eine neue Technik einsetzt ist eine absolut strittige Frage. Verbauen die Distributoren etwas wie PA nicht, so kümmert sich auch kein Entwickler drum seine Software so anzupassen, dass sie funktioniert. Warum auch? PA wäre ja dann praktisch auch auf keinem Rechner installiert. Warum sollte man dann seine Software anpassen.

    PA ist nun seit einem Jahr in praktisch jeder großen Distribution dabei. Wenn jetzt noch eine Software hängt, so schläft einfach der Entwickler dieser.

  7. Och, die Leser der englischen Version sehen gar nicht den netten Screenshot deiner Freundin :D

  8. Thanks for the tip on the PPA. That certainly did resolve my issue. Hopefully this fix will be in 9.04 Jaunty.

  9. ich habe deine Einträge immer verfolgt und war immer begeistert. Aber diesmal du hast allen Übertroffen.

  10. mmh,

    leider scheint das mit dem umleiten übers Netzwerk nicht so einfach zu sein. Ich hab hier zwei Intrepid Rechner, ein Notebook und den Desktop an der Stereoanlage. Leider kann ich, auch nach einem Neustart, die Soundkarte auf dem Desktop nicht vom Notebook aus ansprechen. Gibts da Stolperfallen, die man beachten sollte?

    Grüße,

    Chris

  11. @Chris
    Hast du irgendwelche Desktop-Firewalls am Laufen. Oder hast du irgendwas in Richtung von Avahi deaktiviert?

  12. nö, keine Firewall.
    Avahi läuft. Pulseaudio-Restart auf dem Desktop klappt ohne Fehler, auf den Notebook jedoch nicht:

    chris2@chris-notebook:~$ pulseaudio -k
    W: ltdl-bind-now.c: Failed to find original dlopen loader.
    chris2@chris-notebook:~$ pulseaudio
    W: ltdl-bind-now.c: Failed to find original dlopen loader.
    W: main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operation not permitted
    W: main.c: setrlimit(RLIMIT_RTPRIO, (9, 9)) failed: Operation not permitted
    ALSA lib control.c:909:(snd_ctl_open_noupdate) Invalid CTL front:0
    ALSA lib control.c:909:(snd_ctl_open_noupdate) Invalid CTL front:0
    E: module-zeroconf-discover.c: Cannot construct valid device name from credentials of service ‘tunnel.chris-desktop.local.alsa_output.pci_1274_5880_sound_card_0_alsa_playback_0′.
    E: module-zeroconf-discover.c: Cannot construct valid device name from credentials of service ‘tunnel.chris-desktop.local.alsa_input.pci_1274_5880_sound_card_0_alsa_capture_0′.

  13. Chris, ich denke dass dies dieser Bug sein könnte. Dein Rechner nennt sich “chris-desktop”, laut diesem Blog gibt es exakt dieses Problem, wenn der Rechnername ein “-” enthält.

    Ändere daher mal den Namen deines Rechners (Siehe z.B. unter Rechnername im Wiki von uu.de) in etwas ohne “-”…

  14. Vielen Dank – das wars! Seltsamer Bug.

  15. Er ist seit acht Monaten gefixed, ich hoffe mal dass das in Jaunty kein Thema mehr ist. Wahrscheinlich tritt der Bug verdammt häufig auf. Bei der Installation von Ubuntu wird der Rechner ja von Haus aus $benutzer-desktop etc. genannt. D.h. bei einem Haufen Leute, die die Vorgabe übernommen haben, dürfte Avahi broken sein…

  16. Welches Desktop Theme benutzt du, mir gefällt es? (nein, ich meine nicht das pinke…)

  17. @Markus
    Das ist “Shiki”. Nähere dazu (und viel mehr) findest du unter Mein GNOME Desktop… Shiki bites the Dust :)

  18. kleine Anmerkung noch wenn der Rechner, der den Sound empfangen soll, in der /etc/hosts.deny ALL:ALL stehen hat.

    in /etc/hosts.allow

    pulseaudio-native: ALL

    eintragen.

    laut wiki von pulseaudio.org gibt es:
    pulseaudio-native
    pulseaudio-simple
    pulseaudio-cli
    pulseaudio-http
    esound

    cu, Ralf

  19. thanks for the tip, though I have two problems:
    1. I do not have the programme pavucontrol
    2. When I try to run the command: sudo apt-get install pavucontrol, I get:

    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    E: Couldn’t find package pavucontrol

    thank you in advance for your help

  20. Which version of Ubuntu do you use? Can you show me the content of the file /etc/apt/sources.list?

  21. Mensch, ich muss hier einmal sagen, dass diese Webseite einfach klasse ist!

    Ich bin kein Experte in Sachen Linux, finde aber einige Details daran als ubuntu-User sehr interessant (z.B. die Streaming-Funktion von PulseAudio, usw.)

    Wenn da nicht immer diese kleinen Haken wären, dass z.B. kein Flashfilm mit Ton läuft.
    Aber jetzt tuts :-)

    Danke!

  22. DANKESCHÖN!!
    Nach einigem hin und her läuft es jetzt auch bei mir.
    Aber warum wird pavucontrol nicht sofort z. B. bei Ubuntu mitgeliefert? Naja, besten Dank nochmal ;-)

    Gruß

  23. Danke! Das war wirklich trivial – ich hatte schon eine Weile nach einer Möglichkeit gesucht, den Audiostream umzubiegen. Pulseaudio scheint doch funktionabler zu sein, als ich bisher wahrgenommen habe. Nun kann ich endlich an meinem Sound über Kopfhörer werkeln :D

  24. Danke für den Tip. Das umbiegen des Audiostreams auf meine 2te Soundkarte hat super funktioniert.
    Auch Deine Tips bzgl. Firefox 3.5 waren sehr hilfreich.

    Danke nochmals – und weiter so!

  25. Vielen Dank für diesen tollen Abschnitt.
    Endlich kann ich auf Webseiten auch
    etwas hören.
    Ich habe mich wild gesucht und bin per
    Link hier gelandet.

    Vielen Dank!!!

  26. Also ich bekomme es einfach nicht hin. Wenn ich Multicast aktiviere und meinen Laptop als Empfänger einsetze höre ich 5Sekunden Sound und dann schmiert Pulse ab mit der Meldung “Verbindung fehlgeschlagen: Verbindung beendet”

    Deine Lösung hier, also das Gerät direkt umzuleiten funktioniert leider auch nicht, ich kann zwar auf die Soundkarte meines Laptops umleiten, aber Sound höre ich leider keinen…

    Meine Wunschkonfiguration würde die Musik auf meinem PC und Laptop parallel ausgeben wobei mein PC die Musik streamt.

    Hier habe ich übrigens noch einen WikiEintrag gefunden der genau das ohne Latenzen ermöglichen soll, leider alles ohne Erfolg :(
    http://x4.6times7.org/dokuwiki/doku.php/devlog/blog/streaming_on_ubuntu_8.04_with_pulseaudio

  27. Ich danke euch für den super Tipp. Habe auch zu meiner bisherigen eine zweite Soundkarte dazugesteckt, und hatte das selbe Problem.

    Nach der selben Logik mit dem Umleiten konnte ich auch die Umleitung wieder so richtig einstellen, dass ich aus zwei oder mehr unterschiedlichen Playern wieder gleichzeitig abspielen kann.

    Echt eine super Sache, ich danke euch sehr!

  28. Hallo!
    Vielen Dank für deine tollen Beschreibungen.
    Als doch recht unerfahrener Ubuntu-Installateur, haben mir deine Anleitungen und Tipps sehr geholfen.
    Ich habe meine Erfahrungen dokumentiert und diese auf meiner Webseite zur freien Verfügung gestellt.
    http://www.rossrucker.de/KnofHof/Ubuntu

    Schau doch bitte mal rein …
    Ich habe dich im Dokument verlinkt.

    Vielleicht hast du Zeit für ein kurzes Feedback,
    würde mich freuen.
    Viele Grüße
    Andreas

  29. Danke für das Lob, dein Guide hilft sicherlich dem ein oder anderen Besitzer eines EEEPC :)

  30. Hallo,
    erst mal Danke für deinen Blog.
    Er ist super. Seit Jahren produziere ich
    Musik und Videos unter Linux. Jack ist der Router meiner
    Wahl.
    Habt ihr einen Tipp wie ich Puls wieder los bekomme.
    Nichts geht mehr vernünftig. Ich will es nicht!
    Danke euch

  31. Hallo Rudi, danke für das Lob :) Wenn du Musik und Videos produzierst, warum benutzt du dann nicht gleich Ubuntu Studio? Ich bin mir nicht sicher, aber das installiert doch neben dem RT-Kernel auch Jack als Soundserver?

    Ansonsten, starte Synaptic, klicke auf den Button “Suchen” und lass nach “pulseaudio” suchen. So findest du alle Pakete die mit PA zusammenhängen.

  32. Hallo Christoph,
    Danke für deine Antwort.
    Wenn das so einfach wäre. Beim deinstallieren will Synaptic
    erst mal meinen Desktop deinstallieren. Das gleiche Drama
    bei Studio. Jack ist nicht das Problem.
    Mag eigentlich Ubuntu und verwende es auch als
    Admin in der Firma.
    Bei meiner Google Recherche sehe ich das ich nicht alleine
    mit den Problem bin.
    Stehe kurz davor wieder zu Debian zu wechseln.
    Wie bekomme ich Puls wieder los?
    Viele Grüße

  33. Meinst du das Paket ubuntu-desktop? Das ist nur ein Metapaket und kann gefahrlos gelöscht werden. Siehe Metapakete. Ansonsten würde ich dir empfehlen mal bei uu.de vorbeizusehen. Ich bin kein Multimedia-Spezialist. Mit Jack habe ich noch nie gearbeitet, bei uu.de bekommst du mit Sicherheit besseren Support.

  34. Hallo,
    habe Puls mutig deinstalliert.
    Das System war danach nicht mehr zu gebrauchen.
    Eine gute Gelegenheit Ubuntu (ein synonyme für schlechtes Windows)
    zu verlassen und reuig zu Debian zurück zu kehren.
    Vielen Dank für deine Unterstützung.
    Grüße

  35. Hi,
    habe denk ich ähnliche Probleme wie obe beschrieben mit PA.
    Leider hat mir der Artikel nicht weitergeholfen.
    Könntest du bitte mal bei ubuntuusers reinschauen, da habe ich mein Problem beschrieben?
    Danke schonmal!

  36. Hallo, auch von mir herzlichen Dank für die Infos. Ich konnte mein Problem nun immerhin eingrenzen: Mozilla wird nicht bei den wiederzugebenen Anwendungen aufgeführt (nur Systemklang, und der funktioniert gut).
    Logische Konsequenz ist das Fehlen von Sounds bei der Wiedergabe von FLASH Inhalten. Hast du eine Idee, warum Mozilla dort nicht erscheint?

  37. Hallo Kris, nicht der Firefox spielt den Sound einer Flash-Animation ab, sondern das Flash-Plugin selber. Je nach Systemarchitektur solltest du in pavucontrol das Flash-Plugin oder nspluginwrapper finden, wenn du eine Flash-Applikation mit Sound abspielst.

  38. Pingback: Anonymous

  39. Danke für diesen Artikel. Ich suchte nach einer Lösung, wie ich meinem Firefox beibringen konnte, doch bitte mein Bluetooth-Headset zu benutzen, wenn es angeschlossen ist. Mit pavucontrol (unter kubuntu ;-) ) hat es tadellos geklappt. Danke!

  40. Es kann sein, dass eine der Netzwerkkarten Multicast nicht durchlässt. Bei mir ging es zum Beispiel per LAN aber nicht per WLAN, bis ich das freigegeben habe:

    sudo ifconfig NETZWERKADAPTER allmulti
    Bsp:
    sudo ifconfig wlan0 allmulti

    Kann man irgendwo auf dem “Empfänger” den Buffer vergrößern? Bei mir hängt es ab und zu mal.

    Insgesamt aber eine verdammt coole Sache. Danke für Deinen Artikel!

  41. Pingback: Vom Sofa zur Stereoanlage « kaffeeringe.de

  42. Ich bedanke mich für den Software Tipp. Hatte mein Laptop vie HDMI mit dem Fernseher verbunden, leider wurde die Ton-Ausgabe nicht wieder auf intern gestellt (obwohl mir das Ubuntu 12.04 eigene Soundwerkzeug dies angab) und mein Firefox bekam keinen Ton raus (andere Browser komischerweise schon).

    Minimalistische Werkeuge sind manchmal echt nervig vor Unity konnte man da mehr einstellen…

  43. Pingback: linux sounds mit pulseaudio umleiten | ~~~feverM!ND'zZ'dReAm~~~

  44. “If you set your PA server to search for other PA sessions inside your LAN you can redirect the output of applications to other PA servers the way I explained before.”

    And how do you do that? You left out the most important bits fo the information.

  45. > Nach der Installation kann _man_ das Programm über “Anwendungen -> Unterhaltungsmedien -> PulseAudio Volume Control” starten.

  46. hi, danke für deinen toll geschriebenen Artikel, hat mir geholfen noch ein paar Dinge besser einzustellen.
    Wonach ich aber schon seit langem suche, ist die Möglichkeit über Pulse vorhandene DLNA Geräte auszuwählen und the Sound Ausgabe dorthin zu streamen.
    Vielleicht kannst du mich von diesem Vorhaben endgültig heilen, indem du mir sagst das so etwas nicht funktioniert. :-)
    danke Kalle

Hinterlasse eine Antwort

Auf Linux und Ich darf anonym kommentiert werden. Die Felder für Name und E-Mail-Adresse dürfen beim Eintragen eures Kommentars leer bleiben. Ich freue mich aber über jeden Kommentar, zu dem der Autor mit seinem Namen steht.