Currently when doing time-shifting, we are only able to write one subtitle stream into the time-shifting buffer. That means, the subtitle choice is applied to samples currently written to the buffer. If you are playing with a large time-shift, you will not see the subtitle change until the newly written samples are actually played. Likewise, if you rewind, the subtitle you see might be the old choice. I do not know if this is a factor in any of your tests, but I wanted to throw this out here so you know.