为什么可以在H.264中使用BT.709表示比BT.601更多的颜色?

时间:2018-07-31 11:41:25

标签: h.264 yuv

为什么在H.264中可以使用BT.709来表示比BT.601更多的颜色?我认为对于YUV,它们都是Y,U和V数据。转换为RGB时,仅使用不同的矩阵。使用不同的矩阵可能会导致U变为更大的V和更少。 BT.709不能显示比BT.601更多的颜色。或者是BT.709不能代表但BT.601可以代表的颜色。有人可以告诉我错误在哪里。

2 个答案:

答案 0 :(得分:1)

601和709可以显示相同数量的颜色。 601的颜色倾向于更好地映射到CRT实际显示的颜色,而709则映射到LCD。但是601更通常使用部分范围,这意味着每个字节都使用范围16-235进行编码,因为通常使用709(0-255)来使用整个范围。这是因为部分范围在模拟分布的极限处留有填充。由于广播电视数字切换是在美国发生的,几乎每个人都从CRT切换到LCD的同时,因此范围/空间趋于联系在一起。

答案 1 :(得分:0)

DVD 使用 SMPTE 170M 又名 SMPTE C(SMPTE C 使用 D65 白点)原色,而 BT.601 矩阵源自 ITU-R Rec. BT.470 System M a.k.a. NTSC 1953 原色和白点(即 Illimiant C 而不是 D65 作为白点)。 (PAL DVD 也使用 BT.601 矩阵,JPEG 也是如此,默认为 BT.709 primaires。)这意味着原色与白点和矩阵之间存在不匹配,而对于代码点的最佳使用应该没有。因此,当新矩阵是从 BT.709 派生出来的,甚至更新到 BT.2020 primaires 时,它更合适。在 ITU-T Rec. H.273。

还有一个问题是 BT.709 原色是 SDR 显示器的事实上的标准,即使 WCG 也必须限制为 BT.709(在 Galaxy 设备、iPhone 和 LG 电视上以自然模式完成) )。但是在解码 BT.601 内容后,您将拥有 SMPTE C 或 PAL 原色,必须将颜色管理为 BT.709 原色,这也会带来一些损失。