Have you tried to initialize a new TextToSpeech for every 50 characters and run it when the first ends?
Did you determine, for example, the correct initialization of two different TextToSpeech variables? and although:
1) First 50 chars added to the first queue and at the same time the second 50 chars added to the second queue;
2) When the first queue ends to reproduce start the second one end rewrite the first one with the third 50 chars;
I think you should not have delays. They are necessary when changing one queue, but if you start a new one, it should be immediate.
source
share