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

Unable to load the oneCore synthesizer #7553

Closed
nikosdemetriou opened this issue Sep 1, 2017 · 8 comments · Fixed by #7999
Closed

Unable to load the oneCore synthesizer #7553

nikosdemetriou opened this issue Sep 1, 2017 · 8 comments · Fixed by #7999

Comments

@nikosdemetriou
Copy link

@nikosdemetriou nikosdemetriou commented Sep 1, 2017

It is impossible to switch to the oneCore synthesizer from nvda's synthesizer settings dialogue.
When I choose oneCore synthesizer from the list and I press OK, a message comes up saying could not load the oneCore synthesizer and there is only an OK button to press in this dialogue.
I find this very strange since narrator works fine and it is using the same voices so I don't know why it doesn't work with nvda.

I am using windows 10 with the latest updates and the latest nvda master snapshot.

All the information is included in the attached log.
Nikos
nvda.txt

@josephsl
Copy link
Collaborator

@josephsl josephsl commented Sep 1, 2017

@zstanecic
Copy link
Contributor

@zstanecic zstanecic commented Sep 1, 2017

@dannya
Copy link

@dannya dannya commented Dec 15, 2017

I also have the same issue on Windows 10 (build 17046), here is my log output:

WARNING - synthDriverHandler.SynthDriver.loadSettings (16:52:58.943):
Invalid voice: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech_OneCore\Voices\Tokens\MSTTS_V110_enGB_HazelM
ERROR - synthDriverHandler.setSynth (16:52:58.957):
setSynth
Traceback (most recent call last):
  File "synthDriverHandler.pyo", line 89, in setSynth
  File "synthDriverHandler.pyo", line 498, in loadSettings
  File "synthDriverHandler.pyo", line 36, in changeVoice
  File "speechDictHandler\__init__.pyo", line 128, in loadVoiceDict
KeyError: u'HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Speech_OneCore\\Voices\\Tokens\\MSTTS_V110_enGB_HazelM'
INFO - synthDriverHandler.setSynth (16:52:58.963):
Loaded synthDriver sapi5

@josephsl
Copy link
Collaborator

@josephsl josephsl commented Dec 15, 2017

@mohdshara
Copy link

@mohdshara mohdshara commented Dec 18, 2017

@josephsl Other than re-installing the missing voice, is there anything that can be done to make the driver fall back to whatever voice currently installed?

@feerrenrut
Copy link
Member

@feerrenrut feerrenrut commented Dec 20, 2017

We could potentially check if the voice is available (see def setSynth of source/synthDriverHandler.py) and if not choose an arbitrary voice (eg the first available).

The ramifications of this is that from the users perspective, the voice will no longer be what they are familiar with, and they will not know why. Though, this does not seem worse than the synth changing with no explanation.

@feerrenrut
Copy link
Member

@feerrenrut feerrenrut commented Dec 20, 2017

Setting this as priority 2. It looks like it should be fairly quick to fix.

@michaelDCurran
Copy link
Member

@michaelDCurran michaelDCurran commented Feb 14, 2018

Anyone experiencing this issue: please test the following try build of NVDA, and switch to windows Onecore Speech to see if it works now:
https://ci.appveyor.com/api/buildjobs/63rtodmkp2xckm91/artifacts/output%2Fnvda_snapshot_try-i7553-14859%2Ca1e2a6d3.exe

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.

9 participants