Android:文本到语音的两个实例工作非常缓慢

标签 android instance text-to-speech multiple-instances

我需要在我的 Andorind 应用程序中实现允许在当前 Acitivity 中播放两种不同的合成语言的功能 - 例如有两个按钮说英语和说法语

我尝试通过以下两种方式来做到这一点,但它们都无效,因为在播放声音之前有很长的延迟:

  1. 第一种方法:创建 TTS 的单个实例并根据必须播放的语言通过 setLocale 方法更改语言。不幸的是,通过 setLocale 在语言之间切换非常耗时,这会影响单击按钮后的 react
  2. 第二种方法:为各自的语言分别创建两个 TTS 实例。不幸的是,这里也会出现延迟,并且与第一种解决方案没有区别。

你能帮忙解决这个恼人的问题吗?

最佳答案

在任何用户交互之前等待两个 TTS 引擎在您的应用启动时完成初始化(通过创建 OnInitListener 并等待——例如使用信号量——直到 onInit() 方法被调用),以便当用户到达应用程序中引入按钮的位置时,您是否已经初始化了两个引擎?

关于Android:文本到语音的两个实例工作非常缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26994354/

相关文章:

python - Python3 中的 VLC 在播放音频时会剪掉音频的开头和结尾部分。如何解决?

java - AsyncTASK 错误.....NetworkOnMainThreadException

mysql - EC2服务器,一个微型实例就够了吗?

android - 将代码注入(inject) APK

google-compute-engine - 实例组 : Exceeded limit 'QUOTA_FOR_INSTANCES' on resource 'us-instance-group-1' . 限制 : 8. 0

java - 我如何知道我正在使用抽象类的方法中的哪个实例?

android - 什么是耳标?

android - TextToSpeech.isSpeaking() 在什么情况下返回 true?

android - 我在哪里可以按 cpu 找到 Android 分布(设备数量)的统计信息?

android - 如何在 android 应用程序中使用现有的 Sip Stack 库?