Closed Cleversn closed 1 year ago
a setting called "Always Send Current Speech Settings", which when checked, send the current customized values before any utterance that the synth will output
Mmm, do all users of voxin have the issue? If so, we can as well not make it an option and just make the ibmtts/voxin module just always do this?
This effects me as well, I was discussing on the Orca list also. This happens seemingly random intervals, could be flat reviewing or moving to a combobox/edit field. A work-around would be extremely appreciated. Only appears to occur using IBMTTS not any oof the HQ Voxin voices.
Steps to reproduce
As the title says, it's difficult to predict when the problem occurs. It appears to occur when the user presses lots of keys in a short period, so that many utterances are sent to the synth in a short time span. In any case, please see my proposed solution below, along with the atteched logs.
Obtained behavior
The Voxin voice suddenly resets to default values including speed, pitch and volume, then it may go back to my customized values at the next utterance, or it may stay at the defaults during many more utterances and seconds. See this thread at the Orca mailing list, where other users also complain: https://www.freelists.org/post/orca/Voxin-or-speechdispatcher
Expected behavior
Values should respect customizations at full time. Here is my suggestion for a solution:
First, I'm mostly sure that this is a synthesiser bug, because it also occurs when not using speech-dispatcher, for example when using voxin with speakup + voxinup. In addition, the problem occurs in the Windows compilation too. Users of the NVDA screen reader for Windows noticed the problem, and the developer of the NVDA driver for the synth came with a partial solution: he implemented a setting called "Always Send Current Speech Settings", which when checked, send the current customized values before any utterance that the synth will output. Below is a direct link to the Python source file where the setting appears to be implemented for NVDA, see for example lines 213, 267 and 268. Perhaps you could implement a similar workaround for speech-dispatcher: https://github.com/davidacm/NVDA-IBMTTS-Driver/blob/master/addon/synthDrivers/ibmeci.py
Behavior information
I'm attaching speech-dispatcher.log, and an Orca debug file in case it can be useful. As for voxin.log, it is empty.
Distribution
Gentoo Linux, up to date.
Version of Speech-dispatcher
0.11.4-r2 debug-2023-07-21-09_16_30.log speech-dispatcher.log