When to flush stream buffer with loop points

It’s based on the stream decode buffer size, which if you are not setting it, defaults to 400ms. What this means is if you open a stream the first 400ms is decoded into the stream buffer ready for playback. If you then set some loop points to loop the first 200ms things might sound wrong, requiring a setPosition(0) to reflush. If your loops are all quite large you will have no issues.