# PipeWire a complete audio framework in Wayland ?



## teo (Sep 18, 2021)

PipeWire is one of the technologies set to play a very important role in the future of the desktop, not only because it has been postulated as the replacement for pulseaudio and  jack, but because it is actually a multimedia streaming server that goes beyond the sound server

 PipeWire on the challenges ahead, most notably providing a professional-grade sound server and offering a framework that facilitates screen capture and sharing in wayland sessions.


----------



## zirias@ (Sep 18, 2021)

I'm sorry, but I fail to get the actual point of your message? I mean, what kind of replies do you expect? As you're posting in a "base system" forum, are you suggesting to include this stuff in base? 

On a side note, I wonder what's the use case for a "sound server" on your desktop anyways?


----------



## SirDice (Sep 20, 2021)

I'm wondering what audio has to do with a graphics protocol.


----------



## SirDice (Sep 20, 2021)

Well, reading up a bit on it, I think teo is misunderstanding what Pipewire is and what it intends to do.


----------



## grahamperrin@ (Sep 20, 2021)

I'm only vaguely aware of Wayland, I had in mind that it was somehow unreasonably difficult to perform commonplace tasks such as taking screenshots or recording the screen… search engine results suggest that I'm mistaken. 

If I'm _not_ mistaken, search results also suggest that PipeWire can play some part in casting and/or recording the screen with Wayland. 






						FreshPorts -- multimedia/pipewire: Server and user space API to deal with multimedia pipelines
					

PipeWire is a server and user space API to deal with multimedia pipelines. This includes: - Making available sources of video (such as from a capture devices or   application provided streams) and multiplexing this with clients. - Accessing sources of video for consumption. - Generating graphs...




					www.freshports.org
				









						255348 – multimedia/pipewire: wip general pr
					






					bugs.freebsd.org
				




So what is pipewire and what is it doing? : gnome (2020-08-02, archived)









						PipeWire - Wikipedia
					






					en.wikipedia.org
				






> … provide secure methods for screenshotting and screencasting on Wayland compositors. …


----------



## ProphetOfDoom (Sep 21, 2021)

I used to use Jack to record music on Linux. It is a fantastic piece of software and doesn’t need replacing. Why the obsession with fixing things that aren’t broken??
Also the recursive backronym Jack Audio Connection Kit is so serendipitous, it makes you wonder if the universe was intelligently designed.


----------



## zirias@ (Sep 21, 2021)

I understand jack is "special purpose": low-latency processing of multiple clients' streams (in and out I guess?) – is this correct?

Then I wonder whether something like this would be necessary on FreeBSD at all? The OSS-style dsp devices are multiplexed anyways…


----------



## ProphetOfDoom (Sep 21, 2021)

Yes that’s what Jack is for. It’s designed not to drop a single sample during recording/playback. You used to need a patched real-time kernel to complement it but I think that requirement is gone now. Also it was necessary to allow any process to pre-empt and take complete control of the computer. I have no idea if  FreeBSD/OSS allows that?


----------



## zirias@ (Sep 21, 2021)

There's rtprio(1), and FreeBSD's OSS implementation already has mixing built in. But I really don't know whether this would satisfy the requirements of a recording studio…


----------



## astyle (Sep 21, 2021)

SirDice said:


> I'm wondering what audio has to do with a graphics protocol.


Reading up on Pipewire a bit, my understanding is that it provides an API for Wayland applications to use. For example,  VLC  using Pipewire to play the movies would be like a browser using http/https to display the text and pictures. OSS is still the server, but now it's providing the multimedia content (sound and graphics) in compliance with PipeWire's rules. Just like Apache is still the server, but has to be compliant with rules specified in HTTPS / HTTP2.


----------



## matt_k (Sep 21, 2021)

teo said:


> PipeWire is ... postulated as the replacement for pulseaudio and  jack


Yeah, glad I use neither of them, therefore I don't need a replacement.


----------



## astyle (Sep 21, 2021)

matt_k said:


> Yeah, glad I use neither of them, therefore I don't need a replacement.


Pipewire is to multimedia as HTTP2 is to text.  Just a set of rules, not a data transporter. PulseAudio and Jack are data transporters, they still have to follow rules.


----------



## Beastie7 (Sep 22, 2021)

X11/X.org is still getting love and support.


----------



## teo (Sep 22, 2021)

Beastie7 said:


> X11/X.org is still getting love and support.


