我正在开发一个模块来读取文本文件并使用 TTS 作为语音播放。我已经成功地将 TTS 集成到我的模块中。以及阅读和口语前 4000 个字符。
我有超过 4000 个字符的字符串,它也可能有超过 10000 个字符。目前我无法使用 TTS 读取文件和播放。
我尝试将大字符串拆分为字符串的一小部分。每个字符串部分有 4000 个字符。
当我演奏第一个弦乐部分时,它可以按要求正常工作。但是在完成第一个字符串部分后,我想立即开始第二部分。但 TTS 没有启动它。
我在用
int pos = 0;
while(true) {
String var = "";
try {
var = str.substring(pos, 3999);
pos += 3999;
} catch(Exception e) {
var = str.substring(pos, str.length());
break;
}
HashMap<String, String> map = new HashMap<String, String>();
map.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID, "utteranceId");
tts.speak(var, TextToSpeech.QUEUE_ADD, map);
}
我已经尝试了很多。也在网上搜索但没有得到任何好的解决方案。
有一个 setOnUtteranceCompletedListener() 我认为这可能很有用。但是谁能帮助我。如何使用 TTS 播放大文本。或任何其他可用的技术?