3、HDR视频源与元数据:HDR视频的获取方式、静态元数据(MaxFALL、MaxCLL)、动态元数据(Dolby Vision)

好,咱们进入第三章。这一章聊的是HDR的“源头”和“说明书”。

你想想看,一个HDR视频,它到底是怎么来的?是摄像机直接拍的,还是后期合成的?拍完之后,播放器怎么知道该用多少亮度去显示?

答案就在元数据里。没有元数据的HDR,就像没有配料表的预制菜——你永远不知道它到底有多“辣”。

3.1 HDR视频的获取方式

HDR视频不是凭空变出来的。我这些年接触下来,主流获取方式就三种:

  1. 原生HDR拍摄:用支持HDR的摄像机直接录制。比如ARRI Alexa、RED Monstro这些高端货,能直接捕捉到高动态范围的RAW数据。后期调色时,直接在HDR色域下工作。
  2. SDR转HDR(上变换):把普通的SDR素材,通过算法扩展亮度范围。说白了,就是把原本0-100nit的信号,硬拉到0-1000nit。效果嘛……我只能说,聊胜于无。
  3. CGI/合成渲染:在三维软件或合成软件里,直接输出HDR格式的序列帧。比如用EXR格式渲染,保留完整的浮点亮度信息。

我的建议:如果你做商业项目,尽量用原生HDR素材。SDR转HDR的素材,在暗部细节和色彩过渡上,总有一种“塑料感”。

我个人习惯,拿到素材第一件事就是看它的“原生亮度范围”。用示波器扫一眼,如果波形最高只到109%,那基本就是SDR转的。真正的HDR素材,波形能顶到1000%甚至更高。

3.2 静态元数据:MaxFALL 与 MaxCLL

静态元数据,就是“一次性告诉你整部片子最亮和最暗是多少”。它不会变,从头到尾就一个值。

HDR10标准里,静态元数据主要包含两个关键指标:

元数据 全称 含义 单位
MaxCLL Maximum Content Light Level 整部视频中,单个像素能达到的最高亮度 cd/m² (nit)
MaxFALL Maximum Frame Average Light Level 整部视频中,单帧平均亮度的最高值 cd/m² (nit)

举个例子:

  • 一个爆炸镜头,中心火焰像素亮度是10000nit,那MaxCLL就是10000nit。
  • 但整帧画面大部分是暗背景,平均亮度只有200nit,那MaxFALL就是200nit。

避坑指南:我曾经遇到过一个项目,MaxCLL标的是4000nit,但MaxFALL只有50nit。结果在1000nit的显示器上看,画面暗得不行。为什么?因为MaxFALL太低,显示器的自动映射算法把整体亮度压下去了。

所以,MaxFALL比MaxCLL更影响实际观感。你调色时,别光盯着峰值亮度,多看看平均亮度。

3.3 动态元数据:Dolby Vision 的逐场优化

静态元数据有个硬伤:它用一把尺子量所有画面。

比如一部电影,白天场景亮度1000nit,夜晚场景亮度100nit。静态元数据只能取一个折中值。结果就是:白天不够亮,夜晚不够暗。

Dolby Vision(杜比视界)就是来解决这个问题的。它用的是动态元数据,可以逐帧或逐场景地告诉显示器:“这一帧,你该用这个亮度映射曲线;下一帧,换一个。”

3.4 Dolby Vision 的核心机制

Dolby Vision 的元数据包含两部分:

  • L1元数据:每帧的MaxCLL、MaxFALL、MinCLL(最低亮度)。
  • L2元数据:每帧的亮度分布直方图,用于指导显示器的色调映射。
  • L3元数据:可选,用于更精细的逐像素调整。

说白了,Dolby Vision 就是给每一帧画面都配了一个“专属调色师”。

我的经验:在调色软件里(比如DaVinci Resolve),如果你要输出Dolby Vision,必须用专门的Analyzer分析整条时间线。它会自动生成L1和L2元数据。我建议你分析完之后,手动检查一下那些高反差场景的元数据,有时候算法会误判。

3.5 静态 vs 动态:一张图看懂

下面这张图,是我自己画的。它展示了HDR10和Dolby Vision在元数据粒度上的区别:

HDR10 静态元数据 vs Dolby Vision 动态元数据 HDR10:整部影片一个元数据 MaxCLL: 1000nit MaxFALL: 200nit Dolby Vision:逐场景元数据 场景1: MaxCLL 800nit, MaxFALL 150nit 场景2: MaxCLL 4000nit, MaxFALL 300nit 场景3: MaxCLL 100nit, MaxFALL 20nit 关键差异 HDR10用一把尺子量所有画面;Dolby Vision为每个场景定制尺子

3.6 元数据在流程中的位置

元数据不是后期才加的。它在整个HDR流程中,贯穿始终:

  1. 拍摄/渲染阶段:记录原始亮度信息。
  2. 调色阶段:在DaVinci Resolve或Baselight中,生成并嵌入元数据。
  3. 母版制作阶段:封装成HDR10或Dolby Vision格式。
  4. 分发阶段:流媒体平台(Netflix、B站)根据元数据做转码。
  5. 播放阶段:电视或显示器读取元数据,执行色调映射。

核心要点:元数据就是HDR的“指挥棒”。它告诉显示设备:该亮的地方亮多少,该暗的地方暗多少。没有它,再好的HDR素材也是白搭。

3.7 实战中怎么检查元数据?

我常用的工具是 MediaInfo 和 DaVinci Resolve的元数据面板。

在MediaInfo里,打开一个HDR视频,找到 HDR format 那一行。你会看到类似这样的信息:

HDR format : Dolby Vision, Version 1.0, dvhe.08.06, BL+RPU, HDR10 compatible
MaxCLL : 1000 cd/m2
MaxFALL : 400 cd/m2

如果看到 HDR10 compatible,说明这个视频同时包含了HDR10的静态元数据和Dolby Vision的动态元数据。播放器会优先读取Dolby Vision的元数据。

注意:有些视频文件虽然标了Dolby Vision,但实际只嵌入了HDR10的静态元数据。这种“假杜比”在播放时,效果和普通HDR10没区别。怎么分辨?看RPU(Reference Processing Unit)层是否存在。没有RPU层,就不是真正的Dolby Vision。

3.8 本章小结

这一章我们聊了HDR视频的三种获取方式,重点拆解了静态元数据(MaxCLL、MaxFALL)和动态元数据(Dolby Vision)的区别。

记住一句话:静态元数据是“一刀切”,动态元数据是“量体裁衣”。