Xorg is obsolote, Wayland is gradually optimizing.


----------



## Beastie7 (Sep 22, 2021)

teo said:


> Xorg is obsolote, Wayland is gradually optimizing.



And Wayland is still (_and will always be_) broken and incomplete.


----------



## teo (Sep 22, 2021)

Beastie7 said:


> And Wayland is still (_and will always be_) broken and incomplete.


Wayland is optimizing.


----------



## kpedersen (Sep 23, 2021)

teo said:


> Wayland is optimizing.


On Linux.

And, along with systemd is possibly more useful to be discussed on Linux related forums where it has over 1% user base (just). We don't really discuss COM or Cocoa here either. So why this fixation on another niche operating system?


----------



## teo (Sep 23, 2021)

kpedersen said:


> On Linux.
> 
> And, along with systemd is possibly more useful to be discussed on Linux related forums where it has over 1% user base (just). We don't really discuss COM or Cocoa here either. So why this fixation on another niche operating system?


Are they already taking it out of context? The topic refers to PipeWire a complete audio framework in Wayland, which is free software, at no point does it mention linux, according to your, linux 1% user base (barely). And FreeBSD how much? Maybe 0.005% user base?  Please, don't deviate from the topic.


----------



## kpedersen (Sep 23, 2021)

teo said:


> according to your, linux 1% user base (barely). And FreeBSD how much? Maybe 0.005% user base?  Please, don't deviate from the topic.


This was referring to "userbase of Wayland" (and thus things like Pipewire, so I was very on topic).

FreeBSD has a much lower proportion of Wayland users than even 0.005%. Possibly 0.000001%. Don't overestimate the impact Wayland will have. It is currently niche and non-standard, and has been for the last decade. 

You really will get a better discussion on a Linux forum from people who *actually* use it. (I think this forums has ~2 Sway users?)


----------



## astyle (Sep 23, 2021)

kpedersen said:


> I think this forums has ~2 Sway users?


More than that - if you look in here:









						Other Window Managers
					

Xfce, Fluxbox, Enlightenment, IceWM, WindowMaker, ION, etc.




					forums.freebsd.org


----------



## ct85711 (Sep 23, 2021)

Looking over the information on Pipewire; quite a bit of it seems to be a fork of PulseAudio.  Now if it is actually an true fork or just a remake, isn't much of the point.  In the end, Pipewire, is going as far as taking the entire structure of PulseAudio as the base; added the improvements that Jack has (or attempting too).  Beyond that, I do hope Pipewire actually go and properly fix some of the issues in PulseAudio.  The other side, it seems Pipewire could also be attempting to resolve one or maybe even 2 of the main limitations dealing with containers/docker; more specifically getting audio/video from the container without setting up vnc/passing it through ssh.

I know PulseAudio has had the option to stream audio through a tcp socket (possibly also receive), but it never was something that worked too well.

In the end, regardless how Pipewire goes, it still won't have any effect on OSS (or Alsa on linux) in the end.  The part that a lot of people miss, is that you still end up using OSS/Alsa as that is what the kernel provides; and all the built in codecs/drivers are tied into.


----------



## Beastie7 (Sep 23, 2021)

yeah, and in a few years they'll have SonicWire, then AudioWave, then UltraScream9000.


----------



## eternal_noob (Sep 23, 2021)

I installed Ubuntu 21.04 which uses Wayland by default on my Rasperry Pi 400. There are so much rendering artefacts and the mouse pointer dissapears in fullscreen apps.
I therefore believe Wayland is pretty broken on Linux too.

I really like X.Org and i am sad that Wayland tries to take over.


----------



## dove (Dec 29, 2021)

So, how does one use pipewire?

Starting simple, let's say I want to play a .wav file on local speakers via pipewire.


----------



## astyle (Dec 30, 2021)

dove said:


> So, how does one use pipewire?
> 
> Starting simple, let's say I want to play a .wav file on local speakers via pipewire.


Yeah, PipeWire is not mentioned in official FreeBSD Handbook.  But, it is in ports: multimedia/pipewire. I'd suggest doing some homework on the links I just gave you. Oh, and see this (my own post in this thread): 








						PipeWire a complete audio framework in Wayland ?
					

PipeWire is one of the technologies set to play a very important role in the future of the desktop, not only because it has been postulated as the replacement for pulseaudio and  jack, but because it is actually a multimedia streaming server that goes beyond the sound server   PipeWire on the...




					forums.freebsd.org


----------

