Mudlet: Windows Mudlet missing voices that OS has

Created on 13 May 2020  路  9Comments  路  Source: Mudlet/Mudlet

Brief summary of issue / Description of requested feature:

Some voices which are available in OS are not available in Mudlet. This is a Qt bug.

Steps to reproduce the issue / Reasons for adding feature:

Compare list of voices visible in Windows' voice settings vs. Mudlet's ttsGetVoices() output:

  1. Example Player A
    Windows: 5 voices
    Mudlet: 2 voices
  1. Example Player B
    Windows: 2 voices
    Mudlet: 1 voice

  2. Example Player C
    Windows: 3 voices
    Mudlet: 1 voice

Error output / Expected result of feature

Mudlet should receive all available voices from OS through Qt framework

Extra information, such as Mudlet version, operating system and ideas for how to solve / implement:

Mudlet 4.8
Win 10
Not sure if other OS are affected as well

Windows bug

All 9 comments

Player A
Win 10 Pro
ver 1903
compilation 18362.778

I just clarified the title of the issue a bit. Looking into the differences now.

Did you check Linux and MacOS are not affected by this then?

macOS lists all voices, even has an extra one. Linux does not have sound output yet.

This is a Qt issue - see the sample demo app is also affected:

Workspace 1_112

I've reported it to them over here.

I wonder what the "Desktop" in the voice name means. Anyone have an explanation from Windows on this?

Nope - but I suspect the Desktop variant makes the narrator work on the whole desktop and not just applications (c.f. Garmin Sat. Navs - which often have two voices in each gender and locale - one of which reads the street names out and one which does not!)

Here's what Qt had to say:

Triager here. My best guess is that this is because Qt Speech currently only currently supports one of the Speech API's on Windows: SAPI5. Newer language pack voices instead only support WinRT APIs.

This was actually noted way back in 2018 see point 5 here: #1881

ttsGetVoices - I have 2 voices installed and can change via OS. But GetVoices only ever lists the selected one, not the other

To which @jgh713 duly noted:

This is something to do with the QTSpeech interface. Changing your locale may make the other show, but there are certain voices I tried to install it just refused to recognize, no matter the locale set.

Was this page helpful?
0 / 5 - 0 ratings