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 challenges ahead, most notably providing a professional-grade sound server and offering a framework that facilitates screen capture and sharing in wayland sessions.
 
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?
 
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.



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


… provide secure methods for screenshotting and screencasting on Wayland compositors. …
 
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.
 
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…
 
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?
 
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…
 
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.
 
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.
 
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.
 
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?)
 
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.
 
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.
 
So, how does one use pipewire?

Starting simple, let's say I want to play a .wav file on local speakers via pipewire.
 
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):
 
Back
Top