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

espeak NG large difference between rate 18 and 19 when rate boost is enabled #13876

Open
nikosdemetriou opened this issue Jul 7, 2022 · 13 comments
Labels
blocked/needs-external-fix component/speech-synth-drivers p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.

Comments

@nikosdemetriou
Copy link

nikosdemetriou commented Jul 7, 2022

Before #13893 was merged, this problem existed between rate 99% and 100% as well as 18% and 19%.
The remaining issue is blocked by espeak-ng/espeak-ng#131

Steps to reproduce:

  • With eSpeak, set rate boost on and the rate at 18.
  • change to rate 19.

Actual behavior:

The rate of speech is slower at rate 19 than at 18. And at rate 19, eSpeak sounds a bit strange: the vowels sound slightly longer at rate 19 than at rate 18.

Expected behavior:

eSpeak should speak slightly faster at rate 19 that at rate 18, without changing the quality of the voice.

System configuration

NVDA installed/portable/running from source:

portable.

NVDA version:

latest alpha

Windows version:

Windows 10, Version 21H2 (OS Build 19044.1766)

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

Other information about your system:

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.

All versions for many years.

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

@Brian1Gaff
Copy link

Brian1Gaff commented Jul 7, 2022 via email

@amirmahdifard
Copy link

exactly i have the same problem with espeeck

@nikosdemetriou
Copy link
Author

Hi Brian.
In the speech settings of nvda, there is a rate boost option. If we enable it nvda speaks much faster with some synths.

For example, if rate boost is enable, Rate 18 is simmilar as it was 99 without it.

So now with the rate boost enabled, rate 18 sounds good to me, but if I set it to 19 or higher, it starts sounding strange to me.
Nikos.

I thought that 100 was the fastest speed, if you want it faster then the whole law of the speed plotted against the numbers needs to be altered. I don't know of any voice where it can go over 100. Obviously its a bug if it malfunctions at the top speed, maybe 99 needs plotting to the number 100, and then it would not do it. Brian

