Closed Saleh7Hamad closed 1 year ago
@hooke007
I've tried interpolation with many settings but juddering gets blurier but never disappears unlike how SVP does the job on Potplayer or MPC-HC that the judder effect literally disappears and the video becomes clear I'm still searching for better settings but I still don't a have clue
@qyot27
Thanks but this doesn't seem to be for Windows specifically, and seem to be really complicated Do you have any clean VapourSynth guide for Windows?
I tried that but for some reason I couldn't get it working, MPV just wouldn't launch if I enable by default and it did nothing as input command. I'm using Shinchiro builds so it should have Vaporsynth??
unlike how SVP does the job
memc is another thing which is totally different with the interpolation in mpv.
I'm using Shinchiro builds so it should have Vaporsynth??
vs should be installed by users. https://github.com/shinchiro/mpv-winbuild-cmake/wiki/Setup-vapoursynth-for-mpv BTW, that vs script is broken. It doesn't work with the latest vs because it used outdated syntax.
Oh, no wonder...
vs should be installed by users. https://github.com/shinchiro/mpv-winbuild-cmake/wiki/Setup-vapoursynth-for-mpv
I've done as the guide above, I also downloaded this vapoursynth script and downloaded the latest Mvtools
get MPV to use vapoursynth and make sure I have no issues
Check console's info.
get MPV to use the scripts
Did you try --video-sync=display-resample --tscale=mitchell --interpolation=yes
?
Did you try
--video-sync=display-resample --tscale=mitchell --interpolation=yes
?
I'm using those settings currently and it doesn't get rid of judder but it is better than nothing. Previously I used AMD's Fluid Motion in MPC-HC and MPVs inbuilt solution doesn't come close.
it doesn't get rid of judder but it is better than nothing. MPVs inbuilt solution doesn't come close.
True. and btw SVP 3 with Potplayer or MPC are good options to fix judder since MPV doesn't support SVP 3
True. and btw SVP 3 with Potplayer or MPC are good options to fix judder since MPV doesn't support SVP 3
They don't support Anime4k shaders so going back to those players is not even an option for me (I still use them for non-Anime content, but that's rare since I normally watch that stuff on TV rather than my PC). The benefit of Anime4k shaders far outweigh the annoyance of judder but if I can reduce it I could use it for other content. I haven't managed to get that vaporsynth script working yet though so no idea how effective it is.
They don't support Anime4k shaders so going back to those players is not even an option for me
You really should consider using madvr, its really a good replacement for mpv's qualities
You really should consider using madvr, its really a good replacement for mpv's qualities
I do and for Anime, it just doesn't come anywhere near close to a good setup of Anime4k shaders (I'm using a mix of old and new with tweaks to a few parameters that are better than the default presets). Either way it's off-topic, I need to use MPV and there's no getting around that so I need a solution to fix the judder.
What is the judder? 24fps content should naturally show correctly on a 144hz display (6x). You shouldn't need any interpolation.
What is the judder? 24fps content should naturally show correctly on a 144hz display (6x). You shouldn't need any interpolation.
I don't have 144hz like OP (I have 75hz and things get pretty nasty) but most of my content is 23.976fps, would it still go naturally into 144hz? (sorry if it's a stupid question).
Yes, it would. 23.976 * 6 == 143.856. That's well close enough, and mpv interpolation wouldn't even kick in for that difference. So yeah, with a modern high refresh rate monitor, you'll be running at a multiple of 24fps anyway, and you'll have VRR (Gsync/Freesync) so fullscreen content should be displayed correctly anyway.
In your case, you could create a custom modeline for your display to run at 72Hz and I would expect it to work fine.
In your case, you could create a custom modeline for your display to run at 72Hz and I would expect it to work fine.
It's definitely a lot better at 72hz but there's still quite a lot of judder in panning shots. Also I have no idea how to change to 72hz automatically (doing it manually every time is not nice) and I often have many other things open at the same time like emulators that might not like the change in display hz.
Yes, it would. 23.976 * 6 == 143.856. That's well close enough, and mpv interpolation wouldn't even kick in for that difference. So yeah, with a modern high refresh rate monitor, you'll be running at a multiple of 24fps anyway, and you'll have VRR (Gsync/Freesync) so fullscreen content should be displayed correctly anyway.
i wish things worked as you suggest theoretically.. I Have AOC 24g2 and it supports gsync, and I tried limiting fps in mpv to 143.856 and even made a custom resolution of 143.856Hz but none of that really fixed it, and I tried some tweaks with gsync and I have no clue about it. though the monitor doesn't support any resolution under 48Hz. Please tell us any info or any help you can do about it.
You keep saying "judder" but I don't think that's what you mean, as there's no judder when 24 fps is displayed on 72 Hz.
Judder is when you have non-uniform stuttering in the video that's caused by frames being displayed at inexact timings. For example if you play 24 fps on 60 Hz without interpolation, you can get judder as there's no way to refresh the frames timed exactly for the content.
Also 23.976 is equivalent to 24 for these purposes, because mpv will actually render it at 24 fps instead and adjust the audio very slightly to compensate so they stay lined up. The difference is 0.1% so you won't notice it at all.
You keep saying "judder" but I don't think that's what you mean, as there's no judder when 24 fps is displayed on 72 Hz.
Hmm... maybe it's not then, this is what it looks like: https://www.youtube.com/watch?v=T_dFjtOVUvc
But your recording is 60fps.
For trying to explain what I see; the actual scene in the anime of the video he sent shows flickering/flashing and shaking back and forth and ghosting of still objects and all of this happen when the scene is panning while there are still objects, and that's on my 144Hz monitor that doesn't support 24hz and on the other hand, the video looks perfect on the galaxy S10 smartphone I really tried to make example footage of this issue but they aren't appearing on the videos I shot using the camera
Many people online doesn't seem to understand the issue unless actually witnessing it irl, but many may call it judder, but myself the motion itself is smooth BUT there's an after effect on still objects in panning scenes, like halos of the objects and it depends on the speed of the pan and its direction, and sometimes they aren't that apparent but they are definitely there. though I hope you guys got the idea
But your recording is 60fps.
Should I have recorded at 24 or 48fps? (I don't know sites that support 72) I'm not sure since 24 would miss frames and I'm not sure how 48 would look like once uploaded to Youtube. Either way the video looks basically the same as what I'm seeing with my eyes so it should be good enough to see what I'm talking about.
shows flickering/flashing
Huh? I've never seen anything like that... That seems more like it would be an issue with shaders or other settings?
Huh? I've never seen anything like that... That seems more like it would be an issue with shaders or other settings?
Maybe I exaggerated a little bit there but I meant that the still objects like the characters are looking kinda shaky back and forth when the scene is panning and that happens when certain pans happen in any 24fps content on my monitor and whatever the video player is, unless I use SVP which uses Frames Interpolation to fix it, and it does it nicely.
It's important to remember that 24fps is a low FPS. You don't get smooth pans, even if your FPS and Hz are nice integer multiples. Your eyes will pick up the jump between frames. You might call this judder but it isn't judder - judder is uneven motion due to having inconsistent frame times due to the frame rate not matching the display.
In the case where you have a correct integer multiple set up, you also need to have accurate expectations of what 24fps will look like. If you're trying to compare accurate 24fps to full frame generation based interpolation going from 24 -> 144, you're results will be radically different.
Anyway - it's unclear if there is actually a problem here in the cases where you're ensuring an integer multiple.
If you're trying to compare accurate 24fps to full frame generation based interpolation going from 24 -> 144, you're results will be radically different
My comparing reference here is how good any 24fps panning scene looks on the galaxy s10 compared to how weird it looks on my monitor (without svp, and with svp it looks identical to the s10), and I've asked other people about how a certain anime scene look on their TV and they said its good and there isn't any problem (Deaimon ep1 on the first 10 seconds. happens whatever the source is, but it doesn't happen on my s10 nor on their 4k tv) Although I myself don't know if this issue happens on all monitors or not, since I don't remember noticing it until I've bought the 144hz monitor. but I've read many people talk about it on the internet and explain it the same way I see it.
I made videos that kinda gets the point of how the edges of the still objects look like in panning shots https://www.youtube.com/watch?v=K8GgTv4RgKE https://www.youtube.com/shorts/wPzSnbt_4SU Maybe it'd help to figure out what's this issue is
[..] You might call this judder but it isn't judder - judder is uneven motion due to having inconsistent frame times due to the frame rate not matching the display.
I mean, while technically correct, in many places the small but noticeable hiccups in motion visible during a panning shot on film or film-like (i.e. ~ 24fps) material is still called motion judder, or just judder.
This is not a standardization committee, so I don't think that pontificating about the proper terminology is very useful here.
Anyway, the fundamental issue is that, in short, 24fps is simply not enough information for any scene involving "complicated" motion, like a camera pan.
The only way around this, and that is what your usual modern smartphone (as well as tablets, real TVs (like living-room TV), or projectors) is doing internally, is using motion interpolation.
To my knowledge, there is no computer monitor that does this internally.
So, you have to use something like SVP, or use this linked guide in the gist above for using mpv + VapourSynth + mvtools (SVP is based on that). It shouldn't be too complicated, although it seems that linked vapoursynth script is outdated.. But this should be relatively straightforward to fix..
Edit
https://vapoursynth.com/doc/installation.html#basic-program
For testing, may be easier to use Python portable + VapourSynth portable.
I use this to fix this judder:
[LFR]
profile-desc=Fix jitter on panning shots in lfr videos
profile-cond=p["estimated-vf-fps"] <50
profile-restore=copy
video-sync=display-resample
I use this to fix this judder:
Isn't it we were talking about?
I use this to fix this judder:
[LFR] profile-desc=Fix jitter on panning shots in lfr videos profile-cond=p["estimated-vf-fps"] <50 profile-restore=copy video-sync=display-resample
This improves the situation somewhat, but this is still not comparable to real motion interpolation / motion compensation.
--display-resample
without --interpolation
means it just simply replicates the old frames. If someone is not satisfied with --interpolation
's effect. You profile is worse to them.
I actually have this issue for quiet a while (an created an issue here) and so far haven't found a satisfying solution. A couple days ago I started watching a few animes again and ... well. It's a problem for basically all 23.97x fps videos however it is especially easy to notice with animes.
Can you guys confirm that your problems look likes this: https://drive.google.com/drive/folders/1FdRWZKdzFX_cztwKKqjZSbAbSLRkEA2Y ?
In my opinion the interpolation might not be activated. At least I don't see any difference trying to play without interpolation or with interpolation and different tscale algorithms (overscan, triangle, catmull_rom, mitchell).
Is there any option to enable write information to the overlay to ensure that video-sync, interpolation and other features relevant to this are actually activated?
Is there any option to enable write information to the overlay to ensure that video-sync, interpolation and other features relevant to this are actually activated?
https://i.imgur.com/LLx2zqa.png
Shift+i, then press 2.
There was no interpolation with my configuration I had to change the video output to make it work.
Sure it's not perfect but it is quiet the improvement. You helped me a lot!
Okay, so I finally found a fix... well sort of... I had to create a custom resolution of 71.928. I did try that before but I thought it was just being set to 71 because that's what windows and MPV both report. I had to also set override-display-fps=71.928 in mpv.conf otherwise MPV will just try to do 71.0... (so this is an MPV issue but maybe need to create a new issue?). https://i.imgur.com/p6Uorsf.png BlurBusters website is showing 71.927: https://i.imgur.com/9zAPvvo.png
Why it's not a proper fix is because for 29.970 content or anything else I have to change my refresh rate in Windows AND remove the over-ride fps. Going to look into creating an autoprofile for it but not sure if that's even possible or how to do it.
EDIT:
[displayfps]
profile-cond=container_fps < 29
override-display-fps=71.928
Seems to work but apparently container_fps isn't great to use.
I want to run SVP 3 on MPV and I think it requires ffdshow, as I use SVP 3 because its free unlike SVP 4. So Is it possible to make MPV run ffdshow and Avisynth+ and vapoursynth combined to run SVP 3?
Or is there actual methods to to fix judders while panning scenes that appear on my 144hz monitor
If any of these are possible please anyone tell me how, and thanks.