brailcom / speechd

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

Voxin: Shorter pauses at the end of sentences #844

Open Cleversn opened 1 year ago

Cleversn commented 1 year ago

Is your feature request related to a problem? Please describe. When using the IBM ViaVoice synth for Windows with the NVDA screen reader, there is a configuration option called Shorten Pauses, which causes the voice to make much shorter pauses at the end of sentences and utterances in general than it would with that option unset. In a Linux desktop, using Orca plus speech-dispatcher and the Voxin distribution of the IBM TTS, nowhere there is such option to shorten pauses: neither in Orca, nor in speech-dispatcher or voxin settings.

Describe the solution you'd like I've looked at a glance in the source code of the NVDA driver for the synth, and it appears that that pause feature is implemented using some regular expressions, although I don't know exactly how it interacts with the synth or NVDA itself. In any case, I wonder if you could give a look at the NVDA implementation and replicate this feature on the Speech-dispatcher voxin module. Interaction with Orca in Linux would be significantly faster, especially when reading long texts, because for each long pause Orca does at the end of an utterance, the user wastes a little more time.

Below is the URL for the NVDA driver, and also a second link pointing to the Python file where the feature seems to be implemented: https://github.com/davidacm/NVDA-IBMTTS-Driver https://github.com/davidacm/NVDA-IBMTTS-Driver/blob/master/addon/synthDrivers/ibmeci.py

Describe alternatives you've considered None.

Additional context None.

sthibaul commented 1 year ago

That could probably be added in a similar way, indeed.