brailcom / speechd

Common high-level interface to speech synthesis
GNU General Public License v2.0
220 stars 64 forks source link

Voxin randomly drops to default values #845

Closed Cleversn closed 1 year ago

Cleversn commented 1 year ago

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

sthibaul commented 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?

fudge333 commented 1 year ago

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.