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

Merge the synthesizer settings into the Voice settings. #4040

Closed
nvaccessAuto opened this issue Mar 29, 2014 · 12 comments · Fixed by #7302
Closed

Merge the synthesizer settings into the Voice settings. #4040

nvaccessAuto opened this issue Mar 29, 2014 · 12 comments · Fixed by #7302

Comments

@nvaccessAuto
Copy link

Reported by vgjh2005 on 2014-03-29 07:35
Hi:
I think the voice setting and synthesizer can merge to be one. The reason is below:
1.If the selected synthesizer interface contain a synthesizer that is the default one and NVDA cannot support it, it will not cause error. Because the synthesizer settings mustn't be refreshed.
2. It can be frugal of a hotkey.
3. It looks like more logicaler.
4. It can be frugle of user's time.
After merge them, add a checkbox to define if the voice should be refreshed realtime is more better.
Thanks.

@nvaccessAuto
Copy link
Author

Comment 1 by briang1 on 2014-03-29 07:55
I think this is going to make the whole dialogue more confusing and sluggish.
For example, every time you select a different synth, parameters like voice and variant will also have to be updated as you scroll through them. its slow often to come up now, so I can see people complaining about that.
I also feel that this might be possible as aan option on the synth, ie, configure voices for this synth perhaps, but as has been pointed out before, doing tabbed property sheets might be a bit awkward now we have add ons etc.
Brian

@nvaccessAuto
Copy link
Author

Comment 2 by jteh (in reply to comment description) on 2014-03-29 10:00
Replying to vgjh2005:

1.If the selected synthesizer interface contain a synthesizer that is the default one and NVDA cannot support it, it will not cause error. Because the synthesizer settings mustn't be refreshed.

I don't follow this. If the synth isn't present or has some other error, you will always get an error when switching to it.

Even if we did this, we wouldn't change the synth as soon as you select it in the list.
You would need to hit Apply each time you change it. Doing otherwise would cause sluggishness, memory wastage (due to loading synths unnecessarily) and would be pretty nasty if there was an error when initialising the synth.

@nvaccessAuto
Copy link
Author

Comment 3 by vgjh2005 (in reply to comment 1) on 2014-03-30 11:35
Replying to briang1:

I think this is going to make the whole dialogue more confusing and sluggish.

For example, every time you select a different synth, parameters like voice and variant will also have to be updated as you scroll through them. its slow often to come up now, so I can see people complaining about that.

I also feel that this might be possible as aan option on the synth, ie, configure voices for this synth perhaps, but as has been pointed out before, doing tabbed property sheets might be a bit awkward now we have add ons etc.

Brian

IBM developed two synthesizers , the first called IBM chinese text to speech,and the second one called ViaVoice text to speech. Press NVDa+CTRL+S to select the interface microsoft sapi version 4.0. They are developed on the interface. When I selected
the interface, I press OK button, NVDA will refresh the synthesizer settings. The default one is often IBM Chinese text to speech. It is too old, NVDA cannot support it. There are a error message. When I press OK button, the Synthesizer settings dialogue will appear again, and the changing is failure. Thanks.

@nvaccessAuto
Copy link
Author

Comment 4 by jteh on 2014-03-30 20:48
Doing as you suggest would not solve this. Instead, you would just get an error when you try to move to that synthesiser in the list. A synthesiser has to be initialised with one voice; it can't just be initialised with nothing.

@nvaccessAuto
Copy link
Author

Comment 5 by vgjh2005 (in reply to comment 4) on 2014-04-01 11:11
Replying to jteh:

Doing as you suggest would not solve this. Instead, you would just get an error when you try to move to that synthesiser in the list. A synthesiser has to be initialised with one voice; it can't just be initialised with nothing.Hi

I opened the NVDA log viewer when loading is failure. But I could not get the error log. Following is the download link of the synthesizer IBM chstts: http://hot.baidupcs.com/file/159d9d33aa8e92c4031b9981a7ecfd29?xcode=b79646ed9bc35b7df124c695489b987836728e07a6c7d4b6&fid=671288931-250528-1467621449&time=1396350438&sign=FDTAXER-DCb740ccc5511e5e8fedcff06b081203-Cvao4tqcmQv3OAEXgJuQ%2BIcQggo%3D&to=hb&fm=N,B,U,nc&newver=1&expires=1396351038&rt=sh&r=469535456&logid=528681724&sh=1&vuk=282335&fn=chstts.rar

@bhavyashah
Copy link

@jcsteh Could you please summarize your arguments against the proposed design change? While the proposal does make sense to me, I do understand how refreshing all voice parameters when the a different synthesizer is selected could cause performance problems.

@LeonarddeR
Copy link
Collaborator

I think this request will be redundant as soon as #577 is done. Still, synthesizer and voice settings will be two separate categories in the new settings dialog, but it is much easier to go from panel to panel, i.e. it doesn't require closing and opening dialogs. Having said that, leaning towards a won't fix.

@Brian1Gaff
Copy link

Brian1Gaff commented Aug 12, 2017 via email

@jcsteh
Copy link
Contributor

jcsteh commented Aug 14, 2017

  1. When you switch synthesizers, you have to load the new synthesizer. That can be relatively slow and can also fail if there is an error loading the new synthesizer.
  2. Because of 1), we would definitely not want to do this every time the user changes the synthesizer in the list. Otherwise, moving up and down through the list would be very slow and could potentially throw up error dialogs. Think about those websites which load a new page every time you change the selection in a combo box.
  3. I guess we could attempt to switch synthesizers only when the combo box loses focus. However, I'm not sure this is intuitive.
  4. There is now also an output device setting in the Synthesizer section. This also requires a synthesizer reload and thus the same concerns (1 to 3) apply.

While #577 perhaps makes this less necessary, it's worth noting that switching categories probably doesn't apply settings (or does it?). If it doesn't, that will actually cause problems for voice settings if the synthesizer is changed.

@LeonarddeR
Copy link
Collaborator

@jcsteh commented on 14 aug. 2017 08:49 CEST:

While #577 perhaps makes this less necessary, it's worth noting that switching categories probably doesn't apply settings (or does it?).

Nope, it doesn't, you will explicitly have to click apply.

If it doesn't, that will actually cause problems for voice settings if the synthesizer is changed.

It wil indeed show the voices for the old synthesizer, unless you have explicitly clicked apply, what you probably want to do anyway if you'd like to test the new synthesizer. But still, that's something that needs to be documented for #577, or we should popup a question when one tries to leave the synthesizer dialog without having the new synth applied.

@bhavyashah
Copy link

I suppose I agree with the reasoning provided by @jcsteh in #4040 (comment). Also,In particular, #577 will also likely make this ticket less necessary. All in all, may we close this ticket as a wontfix? @ehollig

@ehollig
Copy link
Collaborator

ehollig commented Aug 29, 2017

Closing as wontfix because of reasoning expressed above. Also, #577 may, or may not make this issue less necessary.

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

Successfully merging a pull request may close this issue.

6 participants