Android文本到语音播放队列

时间:2015-03-30 15:41:02

标签: android

是否可以访问android TextToSpeech Engine使用的播放队列?我想知道tts引擎当前正在讲的回放队列元素的索引

1 个答案:

答案 0 :(得分:0)

文件渲染和播放虽然speakOut()方法用于让Android立即说出文本,但有些情况下您希望将合成结果记录在音频文件中代替。例如,如果您的申请经常发表文字,就会出现这种情况;您可以通过只渲染一次文件,然后在需要时播放该音频文件来避免合成CPU开销。就像speak()一样,您可以使用可选的话语标识符在合成完成时通知文件:

HashMap<String, String> myHashRender = new HashMap();
String wakeUpText = "Are you up yet?";
String destFileName = "/sdcard/myAppCache/wakeUp.wav";
myHashRender.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID, wakeUpText);
mTts.synthesizeToFile(wakuUpText, myHashRender, destFileName);

一旦您收到合成完成的通知,您就可以像使用android.media.MediaPlayer的任何其他音频资源一样播放输出文件。