Live data from Hacker News

The Linux audio stack demystified (and more)

blog.rtrace.io

11–20 of 136 posts

Re: The Linux audio stack demystified (and more)

#11
post #6
post #5

I now have flashbacks to when I tried to get sound working on my Gentoo install 15 years ago. It seems that now everything has changed (wtf is pipewire) and still requires arcane knowledge to get everything working smoothly...

Pipewire is a major development that's especially important for Wayland desktop. It was hard to miss unless you haven't used Linux in a long time.

I don't know what Pipewire is as well. I've used Linux daily for 10+ years, but I've never bothered to use Wayland.

Re: The Linux audio stack demystified (and more)

#12
post #6
post #5

I now have flashbacks to when I tried to get sound working on my Gentoo install 15 years ago. It seems that now everything has changed (wtf is pipewire) and still requires arcane knowledge to get everything working smoothly...

Pipewire is a major development that's especially important for Wayland desktop. It was hard to miss unless you haven't used Linux in a long time.

I've been a WSL user for years now. Way less effort.

Re: The Linux audio stack demystified (and more)

#13
post #3

> ALSA is the core layer of the Linux audio stack. It provides low-level audio hardware control, including drivers for sound cards and basic audio functionality. > ... > Ulike PuleAudio and JACK, PipeWire does not require ALSA on a system, in fact if ALSA is installed the output of ALSA is very likely pushed through PipeWire I don't get this part. If ALSA represents the kernel level hardware drivers for audio, how do…

I was also confused by this bit. If ALSA is part of the kernel, how can it not be installed?

The article doesn't note kernel-ALSA and the old userspace-ALSA libraries that apps use to push audio.

Re: The Linux audio stack demystified (and more)

#14
post #5

I now have flashbacks to when I tried to get sound working on my Gentoo install 15 years ago. It seems that now everything has changed (wtf is pipewire) and still requires arcane knowledge to get everything working smoothly...

I just install fedora and everything works out of the box.

Re: The Linux audio stack demystified (and more)

#15
post #6

Earlier quoted context omitted.

Pipewire is a major development that's especially important for Wayland desktop. It was hard to miss unless you haven't used Linux in a long time.

I don't know what Pipewire is as well. I've used Linux daily for 10+ years, but I've never bothered to use Wayland.

Well, time to move with the progress. I've been using KDE Wayland session for several years already.

Re: The Linux audio stack demystified (and more)

#16
post #9

Earlier quoted context omitted.

This. Also, how does PulseAudio not support videoconferencing?

May be it's about a higher layer of ALSA API, not about actual hardware drivers.

yeah I think there are two ALSAs, one in the kernel as drivers and one as a userspace library.

Re: The Linux audio stack demystified (and more)

#17
post #15

Earlier quoted context omitted.

I don't know what Pipewire is as well. I've used Linux daily for 10+ years, but I've never bothered to use Wayland.

Well, time to move with the progress. I've been using KDE Wayland session for several years already.

nah I'm okay thanks. X11 still works flawlessly for me.

Re: The Linux audio stack demystified (and more)

#18
post #3

> ALSA is the core layer of the Linux audio stack. It provides low-level audio hardware control, including drivers for sound cards and basic audio functionality. > ... > Ulike PuleAudio and JACK, PipeWire does not require ALSA on a system, in fact if ALSA is installed the output of ALSA is very likely pushed through PipeWire I don't get this part. If ALSA represents the kernel level hardware drivers for audio, how do…

ALSA had both kernel-space drivers and a user-space API layer.

I think what they're getting at is that PipeWire speaks the ALSA API, so an app or game that linked against ALSA will connect to PipeWire and should Just Work, without needing to be rewritten to target PipeWire's API.

PipeWire does the same trick with the PulseAudio API as well. on my PipeWire-using NixOS box, for example, I can connect through the `pavucontrol` GUI, my `pactl`-based keybindings work the same, etc. it's a clever design that allows them to avoid what would otherwise be a nasty pile of backwards-compatibility issues and poor desktop user experience.

Re: The Linux audio stack demystified (and more)

#19
post #3

> ALSA is the core layer of the Linux audio stack. It provides low-level audio hardware control, including drivers for sound cards and basic audio functionality. > ... > Ulike PuleAudio and JACK, PipeWire does not require ALSA on a system, in fact if ALSA is installed the output of ALSA is very likely pushed through PipeWire I don't get this part. If ALSA represents the kernel level hardware drivers for audio, how do…

This. Also, how does PulseAudio not support videoconferencing?

Well. PulseAudio is a plain sound server. It does not handle video at all.

Re: The Linux audio stack demystified (and more)

#20
post #5

I now have flashbacks to when I tried to get sound working on my Gentoo install 15 years ago. It seems that now everything has changed (wtf is pipewire) and still requires arcane knowledge to get everything working smoothly...

PipeWire is drop-in replacement for pshshaudio with additional features (while preserving pshsh part sometimes). Only difference is 15 years ago half of the problems with sound were fixed by uninstalling pulseaudio as it was in early stages full of bugs but still pushed to many distros similar to systemd. Today's pipewire is as easy as uninstalling pulseaudio, installing pipewire, and most of the times it will continue working
Post reply on HN