Something's broken with the HD scaler's buffering/frameskip [update: only when display is flipped]
Posted: Wed Jan 05, 2022 1:16 am
There seems to be something wrong with how the HD scaler skips frames to accomodate for slight refresh rate differences between the TV and original hardware. Specifically I'm referring to using vsync_adjust=0.
I noticed it while playing Arkanoid (Arcade), which makes it very easy to spot since the ball moves in a very constant manner: Every once in a while, the ball hitches, which indicates a frame being repeated. This is very normal and expected since it runs at 59.1hz compared to the 60hz of my TV.
What is NOT normal, however, is that every once in a while, instead of repeating a frame causing the ball to stop in place, it shows a PREVIOUS frame where the ball effectively MOVES BACK one frame, indicating that the scaler flips to an OUTDATED render buffer that is older than the one that was currently being shown to me. This is definitely a bug that should not be happening.
Here's a video I recorded, and then slowed down, which shows the ball going backwards one frame instead of just stopping in place:
https://youtu.be/VLTznbuuzl0
(Now I know Arkanoid has a 60hz option, but not every core does, and this issue applies to all of them.)
I noticed it while playing Arkanoid (Arcade), which makes it very easy to spot since the ball moves in a very constant manner: Every once in a while, the ball hitches, which indicates a frame being repeated. This is very normal and expected since it runs at 59.1hz compared to the 60hz of my TV.
What is NOT normal, however, is that every once in a while, instead of repeating a frame causing the ball to stop in place, it shows a PREVIOUS frame where the ball effectively MOVES BACK one frame, indicating that the scaler flips to an OUTDATED render buffer that is older than the one that was currently being shown to me. This is definitely a bug that should not be happening.
Here's a video I recorded, and then slowed down, which shows the ball going backwards one frame instead of just stopping in place:
https://youtu.be/VLTznbuuzl0
(Now I know Arkanoid has a 60hz option, but not every core does, and this issue applies to all of them.)