Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Seeking causes flickers with oversample on variable fps files when display refresh rate is not symmetric #12813

Closed
llyyr opened this issue Nov 5, 2023 · 1 comment · Fixed by #12814

Comments

@llyyr
Copy link
Contributor

llyyr commented Nov 5, 2023

Useless Information

Provide following Information:

  • mpv version: master

Reproduction steps

Seek through a variable fps file with the following options:

mpv --no-config --vo=gpu-next --interpolation --video-sync=display-resample

and ensure the the Vsync ratio isn't a clean integer. For the attached sample, 144Hz works because of the variable fps making the ratio be 5.99.

Expected behavior

No flickers

Actual behavior

Video flickers

Log file

mpvsucks.log

Sample files

sample.webm

Investigation

git bisect suggested that haasn/libplacebo@e91f765 is what caused this issue, but the commit doesn't seem to be doing anything incorrect and mpv surely shouldn't be requesting pts before the first frame.

llyyr added a commit to llyyr/mpv that referenced this issue Nov 5, 2023
This would cause mpv to, in some very specific scenarios, have a
negative vsync_offset after seeking which would result in mpv requesting
a pts before the first frame to libplacebo.

Fix it by setting it to 0 when we reset state, such as after seeking.

Fixes: mpv-player#12813
llyyr added a commit to llyyr/mpv that referenced this issue Nov 5, 2023
This would cause mpv to, in some very specific scenarios, have a
negative vsync_offset after seeking which would result in mpv requesting
a pts before the first frame to libplacebo.

Fix it by setting it to 0 when we reset state, such as after seeking.

Fixes: mpv-player#12813
llyyr added a commit to llyyr/mpv that referenced this issue Nov 5, 2023
This would cause mpv to, in some very specific scenarios, have a
negative vsync_offset after seeking which would result in mpv requesting
a pts before the first frame to libplacebo.

Fix it by setting it to 0 when we reset state, such as after seeking.

Fixes: mpv-player#12813
@ghost
Copy link

ghost commented Nov 5, 2023

I thought giving users epileptic attacks was a feature, not a bug.

sfan5 pushed a commit that referenced this issue Nov 6, 2023
This would cause mpv to, in some very specific scenarios, have a
negative vsync_offset after seeking which would result in mpv requesting
a pts before the first frame to libplacebo.

Fix it by setting it to 0 when we reset state, such as after seeking.

Fixes: #12813
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant