[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-user
Subject:    Re: [gentoo-user] Re: Pipewire not a dependency?
From:       Daniel Sonck <daniel () sonck ! nl>
Date:       2022-10-01 18:32:11
Message-ID: 5477041.GXAFRqVoOG () komeji
[Download RAW message or body]

On zaterdag 1 oktober 2022 19:11:19 CEST Wol wrote:
> On 01/10/2022 17:56, Michael wrote:
> > Anyway, I ventured into pipewire because I wanted to see if Skype would
> > work without pulseaudio and in this system it won't.  After I manually
> > installed pipewire Skype won't access the microphone.  🙁
> 
> I've got some vague feeling that pipewire is designed to happily sit
> under pulseaudio. The design aim was to replace both Jack and pulseaudio
> but it basically just presents a sound device to the layers above, so
> just like you can stack block devices for disk access, you can stack
> jack, pulseaudio and pipewire for sound.
Well, it is actually designed as a drop-in replacement and won't present audio devices in the 
sense pulseaudio wants to receive it. I guess it would theoretically be possible to use 
pulseaudio's jack sink to talk to pipewire, but pipewire has the full pulseaudio interface for 
pulseaudio applications.
> 
> The big difference between a sound stack and a block stack is that a
> block stack is asynchronous and latency is (relatively) unimportant. In
> a sound stack some applications *demand* synchronicity, and latency is
> everything. Jack is extremely latency sensitive, pulseaudio buffers and
> doesn't care, and pipewire is intended to satisfy both.
> 
> So the intent was clearly to install pipewire underneath a working
> pulseaudio, and just move applications across as and when.
This was never an intent, pipewire was intended as an pulseaudio implementation by itself. So 
it doesn't need (and likely is incompatible running together with) pulseaudio in order to 
support pulseaudio clients. But it does need to be configured as such.
> 
> Cheers,
> Wol

Regards,

Daniel

[Attachment #3 (unknown)]

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">On \
zaterdag 1 oktober 2022 19:11:19 CEST Wol wrote:</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; On 01/10/2022 \
17:56, Michael wrote:</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; &gt; Anyway, \
I ventured into pipewire because I wanted to see if Skype would</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; &gt; work \
without pulseaudio and in this system it won't.&nbsp; After I manually</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; &gt; \
installed pipewire Skype won't access the microphone.&nbsp; 🙁</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; </p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; I've got some \
vague feeling that pipewire is designed to happily sit</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; under \
pulseaudio. The design aim was to replace both Jack and pulseaudio</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; but it \
basically just presents a sound device to the layers above, so</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; just like you \
can stack block devices for disk access, you can stack</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; jack, \
pulseaudio and pipewire for sound.</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Well, it is \
actually designed as a drop-in replacement and won't present audio devices in the \
sense pulseaudio wants to receive it. I guess it would theoretically be possible to \
use pulseaudio's jack sink to talk to pipewire, but pipewire has the full pulseaudio \
interface for pulseaudio applications.</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; </p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; The big \
difference between a sound stack and a block stack is that a</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; block stack \
is asynchronous and latency is (relatively) unimportant. In</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; a sound stack \
some applications *demand* synchronicity, and latency is</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; everything. \
Jack is extremely latency sensitive, pulseaudio buffers and</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; doesn't care, \
and pipewire is intended to satisfy both.</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; </p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; So the intent \
was clearly to install pipewire underneath a working</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; pulseaudio, \
and just move applications across as and when.</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">This was never an \
intent, pipewire was intended as an pulseaudio implementation by itself. So it \
doesn't need (and likely is incompatible running together with) pulseaudio in order \
to support pulseaudio clients. But it does need to be configured as such.</p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; </p> <p \
style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; Cheers,</p> \
<p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">&gt; Wol</p> \
<br /><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Regards,</p>
 <br /><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Daniel</p>
 </body>
</html>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic