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] NTSC SD master, best De-Interlace?
#11
I used DPIR as deblocker, but that deblocker isn't available in normal builds or dev builds.
Using PP7 with CQ around 8 should also do the trick.
Reply
#12
As it was explained earlier - if your source is telecined, use TIVCT or VIVTC instead of QTGMC
Halos may appear during digitalization (in-camera oversharpening), so use FineDeHalo if you see halos around object edges .
CAS is simply best and very unique sharpener that sharpens without adding new halos.
Resize to height 1080  and use Resizer NNEDI3. It is near universal must have option.
Color Matrix Rec.601 to Rec.709 color space needed when you upscale SD from cameras DVD to HD.

SMDegrain will remove grain and noise without softening image. But don't use too much noise reduction. In your sample it looks like normal film grain that is a essential part of the film image. Film grain structure is larger and more visible if film was shoot on 16mm film.
Sometimes digital noise also may look pretty.
Reply
#13
Thanks - is there also a way to change the pixel aspect ratio to square?
Reply
#14
Yes, i forget about this. Set pixel aspect ratio to 1:1.
Also if source frammed and have unusual aspect it is recommended to crop black edges and letterbox to 1440x1080 or to 1920x1080
Also i usually setup preferences like this to remember rezising settings:
[Image: 0iGOJSQ.jpg]
Reply
#15
And by the way, no need to use Deblock filter if your video was captured from tape directly to ProRes 422HQ. And if it is really ProRes 422HQ, but not basic ProRes or ProRes Proxy.
Deblock needs only for more ancient DV or DVD mpeg2, mpeg1 sources that always have some amount rectangle blocky compression artifacts.
But in your example image i see blocks same as Selur noticed. Maybe they are due JPEG image compression, or due video codec itself.
Reply
#16
@shijian: since ProRes also uses macroblocks, what makes you thing that deblocking is always unnecessary when using ProRes?
(and no ProRes is not lossless)
Reply
#17
ProRes uses macroblocks but also use very high bitrate in 422 HQ, 444 and 444XQ modes. So it is always lossless visually. It is professional industry codec.

macroblocks only will be visible with something like MPEG2 DVD or ProRes Proxy which use limited bitrate.

For example same file:
MPEG2 = 8Mb/s
ProRes 422 HQ = 56Mb/s
Reply
#18
Quote:So it is always lossless visually
Not always. Running a compression loop will produce compression artifacts since the format is not lossless.

Quote:It is professional industry codec.
So is basically any wildly used video format.
Which video format then isn't a 'professional industry codec'?
Just because some NLE uses format X doesn't make it beyond approach good.
A lossy format is a lossy format, 'visually lossless' is just a marketing term.
If you have loss you can make it visible.

Even Apple states:
Quote:.. offers visually lossless preservation of the highest-quality professional HD video that a single-link HD-SDI signal can carry
see: https://support.apple.com/en-us/HT202410
They never claimed that their format is always visually lossless, btw. most folks would say the same for H.264 with a rate factor of 13 or below.
Here have been quite a few discussions about what 'visually lossless' really means and as far as I know Apple never gave a statement about it.

Cu Selur
Reply
#19
I just try to explain that using Deblocker filter on SD file that use 56Mb/s compression is totally useless, because you never see any blocks artifacts with that bitrate.
Reply
#20
Quote:I just try to explain that using Deblocker filter on SD file that use 56Mb/s compression is totally useless, because you never see any blocks artifacts with that bitrate.
using a highly artifical example
# Imports
import os
import sys
import ctypes
import vapoursynth as vs
core = vs.core

# Import scripts folder (need to be adjusted)
scriptPath = 'I:/Hybrid/64bit/vsscripts'
sys.path.append(os.path.abspath(scriptPath))

# Loading Support Files  (need to be adjusted)
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/GrainFilter/AdaptiveGrain/adaptivegrain_rs.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/GrainFilter/AddGrain/AddGrain.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/ColorFilter/Retinex/Retinex.dll")
import vapoursynth as vs
# getting Vapoursynth core

# Import scripts
import havsfunc

clip = core.std.BlankClip(format=vs.YUV422P8, width=720, height=576, length=1000, color=[128, 128, 128])

# adding grain using GrainFactory3
clip = havsfunc.GrainFactory3(clp=clip)

clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P8, range_s="full")
# color adjustment using Retinex
clip = core.retinex.MSRCP(input=clip, sigma=[25,80,250], fulls=True, fulld=True)
clip = core.resize.Bicubic(clip=clip, format=vs.YUV422P10, range_s="full")

clip.set_output()
compressing it with ProRes, and comparing the encode against the script:
# Imports
import os
import sys
import ctypes
import vapoursynth as vs
core = vs.core

# Import scripts folder (needs to be adjusted)
scriptPath = 'I:/Hybrid/64bit/vsscripts'
sys.path.append(os.path.abspath(scriptPath))

# Loading Support Files (needs to be adjusted)
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/GrainFilter/AdaptiveGrain/adaptivegrain_rs.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/GrainFilter/AddGrain/AddGrain.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/ColorFilter/Retinex/Retinex.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/SourceFilter/LSmashSource/vslsmashsource.dll")
import vapoursynth as vs
# getting Vapoursynth core

# Import scripts
import havsfunc

clip = core.std.BlankClip(format=vs.YUV422P8, width=720, height=576, length=1000, color=[128, 128, 128])

# adding grain using GrainFactory3
clip = havsfunc.GrainFactory3(clp=clip)


clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P8, range_s="full")
# color adjustment using Retinex
clip = core.retinex.MSRCP(input=clip, sigma=[25,80,250], fulls=True, fulld=True)
clip = core.resize.Bicubic(clip=clip, format=vs.YUV422P10, range_s="full")

# path needs to be adjusted
clip2 = core.lsmas.LibavSMASHSource(source="E:/Output/testing.mov")

difference = core.std.MakeDiff(clip, clip2)
# Output
difference.set_output()
shows quite a few differences,.....

If you want to seriously look into this you should do it in another thread.

Cu Selur
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)