杜比视界的几种版本以及区别

杜比视界的各种版本

  • Dolby Vision:支持12位色深和最大亮度10000尼特。截至 2018 年,专业参考显示器(例如杜比视界 HDR 参考显示器)目前的峰值亮度仅限于 4,000 尼特。它使用一种动态映射技术,可以根据具体的场景动态地调整亮度和色彩,以提供更好的观看体验。
    HDR版本的Dolby Vison 包含profile5,profile8

  • Dolby Vision IQ
    杜比视界 IQ 并不是杜比视界的新版本,而是一组新的高级功能,使电视 OEM(原始设备制造商)能够对其产品进行分级和差异化。
    为此,杜比视界 IQ 使用杜比视界的动态元数据以及电视内部的光传感器,根据房间内的内容和环境光线条件动态调整 HDR 画面。
    如果您从明亮的现场体育节目切换到较暗的电视节目,电视会相应调整以获得最佳图像。这个想法是,你不需要做任何事情——无论房间里的光线有多少,图片看起来都会是正确的。
    总的来说,杜比视界 IQ版本相对于原版增加了自适应亮度调整功能,可以更好地适应不同的观看环境,提供更加一致和出色的视觉效果。

  • 杜比影院(Dolby Cinema)
    杜比影院 (Dolby Cinema) 也使用杜比视界 (Dolby Vision),但由于 SDR 影院使用 2.6 伽马,因此使用 48尼特,杜比影院 (Dolby Cinema) 中使用的 108 尼特已经是 HDR。

理解杜比视界中的BL、EL、和RPU层

BL(basic layer ),表示HDR视频原始素材,色深为10bit。
RPU:杜比视界中必须要有的一个部分,通常里面包含着各类的“指导”数据,用于明确告知电视,如何转换颜色空间,HDR的动态映射(tone mapping)等等。用比喻的说法PRU是一个视频处理条例,明确写着BL层的视频应该如何渲染及显示。
EL(enhancement layer),EL可以是MEL(Minimal Enhancement Layer),或者FEL(Full Enhancement Layer),MEL仅仅使用RPU层,即杜比视界的元数据。FEL不仅包含RPU,也包含额外的视频数据。这些额外的视频数据和BL层(10bit视频)可以将视频解码成12bit。

  • 一个Dolby Vison profile5 视频的RPU数据示例(使用ffmpeg5打印)
</frame>
        <frame media_type="video" stream_index="0" key_frame="0" pts="48000" pts_time="2.000000" pkt_dts="48000" pkt_dts_time="2.000000" best_effort_timestamp="48000" best_effort_timestamp_time="2.000000" pkt_duration="1000" pkt_duration_time="0.041667" pkt_pos="2355214" pkt_size="26733" width="3840" height="2160" pix_fmt="yuv420p10le" sample_aspect_ratio="1:1" pict_type="B" coded_picture_number="0" display_picture_number="0" interlaced_frame="0" top_field_first="0" repeat_pict="0" color_range="pc" chroma_location="left">
            <side_data_list>
                <side_data side_data_type="Dolby Vision RPU Data"/>
                <side_data side_data_type="Dolby Vision Metadata" rpu_type="2" rpu_format="18" vdr_rpu_profile="0" vdr_rpu_level="0" chroma_resampling_explicit_filter_flag="0" coef_data_type="0" coef_log2_denom="23" vdr_rpu_normalized_idc="1" bl_video_full_range_flag="1" bl_bit_depth="10" el_bit_depth="10" vdr_bit_depth="12" spatial_resampling_filter_flag="0" el_spatial_resampling_filter_flag="0" disable_residual_flag="1" vdr_rpu_id="0" mapping_color_space="0" mapping_chroma_format_idc="0" nlq_method_idc="-1" nlq_method_idc_name="none" num_x_partitions="1" num_y_partitions="1">
                    <components>
                        <component pivots="0 20 67 164 316 572 828 976 1021">
                            <pieces>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="2" poly_coef="5179 20623868 -294552256"/>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="2" poly_coef="88827 11315319 -25222884"/>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="2" poly_coef="151516 9365857 -9355354"/>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="2" poly_coef="277968 7675263 -3634208"/>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="2" poly_coef="459586 6473369 -1628778"/>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="2" poly_coef="670793 5687554 -894002"/>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="2" poly_coef="934323 5034373 -488398"/>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="2" poly_coef="20599870 -36279016 21211862"/>
                            </pieces>
                        </component>
                        <component pivots="0 1023">
                            <pieces>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="1" poly_coef="-713407 11137402"/>
                            </pieces>
                        </component>
                        <component pivots="0 1023">
                            <pieces>
                                <section mapping_idc="0" mapping_idc_name="polynomial" poly_order="1" poly_coef="-196848 11127635"/>
                            </pieces>
                        </component>
                    </components>
 dm_metadata_id="0" scene_refresh_flag="0" ycc_to_rgb_matrix="8192/8192 799/8192 1681/8192 8192/8192 -933/8192 1091/8192 8192/8192 267/8192 -5545/8192" ycc_to_rgb_offset="0/268435456 134217728/268435456 134217728/268435456" rgb_to_lms_matrix="17081/16384 -349/16384 -349/16384 -349/16384 17081/16384 -349/16384 -349/16384 -349/16384 17081/16384" signal_eotf="65535" signal_eotf_param0="0" signal_eotf_param1="0" signal_eotf_param2="0" signal_bit_depth="12" signal_color_space="2" signal_chroma_format="0" signal_full_range_flag="1" source_min_pq="7" source_max_pq="3079" source_diagonal="42"                </side_data>
            </side_data_list>
        </frame>

