I am using TextToSpeech
to play some long texts sometimes, and I have noticed that since Android 4.1.2
if the text is longer than 4000 chars, it does not play.
I do not get any errors, but the text won't be played. Until now I was able to reproduce this just on Android 4.1.2
(Samsung Galaxy Nexus, Nexus7).
Is this a bug just in 4.1.2
or is this normal (although I did not find any documentation regarding this behaviour)?
Also I have found a post : onUtteranceCompleted() lost if TTS received is too long which indicates different problems with texts longer than 4000 chars.
EDIT: I tried to split my string in 4k length chunks, and send it to TTS
using QUEUE_ADD
and I came across another bug: QUEUE_ADD
does not work, instead it flushes the existing queue, and only the last chunk gets played.
EDIT2 : this is my call to TTS
mTTS.speak(longText, TextToSpeech.QUEUE_FLUSH, null);