[Qemu-devel] [PATCH 05/11] paaudio: do not move stream when sink/source name is specified

Kővágó, Zoltán posted 11 patches 6 years, 7 months ago
There is a newer version of this series
[Qemu-devel] [PATCH 05/11] paaudio: do not move stream when sink/source name is specified
Posted by Kővágó, Zoltán 6 years, 7 months ago
Unless we disable stream moving, pulseaudio can easily move the stream
on connect, effectively ignoring the source/sink specified by the user.

Signed-off-by: Kővágó, Zoltán <DirtY.iCE.hu@gmail.com>
---
 audio/paaudio.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/audio/paaudio.c b/audio/paaudio.c
index cc3a34c2ea..24d98b344a 100644
--- a/audio/paaudio.c
+++ b/audio/paaudio.c
@@ -517,6 +517,11 @@ static pa_stream *qpa_simple_new (
 #endif
         | PA_STREAM_AUTO_TIMING_UPDATE;
 
+    if (dev) {
+        /* don't move the stream if the user specified a sink/source */
+        flags |= PA_STREAM_DONT_MOVE;
+    }
+
     if (dir == PA_STREAM_PLAYBACK) {
         r = pa_stream_connect_playback(stream, dev, attr, flags, NULL, NULL);
     } else {
-- 
2.22.0


Re: [Qemu-devel] [PATCH 05/11] paaudio: do not move stream when sink/source name is specified
Posted by Marc-André Lureau 6 years, 7 months ago
On Tue, Jul 9, 2019 at 10:53 PM Kővágó, Zoltán <dirty.ice.hu@gmail.com> wrote:
>
> Unless we disable stream moving, pulseaudio can easily move the stream
> on connect, effectively ignoring the source/sink specified by the user.
>
> Signed-off-by: Kővágó, Zoltán <DirtY.iCE.hu@gmail.com>

Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>


> ---
>  audio/paaudio.c | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/audio/paaudio.c b/audio/paaudio.c
> index cc3a34c2ea..24d98b344a 100644
> --- a/audio/paaudio.c
> +++ b/audio/paaudio.c
> @@ -517,6 +517,11 @@ static pa_stream *qpa_simple_new (
>  #endif
>          | PA_STREAM_AUTO_TIMING_UPDATE;
>
> +    if (dev) {
> +        /* don't move the stream if the user specified a sink/source */
> +        flags |= PA_STREAM_DONT_MOVE;
> +    }
> +
>      if (dir == PA_STREAM_PLAYBACK) {
>          r = pa_stream_connect_playback(stream, dev, attr, flags, NULL, NULL);
>      } else {
> --
> 2.22.0
>
>


--
Marc-André Lureau