View Full Version : Smoother VIVTC
Q3CPMA
30th October 2018, 12:33
Hello,
I've tried using all the modes for VFM, but I still can't get something as smooth (with my flawed source) than ffmpeg -vf "fps=30000/1001, pullup, dejudder". Any idea about a better solution than vivtc?
Thanks.
poisondeathray
30th October 2018, 16:55
I've tried using all the modes for VFM, but I still can't get something as smooth (with my flawed source) than ffmpeg -vf "fps=30000/1001, pullup, dejudder". Any idea about a better solution than vivtc?
In what way is the source "flawed" ?
Did you rule out source filter issues ?
Maybe post a source sample ?
Q3CPMA
30th October 2018, 17:20
* Source: http://0x0.st/sIzO.mkv
* ffmpeg: http://0x0.st/sIzV.mkv
* vapoursynth (vivtc mode=2): http://0x0.st/sIz9.mkv
ffmpeg does reduce judder (and produces a VFM output) compared to vs (especially visible in some pans) but it keeps some combed frames during flashes and whatnot. Maybe I should use "fieldmatch, decimate, dejudder" instead.
After looking at the original more, it looks liked mixed content, since the pan has 4 interlaced frames and 1 progressive, while the rest is classic 3:2.
ChaosKing
30th October 2018, 18:04
The frame rate produced by VFM is 23.976 (24000/1001) FPS hence the "judder" in 30fps scenes. I also saw some blends in the video, maybe srestore can help you there. It seems like ffmpegs dejudder produces a VFR (variable Frame Rate) so that you can combine 24 and 30 fps scenes.
Q3CPMA
30th October 2018, 18:55
Thanks, I still don't know what I'm supposed to do with mixed material but I'll probably stick to ffmpeg's automagic.
Q3CPMA
30th October 2018, 18:56
-edit-
Myrsloik
30th October 2018, 18:57
Thanks, I still don't know what I'm supposed to do with mixed material but I'll probably stick to ffmpeg's automagic.
If only there was a tool for shituations like these (https://forum.doom9.org/showthread.php?t=172496).
Q3CPMA
30th October 2018, 19:33
Thanks, it looks like what I was ready to do by hand (use the python slice tool A LOT).
ChaosKing
30th October 2018, 19:47
Would be too much work for me. Personally I would stick to something like this:
import havsfunc as haf
clip = core.ffms2.Source("D:\Download\sIzO.mkv")
clip = clip.vivtc.VFM(order=1, mode=4)
d = clip.std.Crop(16,16,16,16)
clip= haf.srestore(clip, frate=24000/1001, speed=-25, dclip=d)
clip.set_output()
Q3CPMA
30th October 2018, 21:10
Would still leave the judder that's really jarring in somes scenes. I guess my autism will serve me well.
lansing
30th October 2018, 21:12
This is a pure 24 fps anime, there is no hybrid content. It was just badly transferred by first converting to 30fps using blending, and then reinterlaced by some dumbass.
There is not much you can do except bob it to 60fps and then throw that into srestore and pray.
ChaosKing
30th October 2018, 22:08
lansing you're right, this looks much better
clip = haf.QTGMC(clip, TFF=True, Preset="slower")
d = clip.std.Crop(16,16,16,16)
clip= haf.srestore(clip, frate=24000/1001, speed=-25, dclip=d)
Q3CPMA
30th October 2018, 22:48
Really? That's "good" news, then. It'll make my trusty 8350 toil, instead of me.
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.