Disable brokering audio in the 32 bit synthDriver shim for at least 2026.2 as it is not stable enough yet.#20206
Merged
Merged
Conversation
…026.2 as it is not stable enough yet.
Contributor
There was a problem hiding this comment.
Pull request overview
Disables the experimental “broker audio back to NVDA” pathway for the 32‑bit synthDriverHost shim to avoid instability (freezes/crashes) seen with 32‑bit SAPI4 / SAPI5 while the brokering approach matures.
Changes:
- Forces the 32‑bit synth driver host launcher to not broker audio back into NVDA (play audio locally in the host process).
seanbudd
approved these changes
May 24, 2026
Contributor
|
Do we need to restore the changes in #19672? |
This reverts commit 5306000.
Member
Author
|
@wmhn1872265132 yes, thanks for the reminder. I have reverted #19672 in this pr. |
seanbudd
approved these changes
May 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Link to issue number:
Fixes #19667
Fixes #19819
Reverts #19672
Summary of the issue:
Experimental code was recently added to NVDA (after 2026.1) that caused the 32 bit synthDriver shim to send its audio back to NvDA for playing, rather than playing it directly in its own process. This was done to test / prepare for the time when add-ons would be running in an app container, and therefore probably would not have direct access to the audio device.
However, currently this code is still quite unstable, causing NVDA to freeze when rapidly changing the speech rate, or arrowing up and down in lists, when using sapi4 or 32 bit sapi5.
This instability is most likely a similar issue to what was fixed in pr #19609, where RPYC is handoing the return of a call on the wrong thread. But in this case, it is calls to/from nvwave in NVDA's process.
Description of user facing changes:
Description of developer facing changes:
Description of development approach:
Testing strategy:
Known issues with pull request:
Code Review Checklist: