【问题标题】:Change Voice in SpeechSynthesizer在 SpeechSynthesizer 中改变声音
【发布时间】:2018-11-25 20:02:00
【问题描述】:

我尝试更换扬声器,但我没有在SpeechSynthesizer 类中列出所有已安装的扬声器(George、Susan、Jakub),另一方面,我有一个,但根本没有安装(Zira)。

这里发生了什么?我可以以某种方式将特定扬声器添加到我的项目中(例如作为 .dll 或其他东西)以不依赖于计算机语言/地区吗?

【问题讨论】:

    标签: c# text-to-speech speechsynthesizer


    【解决方案1】:

    更新

    正如@Jimi 提到的,System.Speech 和 Microsoft.Speech 是不同的,为了避免混淆,只使用其中一个应该是正确的选择。

    对于 System.Speech

    1. 转到设置/区域和语言/添加语言
    2. 从语言设置中,下载语音

    例如 Helen 在 en_US 包中。因此,应通过添加英语(美国)语言来下载附加语音。

    对于 Microsoft.Speech

    1. 从以下链接下载演讲稿
    2. 添加对 项目中的 Microsoft.Speech DLL

    Microsoft Speech Recognition 和 Text-to-Speech 引擎数据文件可从以下链接下载;

    适用于 Microsoft 支持的语言的语音识别和文本转语音引擎 https://www.microsoft.com/en-us/download/details.aspx?id=27224

    更多信息:
    微软语音编程指南
    https://docs.microsoft.com/en-us/previous-versions/office/developer/speech-technologies/hh378466(v%3doffice.14)

    SpeechSynthesizer.SelectVoice 方法
    https://docs.microsoft.com/en-us/previous-versions/office/developer/speech-technologies/dd167624(v%3Doffice.14)

    System.Speech.Synthesis 命名空间
    https://docs.microsoft.com/en-us/dotnet/api/system.speech.synthesis?view=netframework-4.7.2

    【讨论】:

    • 谢谢,我安装了 Helen (MSSpeech_TTS_en-US_Helen.msi),因为“TTS MSI 包”列表中缺少 Jakub,但仍然没有运气。安装后 Helen 在 InstalledVoices 列表中也不见了:/ 我在语音设置中也没有看到 Helen,这里有些奇怪。
    • 这是两种完全不同的程序集和技术:Microsoft.SpeechSystem.Speech。 OP 使用的是后者。
    猜你喜欢
    • 2015-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-06
    • 2016-03-13
    • 2015-11-02
    • 2017-12-05
    • 2017-07-30
    相关资源
    最近更新 更多