If you don't mind I would like to keep it simple here until we look at the dropping. Dropping frames here and in video player may interfere.
My thoughts: If a frame has made it to the render buffers we already put a lot of effort in to get it to this stage. So why not display it? It does not harm being slightly late for a couple of frames as long as we catch up and make a drop hardly noticeable to the user.