管理视频片段的颜色

手动指定用于导入视频的颜色变换时,可以使用 gamma/ 目录下的变换来移除已应用的 Gamma。生成的颜色值是线性的,但是仍与输出相关,并且不应与场景相关的线性图像结合。

存在一些备选方案可以用来将视频图像转化为场景相关的线性状态:

SMPTE 合法视频位准

数字视频标准使用整数像素编码,并且通常定义基黑位准和基白位准,因此有一些顶部空间和脚部空间留给超出这些位准的值,而不会被剪裁。例如,SMPTE 10 位数字视频在 64 放置基黑,在 940 放置基白。广播员通常要求提供的内容不得超过这些“合法”限制。(请注意,“合法”的精确定义因视频格式和广播员而异。)

使用整数像素编码的软件应用程序通常遵循不同的约定,在整数允许的最小和最大值位置放置黑色和白色(例如,对于 10 位的情况,黑色位于 0,白色位于 1023)。

在视频和计算机编码之间转化时,需要确定是否保留顶部空间和脚部空间(在此情况下,黑色和白色并不是处于计算机中期望的位置),或者确定是否丢弃顶部空间和脚部空间并将基准视频黑/白映射到计算机黑/白。

通常,在视频 I/O 进程中做出此选择,并且在视频硬件中应用。但是,额外提供一些可用的颜色变换有时是非常有用的,这样可以在工作流的其他位置中执行转化。

levels/ 目录下的 full-range_to_legal_10bit 变换可缩放、偏移和钳制计算机颜色值(即 0 至 1023),以便这些值的范围在用于广播的合法 SMPTE 视频范围内(即 64 和 940)。legal-range_to_full_10bit 变换可反转该操作。