[PATCH v12 0/8] MR337: winepulse: Return device-specific values for GetMixFormat and GetDevicePeriod

Claire (@ClearlyClaire) wine at gitlab.winehq.org
Wed Jul 6 01:48:21 CDT 2022


On Wed Jul  6 06:17:09 2022 +0000, Huw Davies wrote:
> It's definitely this patch that causes a regression for me.
>  Specifically, removal of only the second `pulse_probe_settings()` call
> is enough to trigger it.
ok… that is definitely weird, and I'm not sure how that could happen. Are you using PulseAudio our pipewire-pulse? Could you apply something like the following and see if/how the output differs when doing the second `pulse_probe_settings` vs not doing it?

```patch
diff --git a/dlls/winepulse.drv/pulse.c b/dlls/winepulse.drv/pulse.c
index bd918b6f260..f3cf3a2c012 100644
--- a/dlls/winepulse.drv/pulse.c
+++ b/dlls/winepulse.drv/pulse.c
@@ -699,12 +699,20 @@ static void pulse_probe_settings(int render, const char *pulse_name, WAVEFORMATE
                 pa_stream_get_state(stream) == PA_STREAM_CREATING)
         {}
         if (pa_stream_get_state(stream) == PA_STREAM_READY) {
+            if (!pulse_name)
+                FIXME("Stream ready (render? %d): %s\n", render, pa_stream_get_device_name(stream));
             ss = *pa_stream_get_sample_spec(stream);
             map = *pa_stream_get_channel_map(stream);
             if (render)
                 length = pa_stream_get_buffer_attr(stream)->minreq;
             else
                 length = pa_stream_get_buffer_attr(stream)->fragsize;
+            if (!pulse_name) {
+                FIXME("  Sample format (size, rate, format): %ld, %u\n", pa_sample_size_of_format(ss.format), ss.rate);
+                FIXME("  Nb channels: %d\n", map.channels);
+                FIXME("  Period (bytes): %u\n", length);
+                FIXME("  Def period: %ld\n", pa_bytes_to_usec(10 * length, &ss));
+            }
             pa_stream_disconnect(stream);
             while (pa_mainloop_iterate(pulse_ml, 1, &ret) >= 0 &&
                     pa_stream_get_state(stream) == PA_STREAM_READY)
```

-- 
https://gitlab.winehq.org/wine/wine/-/merge_requests/337#note_3422



More information about the wine-devel mailing list