26.07.2021, 16:51
Did you mean what is Preview looks like or what is VS script looks?
As you may remember, i tested x264 x265 with same gradients long time ago and confirmed that Hybrid can render x265 to true 12 bit.
As you may remember, i tested x264 x265 with same gradients long time ago and confirmed that Hybrid can render x265 to true 12 bit.
# Imports
import vapoursynth as vs
# getting Vapoursynth core
core = vs.core
# source: '/Volumes/aaa/Bit Depth Tests/hybrid x265 L4.1 RF1 Main-12 High 12bit.mp4'
# current color space: YUV420P16, bit depth: 12, resolution: 1440x1080, fps: 25, color matrix: 709, yuv luminance scale: limited, scanorder: progressive
# Loading /Volumes/aaa/Bit Depth Tests/hybrid x265 L4.1 RF1 Main-12 High 12bit.mp4 using LibavSMASHSource
clip = core.lsmas.LibavSMASHSource(source="/Volumes/aaa/Bit Depth Tests/hybrid x265 L4.1 RF1 Main-12 High 12bit.mp4")
# making sure input color matrix is set as 709
clip = core.resize.Point(clip, matrix_in_s="709",range_s="limited")
# making sure frame rate is set to 25
clip = core.std.AssumeFPS(clip=clip, fpsnum=25, fpsden=1)
# Setting color range to TV (limited) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
# adjusting color space from YUV420P16 to RGB48 for vsLevels
clip = core.resize.Bicubic(clip=clip, format=vs.RGB48, matrix_in_s="709", range_s="limited")
# Color Adjustment using Levels on RGB48 (16 bit)
clip = core.std.Levels(clip=clip, min_in=25344, max_in=28416, min_out=4096, max_out=60160)
# adjusting output color from: RGB48 to YUV444P16 for ProResModel (i444@12)
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P16, matrix_s="709", range_s="limited")
# set output frame rate to 25.000fps
clip = core.std.AssumeFPS(clip=clip, fpsnum=25, fpsden=1)
# Output
clip.set_output()