Many audiobook player apps on Android have a reading speed slider which lets us choose the reading speed e.g.
0.5x 0.75x 1.00x 1.25x 1.50x. This is time-stretching without pitch shifting.
I have some idea about how this could be done using
PSOLA algorithm(s), but they would need extra memory equivalent to the memory of original audio file.
Original audio file -> PSOLA -> Modified audio file
But these Andorid apps don't seem to use double the memory when we try to change reading speed. How do they do an
in place time stretching/shortening so quickly?
I don't understand the algorithm from the images though. Could anyone please explain? What do those triangles mean? How do they decide these