PipeWire: Difference between revisions
From YM2149.org
Jump to navigationJump to search
(Created page with "* The latest pile of poo that claims to 'fix' audio on Linux * https://linuxmusicians.com/viewtopic.php?t=24830 ** Criticism rudely dismissed just as it was when pulseaudio was around, and what happened to that? Category:Wisdom") |
No edit summary |
||
Line 1: | Line 1: | ||
* | <div style="float: right"> | ||
* | __TOC__ | ||
** | </div> | ||
* the latest framework that claims to 'fix' linux audio | |||
* existing interfaces e.g. alsa, pulse, jack are emulated | |||
** the idea is that existing tools/apps will 'just work' without modification | |||
** fair in the case of a well-known browser that refuses to talk to anything but pulse | |||
== Problems == | |||
* in practice interface emulation is incomplete, so tools in particular are less capable than before | |||
** this is inevitable, interfaces will only be as complete as what looks good, they will never be as powerful as the real thing | |||
* all audio hardware is grabbed on startup denying anything else from using it directly | |||
* something called wireplumber controls pipewire via a secret interface | |||
** impenetrable configuration | |||
=== Parallels with PulseAudio === | |||
* deployed way before it's ready, which would be fine it that wasn't at the exclusion of legacy services | |||
* obsession with the way things 'should' be done at the expense of use-cases of real users | |||
** in particular, aggressive teardown of user services after logout | |||
* criticism from real users rudely dismissed, for example https://linuxmusicians.com/viewtopic.php?t=24830 | |||
** i cannot stress enough how icky it is to blame frustrated users for obtuse software, do better | |||
* please do not force users to understand systemd, it is like unconsensually involving them in a kink | |||
=== Can we fix it === | |||
* it is essential that users have the power to take matters into their own hands if necessary | |||
** this is not a support burden, power users can support each other | |||
* ... | |||
== Use case == | |||
* fundamentally, i have the hardware and want to send audio to it without jumping through hoops such as lua | |||
* one instance of mpd for builtin audio, another for hdmi | |||
** usb audio adapters each with its own mpd planned for the future | |||
* mpd runs as a regular user, and every instance should continue to be audible after logout | |||
== Just use ALSA == | |||
* <code>sudo systemctl --global disable</code> everything with pipewire or wireplumber in its name | |||
** this includes something called filter-chain | |||
** check no such symlinks remain under <code>/etc/systemd</code> | |||
** reboot and verify nothing with wire in its name is running | |||
* add self to <code>audio</code> group | |||
** <code>aplay -L</code> should work now | |||
** probably need to crank volume back up using alsamixer | |||
[[Category:Programming]] | |||
[[Category:Wisdom]] | [[Category:Wisdom]] |
Revision as of 14:38, 27 January 2025
- the latest framework that claims to 'fix' linux audio
- existing interfaces e.g. alsa, pulse, jack are emulated
- the idea is that existing tools/apps will 'just work' without modification
- fair in the case of a well-known browser that refuses to talk to anything but pulse
Problems
- in practice interface emulation is incomplete, so tools in particular are less capable than before
- this is inevitable, interfaces will only be as complete as what looks good, they will never be as powerful as the real thing
- all audio hardware is grabbed on startup denying anything else from using it directly
- something called wireplumber controls pipewire via a secret interface
- impenetrable configuration
Parallels with PulseAudio
- deployed way before it's ready, which would be fine it that wasn't at the exclusion of legacy services
- obsession with the way things 'should' be done at the expense of use-cases of real users
- in particular, aggressive teardown of user services after logout
- criticism from real users rudely dismissed, for example https://linuxmusicians.com/viewtopic.php?t=24830
- i cannot stress enough how icky it is to blame frustrated users for obtuse software, do better
- please do not force users to understand systemd, it is like unconsensually involving them in a kink
Can we fix it
- it is essential that users have the power to take matters into their own hands if necessary
- this is not a support burden, power users can support each other
- ...
Use case
- fundamentally, i have the hardware and want to send audio to it without jumping through hoops such as lua
- one instance of mpd for builtin audio, another for hdmi
- usb audio adapters each with its own mpd planned for the future
- mpd runs as a regular user, and every instance should continue to be audible after logout
Just use ALSA
sudo systemctl --global disable
everything with pipewire or wireplumber in its name- this includes something called filter-chain
- check no such symlinks remain under
/etc/systemd
- reboot and verify nothing with wire in its name is running
- add self to
audio
groupaplay -L
should work now- probably need to crank volume back up using alsamixer