This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

[HELP] Please help me deinterlace my stupid NTSC DVD cartoons
#22
Due to the amount of artifacts you probably can't get rid of everything but going for a frame rate of 12 (may be 16) seems to be a good way.
Did a small reencode which I will send you a link to in a few minutes via PM.
I used:
# Imports
import os
import sys
import ctypes
# Loading Support Files
Dllref = ctypes.windll.LoadLibrary("I:/Hybrid/64bit/vsfilters/Support/libfftw3f-3.dll")
import vapoursynth as vs
core = vs.get_core()
# Import scripts folder
scriptPath = 'I:/Hybrid/64bit/vsscripts'
sys.path.append(os.path.abspath(scriptPath))
# Loading Plugins
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/Support/libsangnom.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/Support/fmtconv.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/SharpenFilter/AWarpSharp2/libawarpsharp2.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/DenoiseFilter/DFTTest/DFTTest.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/Support/libmvtools.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/DeblockFilter/Deblock/Deblock.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/SourceFilter/LSmashSource/vslsmashsource.dll")
# Import scripts
import muvsfunc
import nnedi3_resample
import mvsfunc
import havsfunc
# Loading C:\Users\Selur\Desktop\720x480_coyote-side2.mkv using LWLibavSource
clip = core.lsmas.LWLibavSource(source="C:/Users/Selur/Desktop/720X48~1.MKV", format="YUV420P8", cache=0)
# making sure input color matrix is set as unspec
clip = core.resize.Point(clip, matrix_in_s="unspec",range_s="limited")
# making sure frame rate is set to 30000/1001
clip = core.std.AssumeFPS(clip, fpsnum=30000, fpsden=1001)
# Setting color range to TV (limited) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
# adjusting frame count and rate with sRestore
clip = havsfunc.srestore(source=clip, frate=12.000, omode=6, speed=2, thresh=16)
# Deblocking using Deblock
clip = core.deblock.Deblock(clip=clip)
# cropping the video to 680x432
clip = core.std.CropRel(clip=clip, left=40, right=0, top=0, bottom=48)
# rainbow removal using LUTDeRainbow
clip = havsfunc.LUTDeRainbow(input=clip)
# removing grain using SMDegrain
clip = havsfunc.SMDegrain(input=clip, interlaced=False, prefilter=2)
# denoising using DFTTest
clip = core.dfttest.DFTTest(clip=clip)
# line darkening using Toon
clip = havsfunc.Toon(input=clip)
# adjusted resizing to achieve PAR 1:1 for preview (1)
clip = core.fmtc.resample(clip=clip, kernel="spline16", w=720, h=480, interlaced=False, interlacedd=False)
# Anti Aliasing using MAA
clip = muvsfunc.maa(clip)
# adjusting output color from: YUV420P16 to YUV420P10 for x265Model (i420)
clip = core.resize.Bicubic(clip=clip, format=vs.YUV420P10, range_s="limited")
# Output
clip.set_output()
(didn't do much tuning)

Cu Selur
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
Reply


Messages In This Thread
RE: Please help me deinterlace my stupid NTSC DVD cartoons - by Selur - 17.11.2018, 13:00

Forum Jump:


Users browsing this thread: 1 Guest(s)