Huw Davies (@huw) commented about dlls/winepulse.drv/pulse.c:
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_PCM; }
+static NTSTATUS pulse_get_device_settings(void *args) +{ + struct get_device_settings_params *params = args; + struct pulse_config *config = params->config; + struct list *list = params->render ? &g_phys_speakers : &g_phys_sources; + PhysDevice *dev; +
As mentioned, please add a `get_mix_format` unixcall that follows the example of the alsa driver. You'll then need to create a `get_device_periord` unixcall for `GetDevicePeriod()`. This isn't implemented in any of the drivers; I'd suggest a params struct like this ```c struct get_device_period_marams { const char *pulse_name; HRESULT result; REFERENCE_TIME *def_period; REFERENCE_TIME *min_period; }; ``` -- https://gitlab.winehq.org/wine/wine/-/merge_requests/337#note_3195