On Mon Jul 4 08:28:46 2022 +0000, Claire wrote:
You mean moving the `pulse_name[0]` check to the unixlib, or probing the device each time? If the latter, I am not sure how to do that, as the PulseAudio APIs are asynchronous and the GetMixFormat/GetDevicePeriod APIs are synchronous. The former. Keep the first patch in the series, then add a `get_mix_format` unixcall that `GetMixFormat()` always calls and use `pulse_name` to determine the correct values in the unixlib. Then do a similar thing for `GetDevicePeriod()`.
Note, when you add or change a unixcall, you also need to add (or change) the appropriate wow64 handler (see e.g. `wow64_get_mix_format()` in the alsa driver. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/337#note_3189