【问题标题】:tts set voice using vocalize tts enginetts 使用发声 tts 引擎设置声音
【发布时间】:2018-03-02 20:54:49
【问题描述】:

我正在尝试使用发声器的声音来实现 tts 应用程序。我已经下载了很多语音,它们在 get Voices 调用中正确列出。

 for(Voice v : engine.getVoices()){
 }

但是当我调用engine.setVoice(v) 时,如果您为一种语言下载了多个语音,则设置不正确。例如

它不会在应用程序 (Fiona) 中使用选定的声音,而是使用 Kate,如果我在发声应用程序中交换最喜欢的声音,它将使用 Fiona 而不是 Kate。如果您下载了所有声音,这也是一样的,它将始终为应用中选择的声音的本地选择最喜欢的声音。

我该如何解决这个问题?

【问题讨论】:

  • setVoice() 的结果是什么?我发现没有 TTS 提供商正确处理新的语音 API,除了 Google...
  • 0表示成功,-1表示错误
  • 在 Android 文本转语音设置中,声音是否被列为单独的引擎?
  • 不,它们都在“es.codefactory.vocalizertts”引擎中

标签: java android text-to-speech


【解决方案1】:

我对此进行了测试,可以确认这是一个错误。

正如您所说,它会在不同语言环境的声音之间成功切换,但在尝试在同一语言环境之一上调用 setVoice()) 时,它将默认为应用程序中选择的“收藏夹”。

同样令人沮丧的是,当调用getVoice() 时,它会返回您尝试设置的声音,因此无法检测到它“失败”。它必须在每次调用speak时在内部进行更改@

我将使用关于设置中的电子邮件报告错误并参考这篇文章 - 如果你也能这样做,那就太好了!

【讨论】:

    【解决方案2】:

    此问题已在 Vocalizer 版本 2.0.7(2017 年 8 月 7 日)上得到修复。

    应用设置中有一个名为“支持最新 TTS API”的选项或默认启用的类似选项。

    更新日志:

    重要提示:此更新使用新的语音数据,当前语音将被删除。您将不得不再次下载声音

    -将引擎升级到 Nuance Vocalizer Embedded 3.0,提高质量和稳定性

    -8 种新语言:智利语、博杰普尔语、孟加拉语、卡纳达语、马拉地语、泰卢固语、泰米尔语和克罗地亚语

    -20 个新声音

    -代码优化以提高响应时间

    -支持 Android TextToSpeech API

    -支持 Android 7 Nougat

    -支持新的表情符号 Unicode 8.0 和 9.0

    -内部改进和错误修复

    【讨论】:

      猜你喜欢
      • 2013-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-09
      • 1970-01-01
      • 2021-01-24
      • 2012-02-12
      相关资源
      最近更新 更多