[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip / qa] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: 91689517_p0.png (708 KB, 1100x1400)
708 KB
708 KB PNG
What is pipewire's audio server? The equivalent to /usr/bin/pulseaudio?

Is pipewire good for me?
>>
>>101574586
>What is pipewire's audio server
pipewire
>>
>>101574586
Sniff brat ass
>>
File: the brat.jpg (43 KB, 848x480)
43 KB
43 KB JPG
>>101574586
>>Is pipewire good for me?
it's becoming the default in newer distros, but the features it ads compared to pulse are mostly related to flatpak compatibility and the special low-latency production stuff that JACK used to do. If you don't need either of those then there's not much in it for you, so you can either leave an existing pulse setup as-is, or just take the default of pipewire for a new install.
>>
>>101574992
I don't use pulse because I hate Poettershit. I'm using raw alsa, but it's a big pain because it lacks certain features or has significant bugs in popular software.
God, why does Linux have to be so shit.
>>
>>101575030
just use Pipewire, pulse was phased out
>>
>>101574992
>the same shit but with more bloat™
the absolute state of modern computing
>>
>>101575040
If all he wants is basic "my computer should be able to play a music file" kind of sound then arguably pipewire is even more bloated than pulse; it has even more features that he'll never use.
>>
>install pipewire-bin
>run /usr/bin/pipewire
>start mpv with --ao=pipewire
>no audio
It's the pulse experience.
>>
>>101575168
I remember all the stories about how Pulse was broken all the time for some years after it was released so when Pipewire showed up I said "I'm not fucking touching it, maybe in 2030 or so"
>>
>>101575168
With mpv -v it claims pipewire has no audio sinks. (It should actually print that as an error if I set it as --ao explicitly, whoever implemented that fucked up.) Just to be sure I terminated anything that uses audio, checked with lsof /dev/snd/* that nothing is using ALSA, and restarted pipewire. Still nothing.
Does this clownshit want me to write a config file or something, like Xorg did in the good old days?
>>
>>101575168
you need a session manager
install wireplumber
>>
>>101575646
Even more moving parts that communicate together using fragile methods?
I hope this doesn't continue the trend of every new solution of the Linux audio mess being worse than the one before.
>>
>>101575654
>Even more moving parts that communicate together using fragile methods?
no, it's the unix philosophy
pipewire does one thing well (mix and stream multimedia)
wireplumber does one thing well (connect applications to outputs)
i know you're trying really hard to make it look bad but pipewire just works for normal people
>>
Just use Alsa. You don't need the other shit.
>>
>>101575670
>i know you're trying really hard to make it look bad
No. I merely tried to install and use it without previous knowledge.
> but pipewire just works for normal people
They said that about pulse too. Hell, they even said that when every shitty DE came with its own shitty sound server.
>>
File: 115784325_p0.png (870 KB, 886x1353)
870 KB
870 KB PNG
I will try again in around 12 hours. If the thread is still there I will post results and some Sakurakos.
>>
>>101575703
>I merely tried to install and use it without previous knowledge
you didn't install the necessary packages and your system didn't work
>They said that about pulse too
and it was true for pulse too
pipewire is better because it has lower latency, better resampling quality, more accommodations for power users and can handle video
both of them just work
>>
File: 1503634011774.png (150 KB, 262x451)
150 KB
150 KB PNG
>>101575708
I'll check this thread tomorrow for them
>>
>>101575168
>>101575646
>>101575654
>>101575670
>>101575703
>>101575734
Meanwhile, sndio just werks. Linuxfags lose again.
>>
File: 1500470957730.jpg (176 KB, 1000x769)
176 KB
176 KB JPG
>>101575881
just for you
>>
>>101575881
tsmt, hiro should fire /g/ jannies allowing the flooding of this board.
>>
>>101576141
your pic also applies to frogs and wojaks, so why not spam them with it too?
>>
>>101575808
https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/FAQ#why-not-use-sndio
>Communication happens with pipes. This introduces buffering and an undefined latency
>It is also quite heavy because it is not zero copy. It performs well for larger buffers
but degrades for smaller buffers
>It has limited security features based on file permissions
>It has no support for dynamic latency
>No support for ALSA card profiles, complicated mixer setups, etc
>>
>>101577139
There are like 1 frog and 1 jak for 10 pedomoeshit posts.
>>
>>101577166
>It has no support for video.
That's an advantage. Why should an audio system do video? The fuck.
>>
>mixing and mostly resampling requires floating point operations, which are problematic in the kernel. To do mixing and resampling efficiently, you also need to use vector operations for various architectures and adapted to various use cases. This complexity and flexibility in implementations is not something you would want in the kernel, especially when it would make things worse, see above.
Yet the kernel does this for various other things, like crypto or RAID.
>>
>>101575071
>feature bloat
who cares as long as the CPU and memory usage is low
>>
Im curious as to what kind of audio setups you guys have that you are running into issues with pulse/pipewire
>>
>>101579180
Using Linux.
>>
>>101574992
>flatpak compatibility
You don't have to use Pipewire as the system audio daemon for that. Works just fine with Pulse.

Anyway, superior Bluetooth audio support is a big advantage for many casual users. There's lower resource usage as well.
>>
>>101574992
>flatpak compatibility
This and dbus entanglement are anti features.
>>
File: 1707638226872143.gif (2.13 MB, 445x250)
2.13 MB
2.13 MB GIF
>>101575708
OK I started both pipewire and wireplumber. Now wireplumber keeps /dev/snd/controlC0 open while pipewire has /dev/snd/seq opened. mpv now works with --ao=pipewire. But anything using ALSA and Pulse don't.
How to fix this?
>>
 pw.core ../src/pipewire/core.c:183:destroy_proxy: 0x55976b528d50: leaked proxy 0x55976b55f290 id:3

I can only imagine what a shitty mess the code is.
>>
>>101581725
Just read the instructions for your distro.
>>
File: Fk1JOV1aMAA5o7t.jpg (206 KB, 1148x1342)
206 KB
206 KB JPG
>shitty nightmare of opaque dbus crap
I hate modern Linux.
>>
>>101574586
Last time I tried it, it was broken on my machine so I reinstalled pulseaudio.
>>
File: 1709438824282296.png (85 KB, 451x356)
85 KB
85 KB PNG
>PipeWire also supports containers like Flatpak and does not rely on the audio and video user groups. Instead, it uses a Polkit-like security model, asking Flatpak or Wayland for permission to record screen or audio.
What a load of shit. Too bad ALSA is so badly implemented and under-documented even after like 20 years of existence.
>>
File: 1713051308073116.jpg (1.98 MB, 3622x4093)
1.98 MB
1.98 MB JPG
>>101581725
The soltuion for pulse was: start a third demon. I went from 0 audio demons to 3 audio demons, and the audio demon can record my screen for some reason.
This situation is still better than on win or mac, right? Right?
>>
File: 108696911_p0.jpg (3.4 MB, 2894x4093)
3.4 MB
3.4 MB JPG
I will admit that the pipewire mess is probably better than gstreamer deadly horror.
Now that I switched from stone age tech like ALSA to ultra modern technology, the cream of the crop, how do I do per application volume control?
Come on, I'm even feeding you Sakurakos.
>>
I love linux, but audio has always been a shitshow. Bought myself a rpi5. Check audio settings. What's pipewire? Let's try it. No audio. Back to pulseaudio I chuckled. Up until a couple of years ago I uninstalled it immediately from any distro. It seems they came up with something worse now. O how the turntables.....
>>
File: 1662373530238074883.jpg (471 KB, 2045x3000)
471 KB
471 KB JPG
>>101582204
I'm using easyeffects to do some basic filtering for meet/discord calls and it has a per application volume control, not sure if this is the best method but "it just works"
>>
File: 1696162425987884.jpg (2.01 MB, 2247x3248)
2.01 MB
2.01 MB JPG
>>101582325
>easyeffects
Tried it. It can change per client volume levels, but it doesn't remember it. I want to use it to mute a client permanently. But if you restart the application, the audio is back. Before that I added a dummy ALSA device by loading snd-dummy and making the application use it, worked great.
Also this fucking trash uses that new GTK shit that overrides my window decorations, I fucking hate that shit so much.
>>
>>101581725
you probably need to install pipewire-alsa and pipewire-pulse. or whatever your distro packages them as.
>>
>>101582560
I had to explicitly start the pipewire-pulse demon >>101582131
Which confuses me, what do all the other demons do when they can't just load the pulse demon as plugin?
>>
File: 86415514_p7.jpg (250 KB, 2500x2000)
250 KB
250 KB JPG
>audio skips when exiting easyeffects (even if you didn't add any effects or change anything else)
>I didn't have audio skips with ALSA for at least 10 years
Fascinating technology.
>>
File: 81826037_p0.png (970 KB, 1200x1100)
970 KB
970 KB PNG
ALSA still doesn't work
>if nothing else is playing, ALSA applications can open audio
>but then no pipewire application can open audio
>if pipewire has audio open, no ALSA applications run
libasound_module_pcm_pipewire.so is installed.
>>
>>101579045
screen sharing, webcams, etc
having access to both with the same API is a huge benefit
don't be mistaken, it can't encode video or do any of that fancy stuff, the purpose of pipewire is to mix and stream multimedia which happens to include both audio and video
>>101582204
pavucontrol still works fine
>>101583420
delete your old ALSA configs
>>
File: E-m-nqEVcAEWt5o.jpg (917 KB, 938x1165)
917 KB
917 KB JPG
>>101584631
>having access to both with the same API is a huge benefit
You know what would be even more beneficial? If video were part of the display protocol.
>pavucontrol still works fine
I don't want to use pulse garbage.
>delete your old ALSA configs
Don't have any.
>>
>>101584692
>If video were part of the display protocol
the display protocol should not be handling webcams lmao
>I don't want to use pulse garbage
your choice, you're only making it harder for yourself by foregoing the obvious alternatives
>Don't have any
alsamixer should show pipewire as the default sound card
if it doesn't you're doing something wrong
>>
File: 87720188_p0.jpg (1.09 MB, 1293x2597)
1.09 MB
1.09 MB JPG
>>101584743
>the display protocol should not be handling webcams lmao
But it should handle screensharing.
>your choice, you're only making it harder for yourself by foregoing the obvious alternatives
What's wrong with asking proper support or a central feature, that isn't using emulation of an older sound system it replaces?
>alsamixer should show pipewire as the default sound card
It doesn't. aplay -l doesn't even list anything pipewire related.
>>
>>101584819
>But it should handle screensharing
doesn't really matter, both are fine but you already have a security model and filters in pipewire so you might as well implement it on top of the video mixing architecture there
>What's wrong with asking proper support or a central feature, that isn't using emulation of an older sound system it replaces
you can configure everything manually with the CLI
https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Migrate-PulseAudio#sink-inputsource-output-volumemute
however, since all the existing DEs implement their volume control on top of pulseaudio, there has been no reason to replace that API yet
>It doesn't. aplay -l doesn't even list anything pipewire related
that's for hardware devices
aplay -L should list pipewire as a supported option
your distro is supposed to install a config that makes pipewire the default sound output
>>
>>101574586
Pipewire is an audio server like pukseaudio yes but it's also much more than that. It's handles multimedia routing and pipeline processing. Pipewire handles audio, video, screen capture, Webcam, etc and you can combine these as inputs to a pipewire node that you can pipe into a program and you can do that at runtime with programs such as qpwgraph. When you recording your screen do you only want to record the audio from 2 applications instead of the whole desktop? sure, just drag the applications into the screen recorder in qpwgraph. This also applies to effects, for example you can add a noise filtering node that you pipe mic audio through, or a background blur filter for your Webcam to make it work in all applications. It's honestly much more professional than anything windows or Mac has.
>>
>>101585144
also on linux only one application can access a Webcam or similar video sources at once. Pipewire does the work to make sure multiple applications can access it at the same time.
>>
>>101585144
>sure, just drag the applications into the screen recorder in qpwgraph
this is based as fuck
i use this though because i'm lazy: https://github.com/dimtpap/obs-pipewire-audio-capture
>It's honestly much more professional than anything windows or Mac has
OP doesn't want software that just works or has professional use cases beyond his comprehension
he wants the dumbest possible solution because the only thing that matters is that it looks "clean", "minimalist" and isn't "bloated"
>>
>>101584907
>you can configure everything manually with the CLI
I normally prefer the CLI, but this really is a thing that should have a GUI.
Why is there software qpwgraph that can change god knows what, but not volume control?
>aplay -L should list pipewire as a supported option
It lists it. I can even use it as device in mpv with --audio-device=alsa/pipewire but just using --alsa-device=alsa causes on error.

>>101585223
>OP doesn't want software that just works or has professional use cases beyond his comprehension
>he wants the dumbest possible solution because the only thing that matters is that it looks "clean", "minimalist" and isn't "bloated"
The more code is involved the more can break. Why yes, I dislike unnecessary complexity. If I was a retard who wants shit that just werks no matter the cost I'd just use windows or mac.
>>
>>101585524
>I normally prefer the CLI, but this really is a thing that should have a GUI
the GUI is pavucontrol
>I can even use it as device in mpv with --audio-device=alsa/pipewire but just using --alsa-device=alsa causes on error
arch installs /etc/alsa/conf.d/99-pipewire-default.conf
your distro should be doing something similar
>Why yes, I dislike unnecessary complexity
you think it's unnecessary because you don't understand how it works
a "dumb pipe" approach can't achieve low latency, or support multiple sample rates at the same time, or high quality resampling
pipewire doesn't shy away from complexity when it's necessary to achieve high quality
>>
>>101574586
i couldn't get davinci resolve studio to consistently play audio in sync without switching to pulseaudio so it's trash as far as i can tell.
>>
>>101585730
>the GUI is pavucontrol
That is a pusleaudio thing. I know it works because of the pulse emulation, but I may as well use "wine firefox.exe" or similar brain damage if I accept that.
>arch installs /etc/alsa/conf.d/99-pipewire-default.conf
I have that file.
>a "dumb pipe" approach can't achieve
I never was proposing dumb pipes, and ALSA isn't using dumb pipes either.
>>
>>101585801
>That is a pusleaudio thing
and pipewire implements the pulseaudio API
you're crying about things that don't matter, it would be a huge waste of time to rewrite all volume control applications
you wouldn't gain anything
>I have that file
then i can't help you
here's what i did:
>install pipewire, pipewire-alsa, pipewire-pulse and pipewire-audio
>enable the relevant systemd services
>it just works™
>>
snd_hda_intel 0000:0c:00.4: azx_get_response timeout, switching to polling mode: last cmd=0x00339000
[ +1.011996] snd_hda_intel 0000:0c:00.4: No response from codec, disabling MSI: last cmd=0x00339000
[ +1.008015] snd_hda_intel 0000:0c:00.4: azx_get_response timeout, switching to single_cmd mode: last cmd=0x00339000

Why does this happen now?
>>
>sudo pacman -S pipewire wireplumber pipewire-audio pipewire-pulse pipewire-alsa
>turn on/off systemd services or just reboot
>have working audio
what even is this thread
>>
>>101585896
>and pipewire implements the pulseaudio API
No, pipewire-pulse does, which is a separate demon and separate software.

>>101587886
Most actually worked out of the box once I knew, installed, and started all these funny demons and emulations layers. The only remaining problem is that ALSA defaults to kernel PCM instead of the pipewire plugin.
>>
>>101587940
>No, pipewire-pulse does, which is a separate demon and separate software
that's an internal implementation detail
the pulseaudio network protocol is a core part of the pipewire project and there's no signs that support will be dropped for it any time soon
obviously if you're building a volume control program in 10 years, when no one needs pulseaudio support, you would consider using the "native" API instead of the pulseaudio API
>>
>>101587968
I sure wish Wayland had this attitude with X11, but in Wayland everyone would go into a rage fit if using and relying on such compatibility mechanisms were suggested.
>>
>>101588037
i mean, that's what xwayland is, but i understand what you're saying
you can't access all features using the old API like you can with pipewire
>>
>>101588046
That would have been really useful for transition from X to Wayland. Strange how all these arguments against it don't seem to matter in pipewire.
>>
>hey guys heres the new great to replace le old bad
>btw you still have to install le old bad + 20 different packages to make it work with the new great!
freetards are a joke
>>
>>101588215
>mme
>directsound
>xaudio2
>asio
>wasapi
>windows.media.audio
pick one
>>
>>101588271
They all interoperate without problems because they're APIs, not implementations.
Pipewire is actually surprising in that it's new thing, but works fairly well. Not like Wayland, or pulseaudio when it was new.
>>
>refuses to unmute my headphones
>pavucontrol just says they're unplugged
>reverting to ALSA native output plays audio through my headphones
>typical Linux no sound bullshit
Back to ALSA for now. Holy shit the Linux desktop is a ucking joke, and I say this as longtime user.
>>
>>101589891
This trahs actually keeps muting the alsa control, even if I unmute it with alsamixer.
I will call it trashwire from now on.
>>
>>101589952
Also I think this situation has to do with pavucontrol and pusleaudio policies. If this is true, I will have to call it doubleniggertrashwire.
>>
>>101582683
Probably because it stops routing all audio through it. Maybe Easyeffects shuts down its processing before removing itself from the graph or something? Who knows.
>>
>think it's pavucontrol and just messing with the volume control when you select the outputs on the dropdown lists (who knows how the fuck this UI is supposed to work)
>just kill pavucontrol and think the mixer won't be touched again
>seems to work
>but after a while of inactivity it muted the fucking headphones again
Now how do I figure out what in this complex heap of shit causes this and how to stop it?
I'm going back to ALSA.
>>
>switch back to ALSA
>thousands of lines of code not active anymore
>everything just fucking werks
Doubleniggertrashwire.
>>
>>101590025
Even the spectrum was disabled. Pipewire doesn't have much of an excuse. Audio skips shouldn't happen in 20 fucking 24 just because you close a window.
>>
>>101590055
Not a Pipewire issue. Easyeffects inserts itself into the graph and all audio goes through it before going into the actual sink, regardless of how many effects are active. Closing it shuts down that node.
Imagine it's like switching from your headphones to speakers or whatever when you unplug the former.
>>
Alsa is all you need.
>>
>>101590062
No effects were active. The list was empty. Also why would it remove any effects or change anything at all just because I close the GUI?
>>
>>101590077
Because Easyeffects is a dumb GUI app and its background mode is a hack. There's a way to close the GUI and keep the processing active (I think you have to start it as easyeffects --gapplication-service or something?).
Either way, this is an Easyeffects issue, not a Pipewire one. Reroute all audio to go directly into your real sink in Qpwgraph before closing Easyeffects and there will be no skips.
>>
>>101590069
ALSA is a shit system with a lots of 80's audio logic baked on it.
>>
>>101590103
At least it can output audio through my headphones.
>>
>>101590103
ALSA in the kernel is okay, but actually using it from userspace requires a lot of care for it to work well. Some programs do it well (e.g. Ardour), but your homemade media player using trivial alisa-lib setup likely won't. That's where Pipewire or Pulse with their tons of workarounds for various driver issues, multi-application use and such come in.
>>
>>101590111
>alisa-lib
*alsa-lib
Also there's stuff like multiple applications playing audio at once or Bluetooth where userspace ALSA solutions are kinda trash.
>>
My own experience with the ALSA API is that it's severely under-documented and lacks proper solutions for some important things. Conceptually, it tries to solve some basic audio API problems elegantly, but it took me a while to get it and to get rid of all the bugs in my code. But then, you have kernel driver developers who probably didn't get it either and introduce unexpected behavior or bugs.
Some things are extremely fucking garbage in ALSA (like output device selection and user-side configuration), which were never solved properly. I had the impression the API was controlled by a single individual, who didn't see the importance of these things, or thought it was reasonable to leave it to wrappers like pulseaudio.

>>101590119
>Also there's stuff like multiple applications playing audio at once
dmixer was enabled by default and worked well.
> or Bluetooth where userspace ALSA solutions are kinda trash.
Bluetooth isn't in the kernel (because the kernel devs don't want it I guess? so half-working dbus trash written by retards in userspace take this place), so it needs a central server process. But I don't see the problem. You can do this with alsa-lib plugins, and pipewire wouldn't run the bluetooth code in its server process either. ALSA could have benefited from introducing a standard way to shovel audio between processes, a role pipewire took on.
>>
>>101590107
Learn to configure you shit then.
>>
>>101590165
>dmixer was enabled by default and worked well.
It has worse latency and performance than Pipewire. Also doesn't have nice per-application volume controls like pavucontrol or plasma-pa.

>Bluetooth isn't in the kernel
It is (bluetooth module from bluez). Bluetooth audio isn't, but it's such a clusterfuck that barely anything on any platform does it well. Pipewire's bluetooth audio support is actually best in class.
>>
>>101590400
>muh latency
You can configure it.
>muh pulse volume control instead of pipewire volume control
Fix your shit.
>bluez
Is completely userspace. There is no bluetooth stack in the kernel, only primitive drivers for raw communication between bluetooth module and userspace using HCI.

>>101590231
Why is it so user unfriendly and buggy?
>>
>>101591429
>>muh latency
>You can configure it.
I admit that I haven't really bothered with dmix for years now, but I don't think I was able to get the kind of latency that I can get with JACK or Pipewire (under 10ms). If it works, then it's fine, I guess.

>>muh pulse volume control instead of pipewire volume control
>Fix your shit.
What is this even supposed to mean and what does it have to do with using userspace ALSA and dmixer without either Pulse or Pipewire?

>>bluez
>Is completely userspace.
There are parts of the thing that run within the kernel, not everything is in the daemon. For example, BNEP is in the kernel module.
Also, userspace shouldn't really be an issue. BlueZ used to support ALSA, but it was never anywhere as good as it is with Pipewire these days.
>>
>>101574586
I've found it more reliable than pulse but that's anecdotal.



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.