Slush0Puppy / retime

A tool for retiming speedruns down to the millisecond.
26 stars 11 forks source link

Timer error/rounding #7

Open oxoao opened 3 months ago

oxoao commented 3 months ago

For anyone who still uses this: sometimes the yt player displays a different frame than the time shows. My retimer mitigates this by seeking the video on get frame (which will cause the frame to change if it is inaccurate), and taking time from player.getCurrentTime() instead of stats for nerds which rounds.

Slush0Puppy commented 3 months ago

Could you give an example/demonstration?

oxoao commented 3 months ago

To see player desync load and pause a video and click "Get" time on a segment. If the frame changes after it seeks then there was desync between the player time and displayed frame. For rounding error, manually player.seekTo() a value like 65.39987508773804 and then 65.39987508773804.toFixed(3) which is rounded like from debug info. These would give wrong frames when calculating the segment due to rounding.