杜比视界的各种profiles

image.png

profile5

  • 像素格式为IPTPQ(类似于ICtCp),该像素格式编码后,相比于YCbCr有更少的色彩损失
  • 亮度传递函数为PQ
  • 内部有杜比私有函数来动态调整场景或者帧的颜色

profile7

  • 双层杜比,视频可以被完整解码为12bit

profile8

  • 像素格式为YCbCr
  • 亮度传递函数PQ(profile8.1),HLG(profile8.4)
  • 不会动态调整场景或者帧的颜色,只会调整亮度

杜比视界中的metadata

image.png
  • L0表示母带制作时的显示器特性和目标显示器的显示特性
  • L1 表示自动生成的动态元数据,包括每个场景或者每帧的动态范围 (min, avg, max)
  • L2trims L3trims L8trims 表示人工手动生成的元数据,可以是每个场景或者每帧一个
  • L5 表示显示的ROI区域,不在ROI区域的视频显示为黑色
    L5 – Level 5 – Timeline Aspect Ratio Description
    The aspect ratio of the project is described as L5 metadata in the exported XML. L5 is described as two values namely CanvasAspectRatio and ImageAspectRatio.
    image.png
  • L6 表示整个播放序列的单个像素的最高亮度MaxCLL,和单帧平均最高亮度MaxFALL
  • L9 表示动态色域元数据(since CMv4.0)

开源软件支持情况

  • Libplacebo 支持渲染Dolby Vison profile5中的 IPTPQc2,并且支持其中的MMR和reshaping,但是不支持动态元数据和NLQ
  • MPC Video Renderer支持部分杜比视界版本(Profiles5,8.1,8.4)
  • 截止2024.5月,最新的FFmpeg已经支持杜比profile=8的RPU层转码

mediainfo 查看一个dolby vison5 视频示例

Video
ID                                       : 1
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L5@High
HDR format                               : Dolby Vision, Version 1.0, dvhe.05.06, BL+RPU
Codec ID                                 : dvh1
Duration                                 : 1 min 2 s
Bit rate                                 : 24.6 Mb/s
Width                                    : 3 840 pixels
Height                                   : 2 160 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 24.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0 (Type 0)
Bit depth                                : 10 bits
Compression mode                         : Lossy
Bits/(Pixel*Frame)                       : 0.123
Stream size                              : 182 MiB (96%)
Default                                  : Yes
Alternate group                          : 1
Color range                              : Full
Codec configuration box                  : hvcC+dvcC

参考资料

  1. https://professionalsupport.dolby.com/s/article/Dolby-Vision-Metadata-Levels?language=en_US
  2. https://forum.doom9.org/showthread.php?t=184212
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,254评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,875评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,682评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,896评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,015评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,152评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,208评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,962评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,388评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,700评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,867评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,551评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,186评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,901评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,142评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,689评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,757评论 2 351

推荐阅读更多精彩内容