clsid2 / mpc-hc

Media Player Classic
GNU General Public License v3.0
11.38k stars 499 forks source link

Frame-step foward skips multiple frames depending on playback speed (but NOT frame-step back) #3129

Closed jabberwockxeno closed 4 weeks ago

jabberwockxeno commented 4 weeks ago

Pretty much what the title says.

If I have the playback speed set to, say, 15x, and use the frame step button or keybind, sometimes it will skip many frames foward: I didn't count the exact amount but I'd guess like 15 frames, though sometimes it still only steps 1 frame forward.

Conversely, frame-stepping back seems to consistently only go back 1 frame at a time regardless, which is the behavior I would expect and want for frame stepping forwards, too.

The main use I have for frame-stepping is when I'm trying to view a specific part of a video file frame by frame, and I often have my playback speed set very high so I can quickly find the moment in the video i'm trying to look at frame by frame, so this isn't a niche combination of settings, at least for me

clsid2 commented 4 weeks ago

Framestep back is just an ordinary seek.

Increased playback speed makes no sense when using framestepping. If bad things happen, then so be it. I am not spending time on that.

MPC Video Renderer seems to behave better, so I suggest you use that instead of EVR-CP.

clsid2 commented 4 weeks ago

It is mostly just the timer that updates inaccurately. And that is not fault of player itself. I see no frame skips.

jabberwockxeno commented 4 weeks ago

It is mostly just the timer that updates inaccurately. And that is not fault of player itself. I see no frame skips.

It definitely skips multiple frames for me, I've uploaded a screen recording here:

https://imgur.com/q2I2gzS

First I let the video play at normal speed, (-:46 to -:34, using inverted/counting down timestamps since that's what imgur shows) next I use the frame-step button to go frame by frame at normal playback speed a few times just as a control to show normal behavior (-:27 to -:20) and then I change the playback speed to 8x, and use the frame-step button a few times: The first three presses seem to advance one frame as normal (-:10 to -:9) but then you can see it jolts foward a lot of frames on the third press and a few others after that (-:9 to the end of the clip)

If you think having the playback speed set high and using the frame-step button/keybind at once is too niche a situation to warrant altering the functionality, then that's fair enough (as I said, for me it's a rather common situation, but I admit my use case may not be typical and I can still always just reset the playback speed when i get to where I need to go frame by frame: it's just more convenient to not have to reset the playback speed first), but I did just want to reply to confirm that it IS something that happens, at least on my end, and it's not an issue the original MPC-HC had.

clsid2 commented 4 weeks ago

That is bullshit because the "original" MPC-HC 1.7.13 does way worse with its default renderer (EVR-CP).

The actual stepping is done by the video renderer. So change the renderer.