Yeah. I do not know it's method. A long time ago I thought I knew there was a way to awaken a thread at the end of presentation, akin to an interrupt, but in a quick search today I could not find it.I think I yet haven't understood completely the algorithm how Reclock behaves (nice to have closed source component with no good documentation).
Some quick notes:
- One thing I cannot understand is that how Reclock is able to detect the EOP.
- If Reclock only "tries" to drive the SOP by adjusting the reference clock wide enough presentation window should not interfere with Reclock's algorithm.
Anyway, it is clear that it does.:
- The position of the Reclock marker is related to, although some ms after, the "Present at nearest" target, when enabled
- With the same "Present at nearest" target, it's position on the screen varies (i.e. its distance from the "Present at nearest" target ) depending on whether the OSD is running and how much work it is doing (is it displaying a graph etc.)
- if double buffering is used it is hard pinned to the top of the screen i.e. vsync. The fact it is then pinned in hardware is shown by the fact there is almost no spread, no little dots, just line or a line with a very tight little line crossing it.
So the problem is if the Presenter is fixing SOP relative to vsync, it is also fixing EOP, allowing for scheduling/processing spread.
This means if EOP is outside of Reclock's target, even though it will try to correct it, the EVR Presenter will merely compensate by changing its "Sample Paint Time Correction". The raster offset moves but Reclock cannot tell, so it keeps on running the clock too fast (or slow) and "rolling sync" occurs. This is why you saw judder get worse when Reclock vsync correction was enabled. Reclock was continually running at, ever so slightly, the wrong frame rate.
The only time this will not happen is if you are fortunate enough to set the Presenter (or Reclock's vsync target) in just the right place and with tight enough tolerance that Reclock turns off its vsync correction, but then of course it is not doing anything anyway! And if drift is eventually a problem the Presenter will hide this from Reclock ("Sample Paint Time Correction" will change, not SOP or EOP) and its vsync correction will never kick in.
United Kingdom