hello_hello
25th July 2024, 15:58
I'm confused. I recall someone telling me the Vapoursynth color range values are the opposite of those used for Avisynth, so Limited=0 and Full=1. Is that correct?
clip = core.std.BlankClip(format=vs.YUV420P8).resize.Spline36(600,304)
clip = core.text.Text(clip, 'ColorRange ' + str(clip.get_frame(0).props.get("_ColorRange", None)))
clip.set_output()
https://imgur.com/frAa9yP.png
Aside from not being sure if the value is correct, why does the resize function always write a color range to frame properties? It'd be fair enough after a conversion between YUV and RGB etc as assumptions are required, but when only resizing?
Although what seems to be happening is the value going in isn't the one coming out.
clip = core.std.BlankClip(format=vs.YUV420P8).resize.Spline36(600,304, range=1, range_in=1)
clip = core.text.Text(clip, 'ColorRange ' + str(clip.get_frame(0).props.get("_ColorRange", None)))
clip.set_output()
https://imgur.com/f0FPEPb.png
And either because there's something wrong with the color range assumption or I'm losing the plot, AddBorders appears to be adding full range borders when they should be limited. They're okay if I specify the border color via this function (https://forum.doom9.org/showthread.php?t=185022) though (histogram showing the black level on the right side of the screenshots).
BClip = core.std.BlankClip(format=vs.YUV420P8)
Color = rgb.RGBColor(BClip, "green")
clip = core.std.BlankClip(BClip, format=vs.YUV420P8, color=Color).std.AddBorders(40,40,40,40)
clip = core.text.Text(clip, 'ColorRange ' + str(clip.get_frame(0).props.get("_ColorRange", None)))
clip = core.hist.Classic(clip)
clip.set_output()
https://imgur.com/WUB4acV.png
BClip = core.std.BlankClip(format=vs.YUV420P8)
ColorA = rgb.RGBColor(BClip, "green")
ColorB = rgb.RGBColor(BClip, "black")
clip = core.std.BlankClip(BClip, color=ColorA, format=vs.YUV420P8).std.AddBorders(40,40,40,40, color=ColorB)
clip = core.hist.Classic(clip)
clip = core.text.Text(clip, 'ColorRange ' + str(clip.get_frame(0).props.get("_ColorRange", None)))
clip.set_output()
https://imgur.com/LYi4ius.png
clip = core.std.BlankClip(format=vs.YUV420P8).resize.Spline36(600,304)
clip = core.text.Text(clip, 'ColorRange ' + str(clip.get_frame(0).props.get("_ColorRange", None)))
clip.set_output()
https://imgur.com/frAa9yP.png
Aside from not being sure if the value is correct, why does the resize function always write a color range to frame properties? It'd be fair enough after a conversion between YUV and RGB etc as assumptions are required, but when only resizing?
Although what seems to be happening is the value going in isn't the one coming out.
clip = core.std.BlankClip(format=vs.YUV420P8).resize.Spline36(600,304, range=1, range_in=1)
clip = core.text.Text(clip, 'ColorRange ' + str(clip.get_frame(0).props.get("_ColorRange", None)))
clip.set_output()
https://imgur.com/f0FPEPb.png
And either because there's something wrong with the color range assumption or I'm losing the plot, AddBorders appears to be adding full range borders when they should be limited. They're okay if I specify the border color via this function (https://forum.doom9.org/showthread.php?t=185022) though (histogram showing the black level on the right side of the screenshots).
BClip = core.std.BlankClip(format=vs.YUV420P8)
Color = rgb.RGBColor(BClip, "green")
clip = core.std.BlankClip(BClip, format=vs.YUV420P8, color=Color).std.AddBorders(40,40,40,40)
clip = core.text.Text(clip, 'ColorRange ' + str(clip.get_frame(0).props.get("_ColorRange", None)))
clip = core.hist.Classic(clip)
clip.set_output()
https://imgur.com/WUB4acV.png
BClip = core.std.BlankClip(format=vs.YUV420P8)
ColorA = rgb.RGBColor(BClip, "green")
ColorB = rgb.RGBColor(BClip, "black")
clip = core.std.BlankClip(BClip, color=ColorA, format=vs.YUV420P8).std.AddBorders(40,40,40,40, color=ColorB)
clip = core.hist.Classic(clip)
clip = core.text.Text(clip, 'ColorRange ' + str(clip.get_frame(0).props.get("_ColorRange", None)))
clip.set_output()
https://imgur.com/LYi4ius.png