-- @.*** Sent via blueyonder.(Virgin media) Please address personal E-mail to:- @., putting 'Brian Gaff' in the display name field. ----- Original Message ----- From: "nikosdemetriou" @.> To: "nvaccess/nvda" @.> Cc: "Subscribed" @.> Sent: Thursday, July 07, 2022 2:08 PM Subject: [nvaccess/nvda] espeak NG sounds strange at rate 100 or faster (Issue #13876)
I am using nvda with the espeak synth. My speed is 99 because if i choose 100, espeak sounds a bit strange. 100 is not at all faster than 99, and the vowels sound slightly longer at rates 100 or if I use the rate boost option. I am using the Greek espeak voice, but I find the same behaviour with the English voices as well. ### Steps to reproduce: Set the espeak rate at 100 or use the rate boost option. ### Actual behavior: The quality of speetch is mutch different between rate 99 and 100. ### Expected behavior: Espeak should speak slightly faster at rate 100 without changing the quality of the voice. ### System configuration #### NVDA installed/portable/running from source: Installed or portable. #### NVDA version: 2022.2 beta 3 installed, and latest alpha as portable. #### Windows version: Windows 10, Version 21H2 (OS Build 19044.1766) #### Name and version of other software in use when reproducing the issue: #### Other information about your system: ### 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. All versions for many years. #### 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 -- Reply to this email directly or view it on GitHub: #13876 You are receiving this because you are subscribed to this thread. Message ID: @.***>

@nikosdemetriou
Copy link
Author

Sorry for closing and reopening.
It was a mistake.

@CyrilleB79
Copy link
Collaborator

The issue is known and tracked on eSpeak NG side: espeak-ng/espeak-ng#131.

An obvious way to reproduce this issue is to read the following line in US English:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10.
And to compare between rate 99% and 100% (ate boost off) or 18% and 19% (rate boost on).

@nikosdemetriou
Copy link
Author

Hi.
Thanks for letting us know about the issue on espeak ng's site.

Probably the quickest fix from nvda's part could be to make rate 99 as rate 100, so the maximum rate without rate boost would sound fine.
In this senario, the default rate would sound slightly slower, but people who want it faster they could change it.

@TheQuinbox
Copy link
Contributor

I doubt ESpeak can do anything about it. That's just what Sonic does. However, that PR looks pretty cool, if it works

seanbudd pushed a commit that referenced this issue Jul 14, 2022
…d. (#13893)

A partial fix for issue #13876.

Summary of the issue:
With eSpeak, when rate boost is off, the speech rate is slightly higher (7% according to espeak-ng/espeak-ng#131 (comment)) when rate is 99% than when rate is 100%.

Description of user facing changes
With eSpeak, a speech rate of 100% corresponds to the fastest speech rate without rate boost; no more rate drop between 99% and 100%

Description of development approach
`_espeak.maxRate` is the rate used when NVDA speech rate is 100%.
So set `_espeak.maxRate` to 449 instead of 450. Indeed according to espeak-ng/espeak-ng#131:
* the sonic library is used for eSpeak rate set to 450 or higher for many years (instead of 451 before).
* other ATs may already be using this new value, e.g. speech-dispatcher: https://github.com/brailcom/speechd (cf. brailcom/speechd#603)

This allows to have a continuous increasing of speech rate when rate boost is off and to reserve the use of the sonic library for rate boost on.

If one day, eSpeak turns back to 450 for maxRate (what seems unlikely), we may revert this PR's content to follow eSpeak's decision.
@seanbudd seanbudd changed the title espeak NG sounds strange at rate 100 or faster espeak NG sounds strange at rate 18 and 19 Jul 14, 2022
@seanbudd seanbudd changed the title espeak NG sounds strange at rate 18 and 19 espeak NG large difference between rate 18 and 19 Jul 14, 2022
@seanbudd
Copy link
Member

@CyrilleB79 - is the updated description accurate for what's remaining on this issue?

@seanbudd seanbudd added blocked/needs-external-fix component/speech-synth-drivers p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation. labels Jul 14, 2022
@nikosdemetriou
Copy link
Author

Hi.
I am running the latest nvda alpha and I am using rate 100 without rate boost without issues.
Thanks a lot for fixing at least half of it.
For me it is exactly how I wanted it to work.

@nikosdemetriou nikosdemetriou changed the title espeak NG large difference between rate 18 and 19 espeak NG large difference between rate 18 and 19 when rate boost is enabled Jul 14, 2022
@CyrilleB79
Copy link
Collaborator

@seanbudd, your updated initial description is missing some elements:

You should also put a blocked/need-external-fix label since the remaining issue should be fixed by eSpeak (espeak-ng/espeak-ng#131).

Thanks @nikosdemetriou for having updated the title referring to rate boost.

So I have written an updated initial description based on what @nikosdemetriou and what @seanbudd have already written, but taking into account that a part of the initial issue has been fixed in #13893.

According to me, the first part of the description description should be updated as follows:

Steps to reproduce:

  • With eSpeak, set rate boost on and the rate at 18.
  • change to rate 19.

Actual behavior:

The rate of speech is slower at rate 19 than at 18. And at rate 19, eSpeak sounds a bit strange: the vowels sound slightly longer at rate 19 than at rate 18.

Expected behavior:

eSpeak should speak slightly faster at rate 19 that at rate 18, without changing the quality of the voice.

System configuration

NVDA installed/portable/running from source:

portable.

NVDA version:

latest alpha

@seanbudd
Copy link
Member

Thanks @CyrilleB79 - I have now updated the issue

@DraganRatkovich
Copy link

Hello,
@CyrilleB79 In the most recent alpha version of NVDA, I can still reproduce this issue. Are you sure this commit fixed the issue? eSpeak still makes unclear sound when speed is set to 100 and rate boost is disabled. The clearest explanation is in my opened issue #13952, in which I have attached audio files to it. I'm not sure what was done in the alpha that this issue originated from, but I think it has nothing to do with eSpeak because the issue you mentioned in the eSpeaks repo is from 2016, which is not applicable in this situation.

@CyrilleB79
Copy link
Collaborator

@DraganRatkovich the current issue is now called "espeak NG large difference between rate 18 and 19 when rate boost is enabled" and is tracking espeak-ng/espeak-ng#131 on NVDA side.

For clarity, if you want to discuss your experience with rate=100% alpha-25864,c9d9ec30, it would be better to do it in #13952 that you can reopen and I will answer there.

Sorry for inconvenience.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked/needs-external-fix component/speech-synth-drivers p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.
Projects
None yet
Development

No branches or pull requests

7 participants