Lynx_TWO
7th September 2017, 02:30
Theoretical Discussion here:
If time and computing power was not a factor:
Main Tools - StaxRip and VapourSynth
Starting video - Interlaced 720p footage (or even interlaced DVD) with some film judder
Workflow:
Step 1. Deinterlace
QTGMC | Keep FrameRate | QTGMC Placebo =
clip = core.std.SetFieldBased(clip, 2) # 1 = BFF, 2 = TFF
clip = havsfunc.QTGMC(clip, TFF = True, Preset = "Placebo", FPSDivisor=2, ForceTR=3, NNeurons = 4, SourceMatch=3, Lossless=2, Sharpness=0.0, TR2=3, NoiseProcess=1, NoiseRestore=0.0, Denoiser="dfttest", DenoiseMC=True, NoiseTR=2, NoiseDeint = "Generate", Sigma=4.0)
Step 2. Stabilize high frequency film judder
Stab = clip = haf.Stab(clip, range=1, dxmax=4, dymax=4, mirror=0)
Step 3. Upscale for denoiseing and further processing
http://www.infognition.com/videoenhancer/, Super-resolution. Output x254 lossless (q0) or similar, 2 passes to increase resolution to 2880p
Step 4. - Denoising
4pass SMDegrain =
pass1 = havsfunc.SMDegrain(clip, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 400, contrasharp = True, truemotion = True, RefineMotion = True)
pass2 = havsfunc.SMDegrain(pass1, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 350, contrasharp = True, truemotion = True, RefineMotion = True)
pass3 = havsfunc.SMDegrain(pass2, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 300, contrasharp = True, truemotion = True, RefineMotion = True)
clip = havsfunc.SMDegrain(pass3, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 250, contrasharp = True, truemotion = True, RefineMotion = True)
Step 5. - Increase detail
This, I don't know... Any machine learning based plugins to do this artificially yet?
Step 6. - Automatic color correction/re-balancing
I don't know any plugins that do this reliably based on scene changes...
Step 7. - Add some really fine grain back into the high rez upscale
TrueGrain or similar?
Step 8. - Downsize back to 1080p
Sinc = clip = core.fmtc.resample(clip, w=1920, h=1080, kernel="sinc", taps=128)
Step 9. - Compress
Whatever compression settings you usually work with
---------------------------------------------------------------
Any thoughts or suggestions? Again, we are looking for tools that achieve maximum theoretical quality here. In addition, it would be nice to have a plugin or option to be able to restart a computer as needed without using too much processing time, so processing in chunks might be an option...
Thanks in advance!
If time and computing power was not a factor:
Main Tools - StaxRip and VapourSynth
Starting video - Interlaced 720p footage (or even interlaced DVD) with some film judder
Workflow:
Step 1. Deinterlace
QTGMC | Keep FrameRate | QTGMC Placebo =
clip = core.std.SetFieldBased(clip, 2) # 1 = BFF, 2 = TFF
clip = havsfunc.QTGMC(clip, TFF = True, Preset = "Placebo", FPSDivisor=2, ForceTR=3, NNeurons = 4, SourceMatch=3, Lossless=2, Sharpness=0.0, TR2=3, NoiseProcess=1, NoiseRestore=0.0, Denoiser="dfttest", DenoiseMC=True, NoiseTR=2, NoiseDeint = "Generate", Sigma=4.0)
Step 2. Stabilize high frequency film judder
Stab = clip = haf.Stab(clip, range=1, dxmax=4, dymax=4, mirror=0)
Step 3. Upscale for denoiseing and further processing
http://www.infognition.com/videoenhancer/, Super-resolution. Output x254 lossless (q0) or similar, 2 passes to increase resolution to 2880p
Step 4. - Denoising
4pass SMDegrain =
pass1 = havsfunc.SMDegrain(clip, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 400, contrasharp = True, truemotion = True, RefineMotion = True)
pass2 = havsfunc.SMDegrain(pass1, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 350, contrasharp = True, truemotion = True, RefineMotion = True)
pass3 = havsfunc.SMDegrain(pass2, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 300, contrasharp = True, truemotion = True, RefineMotion = True)
clip = havsfunc.SMDegrain(pass3, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 250, contrasharp = True, truemotion = True, RefineMotion = True)
Step 5. - Increase detail
This, I don't know... Any machine learning based plugins to do this artificially yet?
Step 6. - Automatic color correction/re-balancing
I don't know any plugins that do this reliably based on scene changes...
Step 7. - Add some really fine grain back into the high rez upscale
TrueGrain or similar?
Step 8. - Downsize back to 1080p
Sinc = clip = core.fmtc.resample(clip, w=1920, h=1080, kernel="sinc", taps=128)
Step 9. - Compress
Whatever compression settings you usually work with
---------------------------------------------------------------
Any thoughts or suggestions? Again, we are looking for tools that achieve maximum theoretical quality here. In addition, it would be nice to have a plugin or option to be able to restart a computer as needed without using too much processing time, so processing in chunks might be an option...
Thanks in advance!