Text-To-Speech (TTS) Voices

Comments

49 comments

  • Cubez

    I see. David this is how you took over the female voice??!
    I have been struggling to get David off my tts, and face this thread. It all makes sense. You became the tts voice...

    1
  • Daveid

    Wait...I did?!?!?!?

    1
  • Cubez

    Yes and if you want to have a different voice, just change it in windows settings. (windows 10)
    Control panel > Ease of access > Speech recognition >> in the side bar ''Text to speech''
    It may take some time. But you can have your own voice if u want since you're David.

    1
  • Nafryti

    Did that, still stuck on David's voice.

    2
  • heiress

    I have tried. Do you know how I could find get more languages for this?

    1
  • icy McFreezeFreeze

    heiress It looks like there's a disparity between the narrator settings windows prefers you use, and the control panel settings discord may be using instead; I have the same issue you do.

    I raised this with support and while it can be perceived as a bug, it still looks like a feature request they'd need to spot in these forums and take up. _Technically_ /tts or `speak message` works, just not in a way that aligns with the system.

    1
  • Nafryti

    BOTH of those settings are on a Female voice, and Discord still a Male voice.  I think Discord uses its OWN TTS voice.

    2
  • icy McFreezeFreeze

    Nafryti In your case, I reckon your computer has another voice set up. Have a dig through settings and see if you can't match the voice you hear!

    I have confirmed with discord support that they don't have their own TTS voice; short of providing my own video I can assure you that on my machine, it's using the Microsoft Zira voice from Control Panel, rather than MS Catherine I've set up in Settings. (I think this is a bug)

    1
  • Cpt. Obvious

    Yes, it is a disparity between the option you set in the different settings panels. One of which is accessed via the legacy Control Panel and the other through the Windows 10 control applet (in my case at least, don't know how it works with Win 7 or 8).

    And that's not the end of it. In Windows 10 I can install voice packages for different countries, and in the Windows 10 control applet they are all available and can be chosen in order to make the Text-2-Speech work better with a particular language. However none of these are available in the settings available though the legacy Control Panel. There I can only see David and Zira.

    The legacy control has probably not been updated to support the new voice packages, and by now I'm not holding my breath waiting for MS to fix this. They are seriously trying to remove as much as possible of the old legacy control panel. This is understandable but also unfortunate as it's so much easier to work with in most cases.

    It does however also suggest that there are at least two ways to access the text to speech functionality in Windows, and that Discord is using an older legacy technique to do this. It might be that they haven't got a lot of feed back about this, or they don't want to break functionality for older versions of windows, but it might be worth asking about it.

    1
  • solohelion

    I have the same issue. I'm quite certain I've got my settings correct. However, I have some extra insight. There used to be a Notepad++ plugin called Speech, that isn't distributed with Notepad++ anymore. If one goes about installing it, it also doesn't respect the default voice. I wrote my own (unpublished) Notepad++ plugin in C# (using an adapter project) using the windows System.Speech.Synthesis APIs, and if you just instantiate the correct TTS objects, you don't get the correct voice. You have to get the list of voices and set the correct voice. So far it appears the first voice in the list is correct, but I haven't done extensive testing.

    Anyway, it's within discord's power to fix this for sure.

    1
  • Another piece of universe

    I'm experiencing the same issue. I'm pretty sure that my discord uses legacy settings from control panel. I'm using win 10.

    I also would like to know if there is any option to get TTS to stop mentioning nicknames and to get it to use different voice tones for different nicknames (so that each user has its own unique voice). It would make my TTS experience perfect.

    1
  • Celestian

    I've changed the voice in both places (control panel and the new Windows 10 settings) and it STILL plays the wrong voice.

    ... and I've rebooted since making the change.

     

    3
  • Oyamoo

    win key -> narrator -> settings
    win key -> settings -> time & language -> speech
    control panel -> speech recognition

    I've tried all three of the above, Discord still plays wrong(David's) voice.

    1
  • satylr

    just... change ur discord language 

    -3
  • icy McFreezeFreeze

    just... change ur discord language 

    satylr I've tried setting discord to UK and US English, as well as German, however this has no impact on the /TTS voice on desktop. Could you explain how your answer solves the issue please? Are you doing this in the Desktop version or an app instead maybe?

    1
  • Neosilver

    hi

    I have only found that information about tts on Discord

    Important Note: TTS follows the default system settings of how Discord is being used. Internet browsers such as Chrome or Firefox have a different Text-to-Speech reading bot than Windows or Mac do. Depending on what platform you're using, you'll be hearing different TTS voices!

    https://support.discord.com/hc/en-us/articles/212517297-Text-to-Speech-101

    You said that Discord follows the default settings of the system, but my Windwos 10 tts voice is a male from Austria (Karsten) and not the female from Discord.  So what does "follows the default system" means?

    I found further informations:

    "[...]The /tts voice is controlled by a default voice package that comes with Windows. The one that discord actually bothers looking at is in your Control Panel (not windows settings). Windows Settings > Time & Language > Speech > "Voice [Microsoft Zira]", Control Panel > Ease of Access > Speech Recognition > Text to Speech (left sidebar) > Voice Selection > "Microsoft Zira Desktop". [...]"
    https://peterberge.com/55rnbk2/a5c4df-how-to-change-tts-voice-discord

    Furthermore I would like to ask if it is possible to change the /tts output (voice) of Discord to a /tts output voice like amazon polly or another voice output with a better pronunciation of a certain language. 

    1
  • icy McFreezeFreeze

    You said that Discord follows the default settings of the system, but my Windwos 10 tts voice is a male from Austria (Karsten) and not the female from Discord.  So what does "follows the default system" means?

    Have a read through the earlier posts, (eg https://support.discord.com/hc/en-us/community/posts/360037406112/comments/360014497493), but the tl;dr is that /TTS is only half implemented in Windows 10; using the voice in the old Control Panel settings, rather than any of the current offerings.

    Furthermore I would like to ask if it is possible to change the /tts output (voice) of Discord to a /tts output voice like amazon polly or another voice output with a better pronunciation of a certain language. 

    Unfortunately unless something significantly breaks, updates to /tts look like a very low priority for the devs.

    Please upvote this thread though, so they can see there's significant demand for a better-quality implementation!

    4
  • Dr.Flay™

    Until the new discord update, the TTS was using my preferred voice but now it only uses George.

    Yes the correct voice is set in the Win 10 speech settings (also set in the old control panel).
    No I do not have any extra voices or APIs installed.

    2
  • Ged

    With the latest Update today I have the problem, too.

    Nothing changed on Windows side but only in Discord the TTS uses a horrible voice (this is on German Windows). Windows settings for TTS are correct and everything worked yesterday.

    1
  • Spikeypup

    Same issue, voice has been reverted to George, and I have no way of changing it.  I have custom voices I use with TTS and they were working properly everywhere including Discord...UNTIL the update this morning/last night.  Something broke in the TTS arena for Discord :(

    What I don't get is, since so many users use TTS why doesn't Discord just implement the bare controls for MS Speech API to allow selection of the voice within Discord instead of it picking pre-enumerated voices, because of this enumeration changes in the registry I've seen it cause problems in Discord.

    Either Discord should re-enumerate and pick the correct voice synced with the system panel(s) (old control panel SAPI, and the new modern "settings area" for speech) upon each startup to guarantee the right voice is selected; or, the best option: include a drop down within the app that allows selection of your TTS voice based on installed voices/tokens in the system that gets populated upon application startup.

    I haven't tried a full uninstallation (manual localdata/app removal) and reinstall, that may solve the issue as it has in the past for me, but that is not an ideal solution, even if it works.  Will update if that solves the issue/ provides a work-around.

    -Spikeypup

    1
  • Spikeypup

    Ged Dr.Flay™, we should probably either bump this item somewhere or start a new thread, I'm not so sure anyone will see what we are saying here... Let me know if you post a new thread, I'll move my post over.  And likewise, if I start a new thread, I will let you guys know.  I'm going to give Discord a couple days, then reinstall fresh and then I'll post my findings, at that time I will start a new thread, and will @ you guys on it...

     

    -Spikeypup

    2
  • icy McFreezeFreeze

    Spikeypup since this thread is about having a full implimentation of TTS, rather than running with the bare minimum that's been around since the feature was introducecd, I think you should keep your TTS complaints in this thread. That way any upvotes don't get watered down for this issue!

    1
  • icy McFreezeFreeze

    Now that this thread's had some activity, I've revisited my research from last year.
    https://support.discord.com/hc/en-us/community/posts/360037406112/comments/360014497493

    What I suspect has happened is that Microsoft have updated the Windows TTS API, so instead of using the dated Control Panel settings, it now uses the default voice for the user's region - regardless of what the setting actually is.

    For instance, if I have Microsoft James set, clicking "speak message" has it read with Microsoft Catherine. None of my narration settings either say that. Since the behaviour's changed, I'll raise another support ticket with discord since this is still a bug that needs fixing, (even if last time it was brushed off as a 'feature request')

    1
  • Spikeypup
    I sent in a request as well.  I'm not sure the SAPI has changed, I have no problems with any other apps using the same API and my voices are all there and working correctly, I did notice that in Modern Settings App that my voice list was doubled up or enumerated twice, I need to check the registry to see what happened, indeed if MS made a slight change or re-enumerated those in a weird way then I could see why Discord is having trouble.  

    Those look fine, but this:
     
    is not normal (doubled up list).  And from what I can tell is a recent change.

    So yes either MS made a slight change or something around the SAPI, or Discord made a slight change etc.  But something definitely changed lol.  Hopefully discord can offer some insight on this issue.  Like I said, other narration/speechAPI apps seem to be functioning and changing voices as expected when doing so.  Discord really needs it's own selection box for the TTS box so it hits the right voice/token every time from the SAPI enumerated list that the user wants.  IMO.
     
    icy McFreezeFreeze ok I will keep it in this thread, I already started a ticket with Discord and referenced this thread as well.  Thanks.
     
    -Spikeypup
     
    -Spikeypup
    1
  • VMLomo

    Chiming in to say I started having this issue starting today as well.

    • TTS Voice changed to George (previously Zira)
    • When I opened my TTS settings (old and new), it was set to George, and there was no Zira option. I installed additional voice packs and set both to Zira, but Discord still uses the George voice

    Basing on the above the issue most probably came from an OS update, since I've never touched the TTS settings until today.

    1
  • Spikeypup

    Interesting,  thanks for updating us.  Based on my screenshot and other findings, as well as your comments and the above other folks, I agree, I think windows may have made a slight change, but not to the API, but if I'm right I think the enumeration of the voices registry keys and the token.xml file for the SAPI may have been altered, I'll have to check also the WoW64 SAPI stuff.

    I'm going to do a full reinstall of Discord (removing from appdata manually and flushing registry entries so everything is vanilla) with things as they are now and see if that fixes it.  If that is the case then this is a bug as a result of Discord not catching enumeration changes in the voices references/GUIDs within the registry.  This would explain why a menu shows one thing but the action does another (voice selected is Zira, voice plays is mark) leaving you more than likely unable to select the right voice if that enumeration is changed/missing.

    Standby, I'll update shortly with my findings, and also try to see last time the voice keys were modified,  I can run a compare of the registry and the SAPI files from up to a couple weeks ago using backups, that should show clearly any major changes to those branches involved.  Need time though... please be patient.  Thanks!

    1
  • Spikeypup

    --UPDATE--

    TLDR:  Seems not related to Windows/MS as first suspected after testing, Accessibility options in Discord may be the culprit?

    OK so after reviewing the Registry, all SAPI files and XML's etc. related to TTS within windows, I do not see any changes made to any registry keys, or the files.  All keys and tokens are correct and have not changed since originally modified by me (to add voices).  

    I also tested numerous other TTS enabled apps as well as narrator and games that use TTS for chat in and out that choose the voice at runtime based on the control panel (SAPI) and Modern Settings (Narrator/Speech) settings you have set up in Windows, basically apps that don't have a way to choose the voice inside them, where they are based on your settings in Windows.  They worked fine, the voice followed the panels selection properly, so if I selected Mark for example, the app would use Mark after it was started, change to Zira, restart app, and now it uses Zira.  I Checked 3 apps and 5 games, all worked fine and as expected with windows TTS.

    I tested apps that allow selection of the TTS voice through SAPI/.NET Controls.  They (2 apps) worked as expected, voice followed the selection properly.  That's a total of 10 applications checked, so I don't think Windows/MS changed at all at this point.

    Discord is the only offending app at this time that I can tell.  I also noticed a section in "Accessibility" within Discord settings, it allows you to adjust TTS Speech Rate.  How long has that been there?  I don't recall it being there, and if that section is new, I dare say, it is probably the root cause of this issue.

    I'm suspecting that in order to modify speech rate a voice must be explicitly selected, it's possible in the new code a hardcoded reference was made to David/George the voice being used now by accident.  I already have a ticket in with Discord and am working with them to try to see if we can resolve this issue together.

    I need to use these other voices for a few reasons:

    1. I use TTS in production of my streams for incoming chat.
    2. I use TTS to enable multi-tasking and making sure I don't miss any messages.
    3. The TTS voice I use is substantially higher quality than the default voices.

    I would also imagine those who have PAID for very expensive voices are REALLY upset.  So a fix or control would be ideal for this, either allow voice selection within Discord (IDEAL), or put back the prior runtime voice selection behavior based off the SAPI Panel/Settings App selections.

    Spikeypup / Patrick

    1
  • kalwi

    I did some tests and I've found out Discord now ignores the TTS settings from Windows and it chooses the TTS voice depending on the UI language of Discord application instead, i.e. if you have Discord language set to e.g. German, then the TTS voice will be also German. However, it's still not clear to me how voices are selected if you have multiple voices for the same language installed (e.g. multiple English voices).

    I guess this new behavior is related to the new TTS settings introduced just few days ago:

    https://support.discord.com/hc/en-us/articles/1500010454681#h_01FF8RQ8EHR2T5PPCF9MZY1E1Y

    I did a correspondence with the Discord support and they are aware of the issue, however they don't have any estimation when it will be fixed.

    A workaround for those who are fine to have only one TTS voice/language (which is other to the Discord UI language) is to remove all TTS voice packs except the one you need.

    My issue is that I have Discord in Czech language, but the most of people (which I communicate with) speak English or Russian. Neither English or Czech TTS voices can read messages written in Cyrilic alphabet, so I've removed all voices except the Russian one. It can somehow read also English messages, just with a horrible Russian accent (and Czech messages are completely incomprehensible). Better than nothing until the issue is solved.

    1
  • Spikeypup

    Great News!  I have located the issue!  AND... I have a workaround/fix!  And yes, it will work.  However, due to the nature of the fix and the sensitivity of certain things, I have informed Discord of it to give them the opportunity to fix it first, and let them know I will be posting the fix/workaround in this forum within 24 hours if I don't hear back not to.

    Because this fix requires working within the Registry in areas that are risky/dangerous if you make a mistake, I wanted to let them know before I posted it, also if they are going to fix it... then it's best NOT to change the keys in the registry that need changing via my fix.  So, we need to wait, if I don't hear from them in 24 hours, I will post the findings and the workaround.

    Please be patient, you'll have your voice back shortly! (at least within the next day if I don't hear back from Discord about posting it :) )

    -Spikeypup#5103 / Patrick

     

    0
  • VMLomo

    When you do share the workaround, please paste export a reg file and paste the text contents here so we can just create a reg file of our own and apply it, for example:

    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USER\SOFTWARE\Discord]

    [HKEY_CURRENT_USER\SOFTWARE\Discord\Modules]

    At the very least it should be safer than manually editing the registry

    0

Please sign in to leave a comment.