Hacker News new | ask | show | jobs
by isatty 3029 days ago
I've never heard of someone preferring PulseAudio to ALSA
3 comments

Pulse audio is OK for routing audio around. It even supports LADSPA filters through a module. So I’ve used it when playing Dungeons & Dragons over Mumble, to filter my voice when role-playing monsters (nothing beats a little reverb and pitch tuning to make the monster boss more frightening to the players) and putting music into the channel. I would not know how to do that with ALSA. But Pulse Audio uses ALSA, so...

That said, JACK is much better for routing audio through applications. And jack-rack actually lets you change the parameters of LADSPA filters without reloading. And it is easy to get a graphical mixer up controlling individually the volume from all the sources.

I've tried 3 times in the past to run JACK on Ubuntu. Each time I had bricked audio after installing, tried to fix for around 1-2 hours and gave up. My experience with JACK has been horrible.
I don’t know your setup, but Ubuntu uses PulseAudio as default, and it can sometimes take the sound devices hostage. There is a package called pulseaudio-module-jack which will let you output sound from JACK through PulseAudio. Using qjackctl you can see how everything is connected and direct it to the pulse source. The pulse source can be connected, to say your speakers, by loading a loopback module in pactl.
There's also Cadence from KXStudio repository[0]. It's a replacement for qjackctrl that can be used to setup pulseaudio-to-jack bridge relatively painlessly.

[0] http://kxstudio.linuxaudio.org/Applications:Cadence

I've had precisely the opposite experience - for me, JACK is amazing and gives me 40-channels of pro audio over my external audio interfaces (I run a studio with a Linux DAW), but if I put PulseAudio anywhere near this configuration, it dies in a burning pile of poo. I despise PulseAudio and will never use it.
That does sound like fun. Do you have a link to the software you use for applying said filters?
In Pulse I just used the LADSPA module, and loaded it with pactl load-module module-ladspa-sink. There is an example in the docs[0].

I stacked a number of filters on a null-sink and then used the loop-back module to put the sound from the mic into the top filter. Then I redirected mumble to the null-sink’s monitor. The filters I used were the ones I found in the debian package repo.

In comparison, it was much easier to do in JACK, where I could create the filter stack in jack-rack[1], which has a GUI, and do the plumbing in qjackctl.

[0] https://www.freedesktop.org/wiki/Software/PulseAudio/Documen...

[1] http://jack-rack.sourceforge.net/

I like network transparency and the ability to move running streams from speakers to USB headphones.
or duplicate streams and send it to multiple sound outputs.
I have and I do, vastly. ALSA's software mixer was a terrible hack that you'd be lucky to get to work at all, and then you'd have to take care to have all of your applications request the exact same sample format. ESD was decent in many respects, but still hogged the device from anything that didn't explicitly support it.

Before PulseAudio came along, my "solution" to Linux desktop audio was to simply keep using an ancient sound card that still had a hardware mixer.