0
我在我的活動定義這個簡單的方法:安卓:座標SounPool和TTS
private void playSound(final boolean ttsOn) {
// TODO Auto-generated method stub
int water = 0;
SoundPool pl;
pl = new SoundPool(5, AudioManager.STREAM_MUSIC, 0);
water = pl.load(this, R.raw.water_boiling, 0);
pl.setOnLoadCompleteListener(new OnLoadCompleteListener() {
@Override
public void onLoadComplete(SoundPool soundPool, int sampleId, int status) {
// TODO Auto-generated method stub
soundPool.play(sampleId, 1f, 1f, 0, 0, 1);
if(ttsOn)
speakOut();
}
});
哪裏speakOut()
是這樣的:
private void speakOut() {
tts.setLanguage(Locale.ITALIAN);
tts.speak(n.Message, TextToSpeech.QUEUE_FLUSH, null);
}
但這重現我的MP3文件和我的TTS在同時講話。
所以問題是:
如何在我的mp3後重現tts?
我從來沒有使用過,但也許就是這樣。你可以添加if條件狀態== 0 http://developer.android.com/reference/android/media/SoundPool.OnLoadCompleteListener.html – PedroAGSantos 2013-04-23 07:19:04
也你可能想看看這個http://stackoverflow.com /問題/ 4436055 /打的Android的Soundpool,得到通知的,當-結束 – PedroAGSantos 2013-04-23 07:25:11