Episode: 173 Title: HPR0173: Configuring Pulse Audio Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr0173/hpr0173.mp3 Transcribed: 2025-10-07 12:53:49 --- 3 Hi, welcome to Hacker Public Radio. This is the second episode I'm going to be doing on Pulse Audio. My name is Kwatt 2. Friend of mine in IRC told me about a wiki on the ArchLinux site, the wiki.archillinux.org, specifically talking about Pulse Audio, and not to set up how to get running on your system. I don't run ArchLinux, but I figured I'd check out the wiki article anyway because he suggested that it was a very good article and had basically made installing and using Pulse Audio on his system, which did not ship with Pulse Audio, just a breeze. It was not a problem. He couldn't understand why anyone was having any problems with Pulse Audio. So easy had it been for him to install it. So I decided to check out the article. It turns out that it's actually a really, really, really good article. I would definitely check it out if I were you and if you are using Pulse Audio or if you want to use Pulse Audio, this is a good article to kind of read through and go through your system along with the article and kind of make sure that everything is configured the way that you think it should be configured. So the article is located specifically at wiki.archillinux.org slash index.php slash Pulse Audio and the P and the A are both capitalized in Pulse Audio. The article starts out, well, first of all, the article is set in terms of using the package manager of Arch. So you have to read around that. Secondly, unless you're using Arch. Secondly, it does assume that you are installing from scratch. So if you are doing this with a system that has already come with Pulse Audio installed, obviously certain steps you're not going to need to do, for instance, installing Pulse Audio. So if you're using Fedora or Ubuntu or Menderiva, anything like that that came with Pulse Audio, you can probably start basically with the second step, which would be to install all the GUI apps that Kajari was talking about in my first Pulse Audio episode. So this would be PA Dev Chooser, PA Man, PA Press and PA VU control. So that's four GUI apps that your system might not have come with installed or they might be there and you just never thought to look for them. So make sure that your system has those GUI apps installed. It'll just kind of help you out later on. You'll also definitely need to make sure that the Pulse Audio ALSA plugin is installed. This is ALSA-plugins should be in, I mean if your distro came with it with Pulse Audio on the system, it probably already has the ALSA plugin. But if you just want to make sure it's up to date or whatever, you can look in your repo for ALSA-plugins. You should see it there, you can update it, you can install it, whatever you need to do to get that done. The next step is to make sure that the eSound system is or rather the compatibility system for eSound is installed on your system. And again, if it came with Pulse Audio, it probably is already here, so it's not going to be a big deal. And this is only if you're using Gnome, or Gnome, a lot of Gnome, you know, the Gnome Foundation. I'm using KDE, so I skipped this step. But if you use Gnome, you can do, you can check your system for ESD Compat. That is ESD Compat, C-O-M-P-A-T. And that is probably going to be in the user slash bin slash ESD Compat. I shouldn't say user, I should say USR slash bin slash ESD Compat. So make sure that your system has that if it applies to you. And you're going to want to make sure that you have that configured so that it will start the ESD Compat automatically when you log in, again, if you're using Gnome. So this is an important file. There's a config file that you're going to be using a fair amount. And it's in slash Etsy slash Pulse. And it's called default.pa. That is default.pa as in Pulse Audio. This is the main, one of the main config files for Pulse Audio system. So if you've got that in existence already, I would make a backup of it. C-P-Space slash Etsy slash Pulse slash default.pa, slash Etsy slash Pulse slash default dash original.pa. That will copy it, make an original that way if you totally script your system during this little tutorial, or while you're looking through the Wiki, you can always revert back to how the system shipped. It's a very good idea to do that. So you'll want to add a line or uncomment the line or just verify that the line exists in default.pa that says load-module space module-esounds-protocol-unix space socket equals slash TMP slash .esd slash socket. And I'm sure you'll remember that perfectly. But don't worry, if you don't, it is on the Arch Wiki page that I am talking about. So you can find all of this stuff right there. That's a really good page. All I'm doing right now is basically translating it so that it's a little bit less arch-centric and a little bit more generic. Most of these steps are what I have tried on both my Fedora and my Mandriva system. I did not bother trying this with Slackware because that's just I want. That's the system I use for most everything that I do all day. It's working really, really nicely and I'm not going to go playing around with it. So I can verify at least that this is good news for Fedora and Mandriva and probably Ubuntu as well. The configuration stuff, this is where it gets fun. First of all, you're going to want to make sure that everything is getting loaded up when you boot your system. So however your system does that, whether it's in the rc.com or whether it's in rc.1 or wherever you've got all your little files that you're starting up on at boot time, you're going to want to add to that. Make sure that you've got Avahi-Daman and you've got Pulse Audio being loaded. Those are the two that you want to ensure are being loaded up when you start your computer. The Avahi-Daman is the one that will help your computers kind of be aware of each other and the Pulse Audio one is the one that starts Pulse Audio. Okay. You're also going to want to make sure that the user that you are usually identifying yourself as has access to the Pulse system. There's a group for the Pulse system and it's called Pulse-Axis and you will want to add yourself to that as well as you're the root user, probably. So you would put G-P-S-S-W-D, space-A, space, username, space, Pulse-Axis. And you want to do that as a root user. So what you need to do that is a sudo or an SU and then your password and then this command, whatever, that's how you want to do that. That adds the people that you are typically using your computer as to the Pulse Audio access group and that's kind of important. So you've got also that you need to kind of direct Pulse Audio, make sure it's using all SU plug-in libraries. So the way to do that is to find the asound.conf file, ought to be in slash Etsy slash, well it's called asound.conf. If that's not there you can either create it which is what Pulse Audio seems to recommend to use this Etsy slash asound.conf configuration file or you can also put it in your user folder. So till the slash.asoundrc that will also do the same thing. And you want to add a couple of lines to this. So that's going to be PCM.Pulse, open curly bracket type Pulse that is TYPE, space, Pulse, closed curly bracket and then CTL.Pulse, open curly bracket type Pulse, closed curly bracket. And then you also need to add the PCM.Exclamation point default, open curly bracket type Pulse, closed curly bracket, CTL.Exclamation point, default, open curly bracket type Pulse, closed curly bracket. Okay, that is going to make sure that Pulse Audio, the Pulse Audio plug-ins for the ALSA Libs is being used by your system. So that is what you want to use in order for Pulse and ALSA to kind of talk to each other I guess on an equal basis. If you want the, you want Pulse to be the default device. You want Pulse to be the thing that is talking to your hardware. In this case, you need to go to slash Etsy slash Pulse slash default.pa. So this is the same place that we had added the line about loading the e-sound modules. So now we're going back to that, slash Etsy slash default slash, or rather slash Etsy slash Pulse slash default.pa. Open that up in the text editor and you're going to tell it that you want the hardware on the computer to be the default output for this device, as well as the default input for this device. So that is going to be load-module, space-module, dash also, dash sync space device equals HW colon zero. That's one line and that's the default sync. And then there's the next line, load-module, space-module, dash also, dash source, space, device equals HW colon zero. You can also try to do all of this with how. And I'm not a huge fan of how, I did not do this, but you can do it. So instead of doing the hardware, you know, defining the hardware in that manner, you can also just refer it straight to how. So that would be load-module, space, module-how, dash detect. So you're just kind of passing it over to how and letting you how worry about it. I haven't tried it, I should, but I just, I don't use how that much, so I didn't bother. But that will, that will pretty much get, you know, everything, that'll get all set in pulse audio talking to each other. There are variations on this theme, which I'm not going to really go into. But if you do, if you know that you do have multiple outputs or inputs on your hardware, you can certainly go into the default.pa, and add very specific, specific hardware destinations. So it's sort of like a load-module, space-module, dash also, dash sync, space, device equals front, or device equals rear. Or whatever, you know, hardware you're designating that are going to be the things that will be controlled or available to pulse audio. Turns out that for Flash to work correctly with pulse audio, the easiest fix is to just get Flash 10, Flash Player 10. It is still in beta, but Jay Lindsay said that he installed it without issue, and I installed it on my triple EPC without issue, and in fact it seems to work quite well. It's actually the first time I think I have heard, like I went to YouTube and played something, it was the first time I've heard YouTube through my Firefox browser on that computer. It was running mandriva, not the default, not the default, whatever freaking system it came with, it's Android, that's what it was. So that was pretty cool. So just ditch Flash Player 9, upgrade the 10. I don't see why you wouldn't. I mean, yeah, it's beta, but I mean, what do you do with your Flash Player really? Unless you're just always finding yourself on Flash sites and you really need a stable version of Flash, I would just go ahead and upgrade to 10, because the only time I would ever use it is for stupid YouTube stuff, and you know, if I can't see the dancing grandmother and the sleeping kitten, it's probably not going to kill me. So there's also something called S-D-L, which is another kind of sound library, and if you're using it, and you might be because certain applications I guess do use it, I don't really know. I think, if I recall correctly, when I was doing this, I went ahead and first of all updated S-D-L, and then I think you have to patch it, and then you can set this up to use Pulse as well. So what you do there is you type into a terminal command, export, space, S-D-L, underscore, audio driver equals, quote, quote, quote, quote, quote, quote, quote, quote, and the S-D-L, underscore, audio driver is all in caps. That sets up S-D-L to just refer to Pulse. It's pretty simple. You can also, or you might have to patch it. I think I had to patch it. I don't really remember how I figured that out, but I do remember applying a patch to something. And on this arch, on this WikiArch Linux page, they have a link to that patch. And it's really, it's a simple, simple thing. You just, you untar it. I think there's an instruction on how to do it, and I think literally all you do is, it's really simple. I don't really exactly remember how, but it's, it was like, a lot simpler than I realized. I thought it was going to have to compile, or recompile something with this patch, but it's not like that. You basically unzip it to a certain location, I think, and it just puts everything where it's supposed to go, and it just kind of works from there. So that's kind of nice. GStreamer, you should probably go ahead and do that kind of thing to GStreamer, you know, is being used in quite a few different applications these days. So if you want that to be able to talk to Pulse, you'll want to configure that. So again, you need a plug-in for it, and that is GStreamer0.10-Pulse right now. Obviously, the version number might go up, but if you do some kind of, you know, apt-get search, or young search, or, you know, URPMI search, whatever kind of search you're going to do through, whatever repo you look at, you'll be able to find the most recent GStreamer Pulse audio plug-in. Now there's a whole, there's its own little tool within this plug-in that you can use, and that's the GConf tool. So it's GConf tool-2, space-t, space-string, space-dash-set, and you're probably going to just refer to this wiki page for all this stuff. And there's a way to set the audio source as well, and that is GConf tool-2, space-t, space-string, space-dash-set, space-slash-system-slash-GStreamer-slash-0.10-slash-default-slash-audio source as in audio-SRC space-Pulse source as in P-U-L-S-E-S-R-C. So that's the way to do that. There are lots of other plug-ins that you might want to do similar things to. I'm not going to list everything. There's OpenAL. Again, you just kind of run some commands to make sure that, you know, these plug-ins are aware that yes, you are using Pulse, and you would like them to defer to Pulse, and then it typically works. One of the big ones that I have found is very helpful to have going is the OSS. So if you've got OSS, which I guess is the older Linux sound system, you can modify that with something called PA-DFP. It's a little command for Pulse audio to manage, you know, OSS. So it's D-A-DFP space OSS, and those are both capital OS, or those are all three capital OSS program. That's all one word, OSS program. So it's the whole command. PA-DSP space OSS program. That will direct the OSS to use Pulse. Now there's a script on this site that you can copy and paste into some program. It's OSS program-real, and you can use that. I don't think I used that, and I have not had any problem. I'm pretty sure all I did was the PA-DSP space OSS program. I shouldn't say pretty sure. That's what I did, and it seems to be working fine for me. Okay, so basically, to be honest, that's it. I mean, that's pretty much it. You go through the wiki, you plug in the commands that seem to apply to your system, you know, and you kind of want to go into it smartly and think, okay, well, what programs am I using? What am I having problems with? Like, if it's Flash that you're having a problem with, is that the only thing you're having a problem with? You might as well just update to Flash 10, because realistically that might be all that's, quote, wrong with your system. On the other hand, if you're doing, you know, five different podcasts, and you need audacity to work seamlessly and reliably, then doing this wiki step-by-step would probably be who view, because it will force you to go through and check the configuration, just kind of check it against what Arch Linux wiki says it should be, versus what your system thinks it should be. And certainly it did fix my audacity issues. That was the biggest, I guess, issue with Paul Sadiot that I've had. The Flash support I didn't really care about, because I don't use Flash that much anyway. But the audacity, you know, I really, I was having a lot of problems with that. And like Kajari mentioned, I think on the last episode, I think he mentioned this, there is the PA suspender application that you can launch things, so that it temporarily suspends Pulse Audio, type in Pulse PA suspender space audacity, and that would typically work. But it was a little bit buggy I found. But after doing this wiki, audacity is back up and running. I can launch it from my K menu without any problem. You know, no errors. It just kind of works. Having said that, KDE, from what I understand, is not 100% compatible with Pulse, because there is an element in KDE called Phonon that I guess kind of handles a lot of the sound stuff. Whether this is all going to go away after I update to 4.1, I'm not sure yet. But certainly I haven't had, since doing this wiki, I, the steps in this wiki, I've not had really any issues with Pulse Audio. I can't, I can't complain. The only potential problem that I really haven't looked into yet are like VoIP, soft phones, SIP phones. I haven't really played around with anything on that yet, on this particular computer, but I will do that. And I don't know, you'll probably hear me ranting about it somewhere, if it doesn't work. But so far, yeah, this wiki page is a really great resource. As long as you can kind of parse through it and look at the parts that apply to your system and not just arch, you should be fine. It works really well, and it's really well written, and a big thanks goes out to Jay Lindsay for, for referring me to that. So, good luck and enjoy Pulse Audio, such as it is. Thank you for listening to Hack the Public Radio. HPR is sponsored by Carol.net, so head on over to CARO.nc for all of her community. You