This happens because after a channel/format change the DShow graph needs to be rebuilt so the RSTP stream is stopped then restarted. But when restarting the stream we need to seek and seeking is not accurate neither we accurately know the position we left off, so sometimes the stream position ends up before the change. Previously this would cause a loop because a new channel/format change would be detected (that of the previous channel). This version simply ignores the change1) sometimes after the black screen, shortly video of the previous channel was played before starting with the new channel.
These are the problems I feared this version would cause. I need to find a different solution .2) replaying by going back in buffer seems to give now 100% channelswitch fail.
3) one time after I think a format change during watching ITV1 HD I had largely out of sync audio.