Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Time to Keep Audio Device Awake After Speech" Does Not Re-Activate After Timeout with SAPI4 Synthesizer #17571

Open
cary-rowen opened this issue Dec 30, 2024 · 3 comments

Comments

@cary-rowen
Copy link
Contributor

description:

When using the SAPI4 speech synthesizer in NVDA, the "Time to keep audio device awake after speech" feature works correctly only during the initial period after NVDA starts. For example, when set to 30 seconds, NVDA keeps the audio device awake for 30 seconds after speech ends as expected. However, once this 30-second period expires, the feature fails to re-activate after subsequent speech.

Steps to reproduce:

As for the sapi4 speech synthesizer, I'm not sure how to share it, or does anyone else know of a sapi4 speech synthesizer that can be shared publicly?

  1. Set the "Time to keep audio device awake after speech" to 30 seconds.
  2. Start NVDA with the SAPI4 speech synthesizer.
  3. Allow NVDA to speak.
  4. After the speech ends, observe that the device stays active for the configured 30 seconds.
  5. After the 30 seconds expire, wait for NVDA to speak again.
  6. Notice that after subsequent speech, the audio device does not stay awake, even though it should, as per the feature's intended behavior.

Expected behavior:

The "Time to keep audio device awake after speech" feature should reactivate every time NVDA speaks. Once the feature's time period expires, it should be re-triggered after each subsequent speech, keeping the audio device awake for the set duration after speech ends. This cycle should continue as long as NVDA is running.

Actual behavior:

After the initial 30-second period following NVDA's startup, the feature no longer activates after subsequent speech, causing the audio device to enter standby or sleep mode, leading to dropped audio or clipped speech.

NVDA logs, crash dumps and other attachments:

System configuration

NVDA installed/portable/running from source:

installed

NVDA version:

2024.4.1

Windows version:

Windows 10 22H2 (AMD64) build 19045.5247

Name and version of other software in use when reproducing the issue:

None

Other information about your system:

None

Other questions

Does the issue still occur after restarting your computer?

Yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

No

If NVDA add-ons are disabled, is your problem still occurring?

Yes

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

Yes

@cary-rowen
Copy link
Contributor Author

cc @mltony cc @jcsteh

What are your thoughts on this?

@cary-rowen
Copy link
Contributor Author

I will provide binaries for testing, this is a Chinese TTS engine that has been circulating on the Internet for direct download, relying on Sapi4, Please let me know if this violates any github policies:
https://dl.nvdacn.com/NVDA-Addons/TTS/IBM_ViaVoice_TTS_Runtime-V6.405.exe

@jcsteh
Copy link
Contributor

jcsteh commented Dec 30, 2024

It doesn't work because SAPI4 outputs audio itself, rather than using NVDA's audio output code. Thus, audio settings like this can't have any effect.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants