Rémi Bernon (@rbernon) commented about dlls/windows.media.speech/recognizer.c:
{ ISpeechContinuousRecognitionSession *iface = args; struct session *impl = impl_from_ISpeechContinuousRecognitionSession(iface); - BOOLEAN running = TRUE; - DWORD status; + BOOLEAN running = TRUE, paused = FALSE; + DWORD flags, status; + UINT32 frame_count; + HANDLE events[2]; + BYTE *audio_buf;
SetThreadDescription(GetCurrentThread(), L"wine_speech_recognition_session_worker");
+ IAudioClient_Start(impl->audio_client); + IAudioClient_GetBufferSize(impl->audio_client, &frame_count); Maybe you should check the result of all these `IAudioClient` calls, here and below, and at least emit errors if there's something wrong? Possibly exiting the thread in that case.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/1948#note_22035