SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Can someone explain me the differences between ALSA and Pulse Audio?
From Wikipedia:
One of the goals of PulseAudio is to reroute all sound streams through it, including those from processes that attempt to directly access the hardware (like legacy OSS applications). PulseAudio achieves this by providing adapters to applications using other audio systems, like aRts and ESD.
In a typical installation scenario under Linux, the user configures ALSA to use a virtual device provided by PulseAudio. Thus, applications using ALSA will output sound to PulseAudio, which then uses ALSA itself to access the real sound card. PulseAudio also provides its own native interface to applications that want to support PulseAudio directly, as well as a legacy interface for ESD applications, making it suitable as a drop-in replacement for ESD.
For OSS applications, PulseAudio provides the padsp utility, which replaces device files such as /dev/dsp, tricking the applications into believing that they have exclusive control over the sound card. In reality, their output is rerouted through PulseAudio.
Maybe things are different now...but I really don't like it when my sound server crashes on me (even ignoring the resource-hogging pointlessness of pulse in the first place). I avoid Pulse like the plague.
I think pulse is useful for some people, there are areas where alsa is lacking (eg network streaming) but I think the approach is fundamentally wrong as it's re-inventing the wheel in many ways, there are already good, mature and feature rich alternative such as Jack Audio Connection Kit (JACK) available from slackbuilds which provide a less intrusive and less bloated implementation for many of pulses features. That said, alsa configuration can be complex (anyone want to write a .asoundrc from scratch?) so pulse has it's place for distributions which try to please everyone out of the box no matter the cost...
I have a receiver that I connect via USB and here are my options with each respective system:
alsa: Before I start KDE but after I connect the receiver, rmmod all of the hda modules. If I've forgotten to do that before starting KDE, close X, and do what I just said. (This is just to send any sound to the receiver.)
pulse: Connect my receiver whenever I want and configure pulse to send e.g. system sounds, Skype, to hda_intel and send e.g. DVD, FlashPlayer, to the receiver.
Pulse was a little simple to get running on Kubuntu, but it seems to be dependency hell on Slackware, much like GTK+. Of course, there's a reason I'm back to Slackware after a year of Kubuntu, though.
Kevin Barry
I have a receiver that I connect via USB and here are my options with each respective system:[LIST][*]alsa: Before I start KDE but after I connect the receiver, rmmod all of the hda modules. If I've forgotten to do that before starting KDE, close X, and do what I just said. (This is just to send any sound to the receiver.)
I'm not sure why you're not just editing an ~/.asoundrc file to direct audio to the new device. Or why you feel the need to completely close X to unload the HDA sound modules.
Quote:
Pulse was a little simple to get running on Kubuntu, but it seems to be dependency hell on Slackware, much like GTK+. Of course, there's a reason I'm back to Slackware after a year of Kubuntu, though.
Kevin Barry
gtk+ 1.2 and gtk+ 2.24 come with Slackware, so I'm not sure how that can be considered dependency hell for end-users. Having installed pulseaudio on Slackware, I also don't remember there being all that many dependencies.
I'm not sure why you're not just editing an ~/.asoundrc file to direct audio to the new device. Or why you feel the need to completely close X to unload the HDA sound modules.
KDE prevents the modules from being unloaded. Or maybe it's ALSA. Of course, when I asked about the receiver problem, probably in this forum, no one suggested I edit ~/.asoundrc; thanks for the suggestion!
Kevin Barry
I guess you didn't know that you can just kill the KDE processes that are accessing the /dev/snd/* devices and then unload the modules :-)
Adam
Guess which system doesn't require you to kill any processes to switch between output devices? Anyway, it hadn't occurred to me to lsof | grep /dev/snd/. For the most part I just program and browse, so I'm pretty lazy about creating graceful solutions to stuff like that.
Kevin Barry
I hate it too, but I use it on my Slackware 13.37 lol.
It works much better with my bluetooth headset compared to the alsa bluetooth plugin...
Quote:
Originally Posted by dugan
Yes. Pulseaudio adds latency. It causes your sound to LAG.
It does but the lag is very small, some milliseconds for me.
99% of the time it works fine, but sometimes Amarok doesn't make a sound
and I have to restart it and very very very rare it looks up hogging the cpu -_-
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.