Hacker News new | comments | show | ask | jobs | submit login

Pulse Audio is not perfect but what before was. People were bitching about PA and wanted OSS back. I seriously doubt that many of those actually do anything reasonable with audio.

The thing is, I am not any better off today than I was when I was using ALSA. None of the problems I had with ALSA were solved by PA; ConsoleKit/PolicyKit came closer to solving those problems, and even then, new problems were introduced. The excruciating transition to PA put a bad taste in everyone's mouth, and now we are all sitting here asking ourselves, "Why did we even bother?"

So in a sense, you are right: PA is not perfect, and neither were ALSA, OSS, and other earlier approaches. That is not the issue; the issue is, is PA actually better? Are we actually able to do things now that we were having trouble with before? From where I sit, PA makes it easier to use things like D-BUS and various "Kit" systems to duplicate the desktop user paradigm you see in Windows or Mac OS X, and nothing more (and that does nothing for me, but certainly gets in my way when I try to do things like multiseat setups).

Yep, we are better off now.

I remember trying to get bluetooth audio working in the alsa-only days. Or network sound with esd/ssh. Or figuring out how to route audio nicely apps. Or saving my laptop battery. Or many other features that were simply damn difficult to pull off.

People don't seem to remember how crappy the audio situation used to be, for users and for ISVs. I respect Lennart and the current PA maintainers a lot for tackling the problem head on – even if they didn't or couldn't do it perfectly – instead of just complaining about the sad state of Linux audio, especially in the face of all the criticism they got over it.

Pulseaudio plus blueman does solve the bluetooth problem quite nicely. It's the main reason why I use pulseaudio.

In exchange for that I put up with confusing audio dialog boxes, high audio latency, high cpu usage when playing audio, skips and crackles when playing games, arcane commands to enable loopback, and the occasional necessary restart of the pulseaudio daemon when sound stops altogether. I guess that's a reasonable trade.

"I seriously doubt that many of those actually do anything reasonable with audio."

Actually, serious audio work on Linux is done with JACK. PulseAudio is completely inadequate for serious audio work.

You're stating it as if it were a shortcoming of PulseAudio. PA is inadequate for most audio work, because the latency is too high -- which is a feature.

Latency vs. CPU usage is always a compromise. To achieve low latency, you need very small buffers for "rendered" audio, and lots of well-timed copy operations to the audio hardware. To just play some audio files efficiently, you want large buffers, because then fewer copy operations are necessary.

Here's a better explanation by Lennart Poettering: http://0pointer.de/blog/projects/when-pa-and-when-not.html

I don't see how high latency in pulseaudio is a feature. Pulseaudio has both high latency and high cpu usage. I've seen cpu usage by the pulseaudio daemon as high as 20% when playing audio.

That was the case many years ago. You really still have this?!?

Yes I do, on pulseaudio 1.1. Definitely better than it used to be, though.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact