[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.
no way to compare when less than two revisions
Diferencias
Muestra las diferencias entre dos versiones de la página.
— | es:howtos:multimedia:pulseaudio [2019/02/28 02:03 (UTC)] (actual) – creado slackwarespanol | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
+ | ====== PulseAudio ====== | ||
+ | PulseAudio is a sound server running on top of some other sound system, usually ALSA. The original purpose was to get software mixing and transmit sound over network. Now PulseAudio is more than that, but it came at cost of increased complexity, which is not very good, considering the Linux sound system is already overly complex. But despite that the sound server is widely used by most Linux distributions. Slackware is not one of them because of its KISS principle and the fact that ALSA does its job fairly well in majority of cases. However, there are some programs (cough, Skype v4.3+, cough) that require PulseAudio in order to have working sound. There is a project called [[https:// | ||
+ | |||
+ | |||
+ | ===== Installation ===== | ||
+ | |||
+ | SlackBuilds.org is a great place to obtain packages missing on the stock system. Luckily for us, it has [[http:// | ||
+ | |||
+ | Besides PulseAudio itself, you'll need alsa-plugins in order to get sound from non-pulse applications. Also, '' | ||
+ | |||
+ | You can build the packages either directly using SBo, or using '' | ||
+ | |||
+ | You can also use pre-compiled packages in order to install all necessary applications, | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | |||
+ | ==== Installation on a x86 or pure x86_64 system ==== | ||
+ | |||
+ | This part used to be as easy as " | ||
+ | |||
+ | Other than that the installation part is pretty straightforward and SlackBuilds work perfectly. | ||
+ | |||
+ | For pavucontrol you need to resolve more dependencies, | ||
+ | |||
+ | |||
+ | ==== Installation on a x86_64 multilib system ==== | ||
+ | |||
+ | Here I'll assume you know how to set up a multilib system and how to build 32bit packages on it. In case you don't, read [[slackware: | ||
+ | |||
+ | If you want 32bit applications (like Skype) on a multilib system to have sound through PulseAudio, you'll have to build compat32 package. And this is where things get complicated and manual intervention is needed. | ||
+ | |||
+ | First, install 64bit package of PulseAudio as described above. | ||
+ | |||
+ | Second, you need to compile 32bit package. Unfortunately, | ||
+ | |||
+ | PKG_CONFIG_PATH=/ | ||
+ | |||
+ | This will force PA to use the correct libraries and allow it to compile. Make compat32 package and install it. You don't need 32bit pavucontrol. 32bit alsa-plugins is needed only for 32bit applications, | ||
+ | |||
+ | ===== Using PulseAudio ===== | ||
+ | |||
+ | Actually, it's difficult to //not// use it, because it just keeps spawning. If you want to use PulseAudio exclusively as you sound server, then that's fine. If not, I'll cover what to do a bit later. | ||
+ | |||
+ | |||
+ | ==== PulseAudio as the main sound system ==== | ||
+ | |||
+ | All you need to do now it just create ''/ | ||
+ | |||
+ | pcm.pulse { | ||
+ | type pulse | ||
+ | } | ||
+ | | ||
+ | ctl.pulse { | ||
+ | type pulse | ||
+ | } | ||
+ | | ||
+ | pcm.!default { | ||
+ | type pulse | ||
+ | } | ||
+ | | ||
+ | ctl.!default { | ||
+ | type pulse | ||
+ | } | ||
+ | |||
+ | That' | ||
+ | |||
+ | |||
+ | ==== PulseAudio as an additional sound system ==== | ||
+ | |||
+ | It is possible to have PulseAudio not use ALSA exclusively for itself. For that you'll need to comment out all strings about udev in '' | ||
+ | |||
+ | If you are annoyed by PA constantly spawning, define '' | ||
+ | |||
+ | The downside of this approach is that you are limited to only one device at a time, while udev allows PulseAudio to use all sound devices it finds. You'll have to configure your devices manually through ALSA's asoundrc config file. | ||
+ | |||
+ | In case of sound capturing, you have two options. First, use '' | ||
+ | |||
+ | When using PA as an additional sound system, you'll need to choose it as an output sound device in applications you want to use PA, while other will use the default sound system. | ||
+ | |||
+ | |||
+ | ==== Starting PulseAudio ==== | ||
+ | |||
+ | XDG-compliant DEs will start PulseAudio automatically thanks to ''/ | ||
+ | |||
+ | In case you aren't using those, you can use '' | ||
+ | |||
+ | |||
+ | ==== PulseAudio in Xfce ==== | ||
+ | |||
+ | If you use PA as the default sound system, everything will work just fine, except the multimedia keys. For them to work correctly, install [[http:// | ||
+ | |||
+ | |||
+ | ==== PulseAudio in KDE ==== | ||
+ | |||
+ | KDE uses GStreamer to play sound. ALSA applications will work fine, as they' | ||
+ | |||
+ | While '' | ||
+ | |||
+ | Gstreamer applications will try to use ALSA, which re-routes the sound to PA, but in some rare cases it may not work. For them to use PA directly, you'll need to rebuild '' | ||
+ | |||
+ | |||
+ | ==== PulseAudio mixers ==== | ||
+ | |||
+ | The main mixer for PulseAudio is '' | ||
+ | |||
+ | In case you are running PA as your main sound system and set up '' | ||
+ | |||
+ | If you like CLI commands, there' | ||
+ | |||
+ | Speaking of '' | ||
+ | |||
+ | pactl set-sink-volume 0 +5% #raise the main sink's volume by 5% | ||
+ | pactl -- set-sink-volume 0 -5% #lower the main sink's volume by 5%; notice the " | ||
+ | pactl set-sink-mute 0 toggle # | ||
+ | |||
+ | For more commands and options see '' | ||
+ | |||
+ | By the way, by default PA also installs bash completion script, which may come in very handy when using '' | ||
+ | |||
+ | |||
+ | ====== Sources ====== | ||
+ | |||
+ | Some information was taken from [[https:// | ||
+ | |||
+ | Originally written by [[wiki: | ||
+ | |||
+ | |||
+ | <!-- English isn't my native language, so a grammar check is needed. Suggestions and pointing to mistakes I made are also appreciated --> | ||
+ | {{tag> |