我正在写一个教孩子数数的安卓游戏。指令是通过声音片段向玩家朗读的,这些声音片段组合在一起形成句子(例如“Place”、“one”、“cow”、“in the”、“barn”。这需要一定的可靠性。涉及延迟,因此指令流听起来很自然。
目前我正在使用 MediaPlayer,在 OnCompletionListener 中播放每个声音。每个声音都有它自己的 MediaPlayer,它是在任何声音开始播放之前创建和准备的(以减少延迟) - 但在第一次播放每个声音之前我仍然会出现明显的延迟(第二次似乎某种缓存有发生并且工作正常)。
声音不是很多而且很短,它可能与 SoundPool 一起工作得更好,但 SoundPool 无法知道音频何时完成,因此不是一个选项。
有没有人有类似问题的经验和可行的解决方案?