信令通知不可缩放嵌套的视频语法元素中的约束的制作方法

文档序号:33509539发布日期:2023-03-21 20:47阅读:135来源:国知局
信令通知不可缩放嵌套的视频语法元素中的约束的制作方法
信令通知不可缩放嵌套的视频语法元素中的约束
1.相关申请的交叉引用
2.根据适用的专利法和/或巴黎公约的规则,提出本技术旨在及时要求于2020年6月9日提交的美国临时专利申请号63/036,808的优先权和利益。出于法律规定的所有目的,上述申请的全部公开通过引用合并为本技术公开的一部分。
技术领域
3.本专利文件涉及图像和视频编码和解码。


背景技术:

4.在互联网和其他数字通信网络中,数字视频占据了最大的带宽使用量。随着能够接收和显示视频的连接用户设备数量的增加,预计数字视频使用的带宽需求将继续增长。


技术实现要素:

5.本文件公开了视频编码器和解码器可以用来执行视频编码或解码的技术。
6.在一个示例方面,公开了一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定包括关于假设参考解码器hrd的信息的不可缩放嵌套的补充增强信息sei消息适用于与比特流包括相同的视频层的所有输出层集。
7.在另一示例方面,公开了另一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定响应于不存在与比特流包括相同的层集的输出层集的条件而省略不可缩放嵌套的假设参考解码器(hrd)相关的补充增强信息(sei)消息。
8.在另一示例方面,公开了另一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定用于包括不可缩放嵌套的补充增强信息(sei)消息的sei网络抽象层(nal)单元的层标识符的值不受约束。
9.在另一示例方面,公开了另一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定包括用于非假设参考解码器(hrd)相关的补充增强信息(sei)消息的允许的补充增强信息(sei)有效载荷类型值的列表中不允许对应于子图片级信息的特定有效载荷类型值。
10.在另一示例方面,公开了另一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定包括与假设参考解码器(hrd)无关的信息的不可缩放嵌套的补充增强信息sei消息适用于比特流中的所有层。
11.在另一示例方面,公开了另一种视频处理方法。该方法包括根据规则执行视频和
包括一个或多个输出层集的视频的比特流之间的转换,其中规则指定由于在比特流中的所有输出层集中使用相同的图片定时,因此不包括包含携带图片定时信息的可缩放嵌套的补充增强信息(sei)消息的sei网络抽象层(nal)单元。
12.在另一示例方面,公开了另一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中根据规则比特流包括一个或多个补充增强信息sei网络抽象层(nal)单元,其中规则指定,响应于sei nal单元包括第一有效载荷类型的不可缩放嵌套的sei消息,不允许sei nal单元包括第二有效载荷类型的另一sei消息。
13.在另一示例方面,公开了另一种视频处理方法。该方法包括根据规则执行视频和视频的比特流之间的转换,其中根据规则比特流包括一个或多个补充增强信息sei网络抽象层(nal)单元,其中规则指定,响应于sei nal单元包括第一有效载荷类型的可缩放嵌套的sei消息,不允许sei nal单元包括第二有效载荷类型的另一sei消息。
14.在另一示例方面,公开了另一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中根据规则比特流包括一个或多个补充增强信息sei网络抽象层(nal)单元,其中规则指定,响应于sei nal单元包括第一有效载荷类型的sei消息,不允许sei nal单元包括不等于第一有效载荷类型或第二有效载荷类型的另一sei消息。
15.在另一示例方面,公开了另一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中根据规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中响应于子图片级信息(sli)补充增强信息(sei)消息和缓冲期(bp)sei消息被包括在访问单元中的条件,规则指定适用于特定输出层集的sli sei消息和bp sei消息之间的特定解码顺序。
16.在另一示例方面,公开了另一种视频处理方法。该方法包括根据规则执行视频和视频的比特流之间的转换,其中,响应于指示在缓冲期补充增强信息(sei)消息中指示初始编解码图片缓冲区(cpb)移除延迟的时间子层的最大数量的第二语法字段的特定值,规则指定省略指示存在初始cpb移除延迟相关的语法元素的子层表示信息的第一语法字段。
17.在又一示例方面,公开了一种视频编码器装置。视频编码器包括被配置为实施上述方法的处理器。
18.在又一示例方面,公开了一种视频解码器装置。视频解码器包括被配置为实施上述方法的处理器。
19.在又一示例方面,公开了一种其上存储有代码的计算机可读介质。该代码以处理器可执行代码的形式体现了本文描述的方法之一。
20.贯穿本文档描述了这些和其他特征。
附图说明
21.图1是示出了根据所公开技术的一些实施方式的视频编解码系统的框图。
22.图2是用于视频处理的示例硬件平台的框图。
23.图3是视频处理的示例方法的流程图。
24.图4是示出了示例视频编解码系统的框图。
25.图5是示出了根据所公开技术的一些实施方式的编码器的框图。
26.图6是示出了根据所公开技术的一些实施方式的解码器的框图。
27.图7a至图7e是基于所公开技术的一些实施方式的视频处理的示例方法的流程图。
28.图8是基于所公开技术的一些实施方式的视频处理的示例方法的流程图。
29.图9a至图9c是基于所公开技术的一些实施方式的视频处理的示例方法的流程图。
30.图10a和图10b是基于所公开技术的一些实施方式的视频处理的示例方法的流程图。
具体实施方式
31.在本文档中使用章节标题是为了便于理解,并且不将每个章节中公开的技术和实施例的适用性仅限于该章节。此外,在一些描述中使用h.266术语只是为了便于理解,而不是为了限制所公开技术的范围。因此,本文描述的技术也适用于其他视频编解码器协议和设计。
32.1.介绍
33.本文件涉及视频编解码技术。具体来说,它是关于定义支持单层视频编解码和多层视频编解码的视频编解码器的级别和比特流一致性。它可以应用于支持单层视频编解码和多层视频编解码(例如正在开发的通用视频编解码(vvc))的任何视频编解码标准或非标准视频编解码器。
34.2.缩写
35.aps
ꢀꢀꢀ
自适应参数集
36.au
ꢀꢀꢀꢀ
访问单元
37.aud
ꢀꢀꢀ
访问单元分隔符
38.avc
ꢀꢀꢀ
高级视频编解码
39.bp
ꢀꢀꢀꢀ
缓冲期
40.clvs
ꢀꢀ
编解码层视频序列
41.cpb
ꢀꢀꢀ
编解码图片缓冲区
42.cra
ꢀꢀꢀ
完全随机存取
43.ctu
ꢀꢀꢀ
编解码树单元
44.cvs
ꢀꢀꢀ
编解码视频序列
45.dpb
ꢀꢀꢀ
解码图片缓冲区
46.dps
ꢀꢀꢀ
解码参数集
47.dui
ꢀꢀꢀ
解码单元信息
48.eob
ꢀꢀꢀ
比特流结尾
49.eos
ꢀꢀꢀ
序列结尾
50.gci
ꢀꢀꢀ
通用约束信息
51.gdr
ꢀꢀꢀ
逐渐解码刷新
52.hevc
ꢀꢀ
高效视频编解码
53.hdr
ꢀꢀꢀ
假设参考解码器
54.idr
ꢀꢀꢀ
即时解码刷新
55.jem
ꢀꢀꢀ
联合探索模型
56.mcts
ꢀꢀ
运动约束片集
57.nal
ꢀꢀꢀ
网络抽象层
58.ols
ꢀꢀꢀ
输出层集
59.ph
ꢀꢀꢀꢀ
图片标头
60.pps
ꢀꢀꢀ
图片参数集
61.pt
ꢀꢀꢀꢀ
图片定时
62.ptl
ꢀꢀꢀ
档次、层和级别
63.pu
ꢀꢀꢀꢀ
图片单元
64.rrp
ꢀꢀꢀ
参考图片重采样
65.rbsp
ꢀꢀ
原始字节序列有效载荷
66.sei
ꢀꢀꢀ
补充增强信息
67.sh
ꢀꢀꢀꢀ
条带标头
68.sli
ꢀꢀꢀ
子图片级信息
69.sps
ꢀꢀꢀ
序列参数集
70.svc
ꢀꢀꢀ
可缩放视频编解码
71.vcl
ꢀꢀꢀ
视频编解码层
72.vps
ꢀꢀꢀ
视频参数集
73.vtm
ꢀꢀꢀ
vvc测试模型
74.vui
ꢀꢀꢀ
视频可用性信息
75.vvc
ꢀꢀꢀ
多功能视频编解码
76.3.初步讨论
77.视频编解码标准主要是通过众所周知的itu-t和iso/iec标准的发展而发展起来。itu-t制作了h.261和h.263,iso/iec制作了mpeg-1和mpeg-4visual,这两个组织联合制作了h.262/mpeg-2视频和h.264/mpeg-4高级视频编解码(avc)以及h.265/hevc标准。自h.262以来,视频编解码标准是基于混合视频编解码结构,其中使用时间预测加变换编解码。为了探索hevc以外的未来视频编解码技术,vceg和mpeg于2015年联合成立了联合视频探索团队(jvet)。此后,jvet采用了许多新方法,并将其应用到名为联合探索模型(jem)的参考软件中。jvet会议每季度同时举行一次,新的编解码标准的目标是与hevc相比降低50%的比特率。新的视频编解码标准在2018年4月的jvet会议上被正式命名为通用视频编解码(vvc),当时发布了第一版vvc测试模型(vtm)。随着为vvc标准化做出的不断努力,新的编解码技术在每次jvet会议上都被采用到vvc标准中。然后在每次会议后更新vvc工作草案和测试模型vtm。vvc项目现在的目标是在2020年7月的会议上的技术完成(fdis)。
78.3.1.参数集
79.avc、hevc和vvc指定参数集。参数集的类型包括sps、pps、aps和vps。所有avc、hevc和vvc都支持sps和pps。vps是从hevc开始引入的,并且包括在hevc和vvc中。aps不包括在avc或hevc中,但包括在最新的vvc草案文本中。
80.sps被设计成携带序列级标头信息,而pps被设计成携带不频繁改变的图片级标头信息。使用sps和pps,不需要对每个序列或图片重复不频繁改变的信息,因此可以避免该信息的冗余信令。此外,sps和pps的使用能够实现重要标头信息的带外传输,因此不仅避免了冗余传输的需要,而且提高了错误恢复能力。
81.引入vps是为了携带多层比特流中所有层通用的序列级标头信息。
82.引入aps是为了携带此类图片级或条带级信息,这些信息需要相当多的比特来编解码,可以由多个图片共享,并且在一个序列中可以有相当多的不同变化。
83.3.2.序列内的图片分辨率变化
84.在avc和hevc中,图片的空间分辨率不能改变,除非使用新sps的新序列以irap图片开始。vvc能够在序列内的某个位置改变图片分辨率,而无需对irap图片进行编码,而irap图像总是帧内编解码的。该特征有时被称为参考图片重采样(rpr),因为当用于帧间预测的参考图片具有与正在解码的当前图片不同的分辨率时,该特征需要对该参考图片进行重采样。
85.缩放比被限制为大于或等于1/2(从参考图片到当前图片的2倍下采样)和小于或等于8(8倍上采样)。指定了三个具有不同截止频率的重采样滤波器集,以处理参考图片和当前图片之间的各种缩放比例。三个重采样滤波器集分别应用于1/2到1/1.75、1/1.75到1/1.25和1/1.25到8的缩放比例。每个重采样滤波器集具有16个用于亮度的相位和32个用于色度的相位,这与运动补偿插值滤波器的情况相同。通常的mc插值过程实际上是重采样过程的一个特例,其缩放比例从1/1.25到8。水平和垂直缩放比例是根据图片宽度和高度以及为参考图片和当前图片指定的左、右、上、下缩放偏移导出的。
86.支持该特征的vvc设计的不同于hevc的其它方面包括:i)在pps中而不是在sps中信令通知图片分辨率和相应的一致性窗口,而在sps中信令通知最大图片分辨率。ii)对于单层比特流,每个图片存储器(dpb中用于存储一个解码图片的时隙)占用存储具有最大图片分辨率的解码图片所需的缓冲区大小。
87.3.3.通用的和vvc中的可缩放视频编解码(svc)
88.可缩放视频编解码(svc,有时也只是称为视频编解码中的可缩放性)是指其中使用基础层(bl)(有时称为参考层(rl)和一个或多个可缩放增强层(el))的视频编解码。在svc中,基础层可以携带具有基础质量水平的视频数据。一个或多个增强层可以携带额外的视频数据以支持例如更高的空间、时间和/或信噪比(snr)级别。可以相对于先前编码的层来定义增强层。例如,底层可以用作bl,而顶层可以用作el。中间层可以用作el或rl,或者两者兼而有之。例如,中间层(例如,既不是最低层也不是最高层的层)可以是中间层下面的层的el,诸如基础层或任何中间增强层,并且同时用作中间层上面的一个或多个增强层的rl。类似地,在hevc标准的多视图或3d扩展中,可以存在多个视图,并且可以利用一个视图的信息来编解码(例如,编码或解码)另一个视图的信息(例如,运动估计、运动向量预测和/或其他冗余)。
89.在svc中,编码器或解码器使用的参数基于它们可能使用的编解码级别(例如,视频级别、序列级别、图片级别、条带级别等)被分组到参数集中。例如,比特流中不同层的一个或多个编解码视频序列可以使用的参数可以包括在视频参数集(vps)中,并且编解码视频序列中的一个或多个图片使用的参数可以包括在序列参数集(sps)中。类似地,由图片中的一个或多个条带使用的参数可以包括在图片参数集(pps)中,并且特定于单个条带的其他参数可以包括在条带标头中。类似地,可以在各种编解码级别提供特定层在给定时间使用哪个(哪些)参数集的指示。
90.由于vvc支持参考图片重采样(rpr),因此无需任何额外的信号处理级编解码工
具,就可以设计对包含多层(例如在vvc中具有sd和hd分辨率的两层)的比特流的支持,如支持空间可缩放性所需的上采样只需使用rpr上采样滤波器。然而,为了支持可缩放性,需要高级语法更改(与不支持可缩放性相比)。vvc版本1中指定了可缩放性支持。不同于任何早期视频编解码标准中的可缩放性支持,包括avc和hevc的扩展,vvc可缩放性的设计已经尽可能地对单层解码器设计友好。多层比特流的解码能力以如同比特流中只有单层的方式来指定。例如,以与要解码的比特流中的层数无关的方式指定诸如dpb大小的解码能力。基本上,为单层比特流设计的解码器不需要太多改变就能够解码多层比特流。与avc和hevc的多层扩展设计相比,hls方面在牺牲一些灵活性的情况下得到了显著简化。例如,irap au需要包含cvs中存在的每个层的图片。
91.3.4.sei消息和通用sei语义和约束
92.vvc的附录d指定了某些sei消息的sei消息有效载荷的语法和语义,并指定了在itu-t h.sei-iso/iec 23002-7中指定了语法和语义的sei消息和vui参数的使用。
93.sei消息有助于与解码、显示或其他目的相关的过程。然而,通过解码过程构建亮度或色度样本不需要sei消息。不需要一致性解码器处理此信息以实现输出顺序一致性。检查比特流一致性和输出时序解码器一致性需要一些sei消息。检查比特流一致性不需要其他sei消息。
94.在最新的vvc草案文本中,需要通用sei。
95.最新vvc草案文本中的可缩放嵌套sei消息的语法和语义如下。
96.d.2.1通用sei消息语法
97.98.[0099][0100]
d.2.2通用sei有效载荷语义
[0101]
reserved_payload_extension_data不应出现在符合本规范此版本的比特流中。然而,符合本规范此版本的解码器将忽略reserved_payload_extension_data的存在和值。当存在时,reserved_payload_extension_data的长度(以比特为单位)等于8*payloadsize-nearlierbits-npayloadzerobits-1,其中nearlierbits是sei_payload()语法结构中位于reserved_payload_extension_data语法元素之前的比特数,而
npayloadzerobits是sei_payload()语法结构末尾的payload_bit_equal_to_zero语法元素的数量。
[0102]
payload_bit_equal_to_one应等于1。
[0103]
payload_bit_equal_to_zero应等于0。
[0104]
注意1—具有相同payloadtype值的sei消息在概念上是相同的sei消息,不管它们是包含在前缀还是后缀sei nal单元中。
[0105]
注意2—对于本规范中指定的payloadtype范围为0到47(含)的sei消息,payloadtype值与rec.itu-t h.264|iso/iec 14496-10中指定的类似sei消息一致。
[0106]
每个sei消息的语义和持久性范围在每个特定sei消息的语义规范中指定。
[0107]
注意3—sei消息的持久性信息在表d.1中进行信息性总结。
[0108]
表d.1-sei消息的持久性范围(信息性)
[0109][0110]
列表vclassociatedseilist被设置为由payloadtype值3、19、45、129、132、137、144、145、147到150(含)、153到156(含)、168、203和204组成。
[0111]
列表picunitrepconseilist被设置为由payloadtype值0、1、19、45、129、132、133、137、147到150(含)、153到156(含)、168、203和204组成。
[0112]
注意4-vclassociatedseilist由sei消息的payloadtype值组成,当不可缩放嵌套并包含在sei nal单元中时,这些值基于相关联的vcl nal单元的nal单元标头推断sei nal单元的nal单元标头上的约束。picunitrepconseilist由受限于每个pu 4次重复的sei消息的payloadtype值组成。
[0113]
比特流一致性的要求是,在sei nal单元中包含sei消息时适用以下限制:
[0114]
—当sei nal单元包含不可缩放嵌套的bp sei消息、不可缩放嵌套的pt sei消息或不可缩放嵌套的dui sei消息时,sei nal单元不应包含payloadtype不等于0(bp)、1(pt)或130(dui)的任何其他sei消息。
[0115]
—当sei nal单元包含可缩放嵌套的bp sei消息、可缩放嵌套的pt sei消息或可缩放嵌套的dui sei消息时,sei nal单元不应包含payloadtype不等于0(bp)、1(pt)、130(dui)或133(可缩放嵌套)的任何其他sei消息。
[0116]
以下适用于适用的ols或不可缩放嵌套的sei消息层:
[0117]
—对于不可缩放嵌套的sei消息,当payloadtype等于0(bp)、1(pt)或130(dui)时,不可缩放嵌套的sei消息仅适用于第0个ols。
[0118]
—对于不可缩放嵌套的sei消息,当payloadtype等于vclassociatedseilist中的任何值时,不可缩放嵌套的sei消息仅适用于vcl nal单元的nuh_layer_id等于包含sei消息的sei nal单元的nuh_layer_id的层。
[0119]
比特流一致性的要求是,以下限制适用于sei nal单元的nuh_layer_id的值:
[0120]
—当不可缩放嵌套的sei消息的payloadtype等于0(bp)、1(pt)或130(dui)时,包含不可缩放嵌套的sei消息的sei nal单元的nuh_layer_id应等于vps_layer_id[0]。
[0121]
—当不可缩放嵌套的sei消息的payloadtype等于vclassociatedseilist中的任何值时,包含不可缩放嵌套的sei消息的sei nal单元的nuh_layer_id应等于与sei nal单元相关联的vcl nal单元的nuh_layer_id的值。
[0122]
—包含可缩放嵌套sei消息的sei nal单元的nuh_layer_id应等于应用可缩放嵌套的sei消息的所有层的nuh_layer_id的最低值(当可缩放嵌套sei消息的sn_ols_flag等于0时)或应用可缩放嵌套的sei消息的ols中的所有层的nuh_layer_id的最低值(当可缩放嵌套sei消息的sn_ols_flag等于1时)。
[0123]
比特流的一致性要求是,以下限制适用于sei消息的重复:
[0124]
—对于picunitrepconseilist中包含的每个payloadtype值,在一个pu中应该有少于或等于4个相同的sei_payload()语法结构。
[0125]
—在一个du中,payloadtype等于130的相同的sei_payload()语法结构应少于或等于4个。
[0126]
以下适用于bp、pt和dui sei消息的顺序:
[0127]
—当适用于特定op的bp sei消息和pt sei消息存在于au内时,bp sei消息以解码顺序应在pt sei消息之前。
[0128]
—当适用于特定op的bp sei消息和dui sei消息存在于au内时,bp sei消息以解码顺序应在dui sei消息之前。
[0129]
—当适用于特定op的pt sei消息和dui sei消息存在于au内时,pt sei消息以解码顺序应在dui sei消息之前。
[0130]
4.所公开的技术解决方案所解决的技术问题
[0131]
现有的通用sei有效载荷语义(包括通用sei约束)存在以下问题:
[0132]
1)应指定不可缩放嵌套的hrd相关sei消息适用于与整个比特流包括相同的层集的ols(而不是仅适用于第0个ols)。
[0133]
2)整个比特流可以包括多个层,而没有指定包括所有层的ols。在这种情况下,不能有任何不可缩放嵌套的hrd相关的sei消息,因为它们将适用于与整个比特流包括相同的层集的ols。
[0134]
3)当前指定,不可缩放嵌套的非hrd相关的sei消息仅适用于nuh_layer_id等于sei nal单元的nuh_layer_id的层。然而,为了与不可缩放嵌套的hrd相关的sei消息一致,应指定不可缩放嵌套的非hrd相关的sei消息适用于整个比特流中的所有层。
[0135]
4)当前指定,包含不可缩放嵌套的hrd相关的sei消息的sei nal单元的nuh_layer_id的值应等于vps_layer_id[0],并且包含不可缩放嵌套的非hrd相关的sei消息的sei nal单元的nuh_layer_id的值应等于与sei nal单元相关联的vcl nal单元的nuh_layer_id。然而,当不可缩放嵌套的sei消息应用于整个比特流时,应当移除对nuh_layer_
id的值的这些约束,使得包含不可缩放嵌套的sei消息的sei nal单元的nuh_layer_id的值不受约束,与dci、vps、aud和eos nal单元的nuh_layer_id相同。
[0136]
5)列表变量vclassociatedseilist当前由非hrd相关的sei消息的sei payloadtype值组成。然而,对于sli sei消息,值203也是hrd相关的sei消息。因此,应当从列表中移除payloadtype值203(sli)。
[0137]
6)缺少这样的约束,即当general_same_pic_timing_in_all_ols_flag等于1时,不应有包含payloadtype等于1(pt)的可缩放嵌套的sei消息的sei nal单元。这是因为当general_same_pic_timing_in_all_ols_flag等于1时,不需要在可缩放嵌套sei消息中包含pt sei消息。
[0138]
7)缺少这样的约束,即当sei nal单元包含payloadtype等于0(bp)、1(pt)、130(dui)或203(sli)的不可缩放嵌套的sei消息时,sei nal单元不应包含payloadtype不等于0、1、130或203的任何其他sei消息。只有这样,在子比特流提取过程中,可以通过简单地移除包含这些sei消息中的一个或多个的sei nal单元来执行从输出比特流中移除这四个hrd相关sei消息。
[0139]
8)缺少这样的约束,即当sei nal单元包含payloadtype等于0(bp)、1(pt)、130(dui)或203(sli)的可缩放嵌套的sei消息时,sei nal单元不应包含payloadtype不等于0、1、130、203或133的任何其他sei消息(可缩放嵌套)。只有这样,才可以毫无问题地为可缩放嵌套的hrd相关和非hrd相关sei消息设置可缩放嵌套sei消息的sn_ols_flag值。
[0140]
9)缺少这样的约束,即当sei nal单元包含payloadtype等于3(填充有效载荷)的sei消息时,sei nal单元不应包含payloadtype不等于3的任何其他sei消息。只有这样,在子比特流提取过程中,可以通过简单地移除包含一个或多个填充有效载荷sei消息的sei nal单元来执行从输出比特流中移除填充有效载荷sei消息。
[0141]
10)缺少这样的约束,即当适用于特定ols的sli sei消息和bp sei消息存在于au内时,sli sei消息以解码顺序将在bp sei消息之前。这是必要的,因为sli sei消息提供序列级信息,如vps和sps,当存在于与bp sei消息相同的au中时,它们也在bp sei消息之前。
[0142]
11)在bp sei消息中,即使当bp_max_sublayers_minus1等于0时,也信令通知bp_sublayer_initial_cpb_removal_delay_present_flag。然而,当bp_max_sublayers_minus1等于0时,已知bp_sublayer_initial_cpb_removal_delay_present_flag的值为0。
[0143]
5.解决方案和实施例的示例
[0144]
为了解决上述问题和其他问题,公开了如下总结的方法。这些解决方案项目应被视为解释通用概念的示例,并且不应以狭隘的方式进行解释。此外,这些项目可以单独应用或以任何方式组合应用。
[0145]
1)为了解决第一个问题,指定不可缩放嵌套的hrd相关的sei消息适用于与整个比特流包括相同的层集的ols(而不是仅适用于第0个ols)。
[0146]
a.在一个示例中,hrd相关的sei消息指的是payloadtype等于0(bp)、1(pt)、130(dui)或203(sli)的sei消息。
[0147]
2)为了解决第二个问题,添加一个约束,使得当不存在与整个比特流包括相同的层集的ols时,不应有不可缩放嵌套的hrd相关的sei消息。
[0148]
a.在一个示例中,hrd相关的sei消息指的是payloadtype等于0(bp)、1(pt)、130
(dui)或203(sli)的sei消息。
[0149]
3)为了解决第三个问题,指定不可缩放嵌套的非hrd相关的sei消息适用于整个比特流中的所有层,以与不可缩放嵌套的hrd相关sei消息一致。
[0150]
a.在一个示例中,非hrd相关的sei消息指的是payloadtype不等于0(bp)、1(pt)、130(dui)或203(sli)的sei消息。
[0151]
4)为了解决第四个问题,移除对包含不可缩放嵌套的sei消息的sei nal单元的nuh_layer_id的值的约束,使得包含不可缩放嵌套的sei消息的sei nal单元的nuh_layer_id的值不受约束,与dci、vps、aud和eos nal单元的nuh_layer_id相同。
[0152]
5)为了解决第五个问题,将vclassociatedseilist重命名为nestingforlayersseilist,并从列表中移除payloadtype值203(sli)。
[0153]
6)为了解决第六个问题,添加一个约束,使得当general_same_pic_timing_in_all_ols_flag等于1时,不应有包含payloadtype等于1(pt)的可缩放嵌套的sei消息的sei nal单元。
[0154]
a.另外,在一个示例中,指定当general_same_pic_timing_in_all_ols_flag等于1时,不可缩放嵌套的pt sei消息适用于所有ols以及可从ols的比特流中提取的子图片序列。
[0155]
b.在一个示例中,替代地,添加约束,使得当general_same_pic_timing_in_all_ols_flag等于1时,不应有包含payloadtype等于1(pt)且其sn_subpic_flag等于0的可缩放嵌套的sei消息的sei nal单元。
[0156]
7)为了解决第七个问题,指定当sei nal单元包含payloadtype等于0(bp)、1(pt)、130(dui)或203(sli)的不可缩放嵌套的sei消息时,sei nal单元不应包含payloadtype不等于0、1、130或203的任何其他sei消息。
[0157]
8)为了解决第八个问题,指定当sei nal单元包含payloadtype等于0(bp)、1(pt)、130(dui)或203(sli)的可缩放嵌套的sei消息时,sei nal单元不应包含payloadtype不等于0、1、130、203或133的任何其他sei消息(可缩放嵌套)。
[0158]
9)为了解决第九个问题,添加一个约束,使得当sei nal单元包含payloadtype等于3(填充有效载荷)的sei消息时,sei nal单元不应包含payloadtype不等于3的任何其他sei消息。
[0159]
a.另外,在一个示例中,指定填充数据sei消息不应是可缩放嵌套的,即,不应包含在可缩放嵌套sei消息中。
[0160]
b.在一个示例中,替代地,添加一个约束,使得当sei nal单元包含payloadtype等于3(填充有效载荷)的sei消息时,sei nal单元不应包含payloadtype不等于3或133的任何其他sei消息(可缩放嵌套)。
[0161]
10)为了解决第十个问题,添加一个约束,使得当适用于特定ols的sli sei消息和bp sei消息存在于au内时,sli sei消息以解码顺序将在bp sei消息之前。
[0162]
11)为了解决第十一个问题,指定当bp_max_sublayers_minus1等于0时,跳过bp_sublayer_initial_cpb_removal_delay_present_flag(即,不在bp sei消息中信令通知)。
[0163]
a.另外,在一个示例中,当bp_max_sublayers_minus1等于0时,推断bp_sublayer_initial_cpb_removal_delay_present_flag的值等于0。
[0164]
6.实施例
[0165]
下面是本节上面总结的本发明的一些方面的一些示例实施例,其可以应用于vvc规范。更改的文本基于jvet-s0152-v5中的最新vvc文本。大多数已增加或修改的相关部分是粗体和斜体,一些删除的部分用双括号标记(例如,[[a]]表示删除字符“a”)。
[0166]
6.1.实施例1
[0167]
该实施例用于第1至11项及其一些子项。
[0168]
d.2.2通用sei有效载荷语义
[0169]
...
[0170]
列表[[vclassociated]]seilist被设置为由payloadtype值3、19、45、129、132、137、144、145、147到150(含)、153到156(含)、168、[[203]]和204组成。
[0171]
列表picunitrepconseilist被设置为由payloadtype值0、1、19、45、129、132、133、137、147到150(含)、153到156(含)、168、203和204组成。
[0172]
注意4—[[vclassociatedseilist由sei消息的payloadtype值组成,当不可缩放嵌套并包含在sei nal单元中时,这些值基于相关联的vcl nal单元的nal单元标头推断对sei nal单元的nal单元标头的约束。]]元的nal单元标头的约束。]]元的nal单元标头的约束。]]picunitrepconseilist由受限于每个pu 4次重复的sei消息的payloadtype值组成。
[0173]
比特流一致性的要求是,在sei nal单元中包含sei消息时适用以下限制:
[0174][0175]
—当sei nal单元包含payloadtype等于0(bp)、1(pt)[[或]]130(dui)或203(sli)的不可缩放嵌套的sei消息时,sei nal单元不应包含payloadtype不等于0、1[[或]]130或203的任何其他sei消息。
[0176]
—当sei nal单元包含payloadtype等于0(bp)、1(pt)[[或]]130(dui)或203(sli)的可缩放嵌套的sei消息时,sei nal单元不应包含payloadtype不等于0、1、130、203或133的任何其他sei消息(可缩放嵌套)。
[0177]
—当sei nal单元包含payloadtype等于3(填充有效载荷)的sei消息时,sei nal单元不应包含payloadtype不等于3的任何其他sei消息。
[0178]
以下适用于适用的ols或不可缩放嵌套的sei消息层:
[0179]
—对于不可缩放嵌套的sei消息,当payloadtype等于0(bp)、1(pt)、[[或]]130(dui)或203(sli)时,不可缩放嵌套的sei消息适用(dui)或203(sli)时,不可缩放嵌套的sei消息适用[[仅适用于第0个ols]]。
[0180]
—对于不可缩放嵌套的sei消息,当payloadtype等于[[vclassociated]]
seilist中的任何值时,不可缩放嵌套的sei消息适用[[仅适用于vcl nal单元的nuh_layer_id等于包含sei消息的sei nal单元的nuh_layer_id的层]]。
[0181]
比特流一致性的要求是,以下限制适用于sei nal单元的nuh_layer_id的值:
[0182]
—[[当不可缩放嵌套的sei消息的payloadtype等于0(bp)、1(pt)或130(dui)时,包含不可缩放嵌套的sei消息的sei nal单元的nuh_layer_id应等于vps_layer_id[0]。
[0183]
—当不可缩放嵌套的sei消息的payloadtype等于vclassociatedseilist中的任何值时,包含不可缩放嵌套的sei消息的sei nal单元的nuh_layer_id应等于与sei nal单元相关联的vcl nal单元的nuh_layer_id的值。]]
[0184]
—包含可缩放嵌套sei消息的sei nal单元的nuh_layer_id应等于应用可缩放嵌套的sei消息的所有层的nuh_layer_id的最低值(当可缩放嵌套sei消息的sn_ols_flag等于0时)或应用可缩放嵌套的sei消息的ols中的所有层的nuh_layer_id的最低值(当可缩放嵌套sei消息的sn_ols_flag等于1)。
[0185][0186]
比特流的一致性要求是,以下限制适用于sei消息的重复:
[0187]
—对于picunitrepconseilist中包含的每个payloadtype值,在一个pu中应该有少于或等于4个相同的sei_payload()语法结构。
[0188]
—在一个du中,payloadtype等于130的相同的sei_payload()语法结构应少于或等于4个。
[0189]
以下适用于sli、bp、pt和dui sei消息的顺序:
[0190][0191]
—当适用于特定[[op]]的bp sei消息和pt sei消息存在于au内时,bp sei消息以解码顺序应在pt sei消息之前。
[0192]
—当适用于特定[[op]]的bp sei消息和dui sei消息存在于au内时,bp sei消息以解码顺序应在dui sei消息之前。
[0193]
—当适用于特定[[op]]的pt sei消息和dui sei消息存在于au内时,pt sei消息以解码顺序应在dui sei消息之前。
[0194]
d.3.1缓冲期sei消息语法
[0195][0196]
d.3.2缓冲期sei消息语义
[0197]
...
[0198]
bp_sublayer_initial_cpb_removal_delay_present_flag等于1指定在0到bp_max_sublayers_minus1的范围内(含)的(多个)子层表示中存在初始cpb移除延迟相关的语法元素。bp_sublayer_initial_cpb_removal_delay_present_flag等于0指定第bp_max_sublayers_minus1个子层表示存在初始cpb移除延迟相关的语法元素。sublayers_minus1个子层表示存在初始cpb移除延迟相关的语法元素。
[0199]
...
[0200]
图1是示出了其中可以实施本文公开的各种技术的示例视频处理系统1900的框图。各种实施方式可以包括系统1900的部分或全部组件。系统1900可以包括用于接收视频内容的输入1902。视频内容可以以原始或未压缩格式(例如,8或10比特多分量像素值)接收,或者可以以压缩或编码格式接收。输入1902可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括有线接口,例如以太网、无源光网络(pon)等,以及无线接口,例如wi-fi或蜂窝接口。
[0201]
系统1900可以包括编解码组件1904,其可以实施本文档中描述的各种编解码或编码方法。编解码组件1904可以将视频的平均比特率从输入1902降低到编解码组件1904的输出,以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码组件1904的输出可以被存储,或者经由由组件1906表示的连接的通信来发送。组件1908可以使用在输入1902处接收的视频的存储的或通信的比特流(或编解码的)表示来生成发送到显示接口1910的像素值或可显示视频。从比特流表示生成用户可视视频的过程有时称为视频解压缩。此外,虽然某些视频处理操作被称为“编解码”操作或工具,但应理解,在编码器处使用编解码工具或操作,并且解码器将执行反转编解码的结果的相应的解码工具或操作。
[0202]
外围总线接口或显示接口的示例可包括通用串行总线(usb)或高清晰度多媒体接口(hdmi)或显示端口等。存储接口的示例包括sata(串行高级技术附件)、pci、ide接口等。本文档中描述的技术可以体现在各种电子设备中,例如移动电话、膝上型电脑、智能手机或能够执行数字数据处理和/或视频显示的其他设备。
[0203]
图2是视频处理装置3600的框图。装置3600可用于实施本文所述的一个或多个方法。装置3600可以体现在智能手机、平板电脑、计算机、物联网(iot)接收器等中。装置3600可以包括一个或多个处理器3602、一个或多个存储器3604和视频处理硬件3606。处理器3602可以被配置为实施本文档中描述的一个或多个方法。存储器3604可用于存储用于实施本文所述方法和技术的数据和代码。视频处理硬件3606可用于在硬件电路中实施本文档中描述的一些技术。
[0204]
图4是示出了可利用本公开的技术的示例视频编解码系统100的框图。
[0205]
如图4所示,视频编解码系统100可以包括源设备110和目标设备120。源设备110生成编码视频数据,源设备110可以被称为视频编码设备。目标设备120可以对源设备110生成的编码视频数据进行解码,目标设备120可以被称为视频解码设备。
[0206]
源设备110可以包括视频源112、视频编码器114和输入/输出(i/o)接口116。
[0207]
视频源112可以包括诸如视频捕获设备的源、用于从视频内容提供商接收视频数据的接口和/或用于生成视频数据的计算机图形系统,或这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括编解码图片和相关数据。编解码图片是图片的编解码表示。相关联的数据可以包括序列参数集、图片参数集和其他语法结构。i/o接口116可以包括调制器/解调器(调制解调器)和/或发送器。编码的视频数据可以通过网络130a经由i/o接口116直接发送到目标设备120。编码视频数据还可以存储在存储介质/服务器130b上,以供目标设备120访问。
[0208]
目标设备120可以包括i/o接口126、视频解码器124和显示设备122。
[0209]
i/o接口126可以包括接收器和/或调制解调器。i/o接口126可以从源设备110或存储介质/服务器130b获取编码视频数据。视频解码器124可解码编码的视频数据。显示设备122可以向用户显示解码的视频数据。显示设备122可以与目标设备120集成,或者可以在目标设备120外部,该目标设备120被配置为与外部显示设备接口。
[0210]
视频编码器114和视频解码器124可以根据视频压缩标准操作,例如高效视频编解码(hevc)标准、通用视频编解码(vvc)标准和其他当前和/或进一步的标准。
[0211]
图5是示出了可以是图4所示的系统100中的视频编码器114的视频编码器200的示例的框图。
[0212]
视频编码器200可被配置为执行本公开的任何或所有技术。在图5的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各个组件之间共享。在一些示例中,处理器可被配置为执行本公开中描述的任何或所有技术。
[0213]
视频编码器200的功能组件可以包括分割单元201、预测单元202,预测单元1602可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲区213和熵编码单元214。
[0214]
在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在一个示例中,预测单元202可以包括块内复制(ibc)单元。ibc单元可以在ibc模式下执行预测,其中至少一个参考图片是当前视频块所在的图片。
[0215]
此外,一些组件,例如运动估计单元204和运动补偿单元205可以是高度集成的,但是为了解释的目的在图5的示例中分别表示。
[0216]
分割单元201可以将图片分割成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块大小。
[0217]
模式选择单元203可以例如基于错误结果选择一种编解码模式(帧内或帧间),并将得到的帧内或帧间编码块提供给残差生成单元207以生成残差块数据,并提供给重构单元212以重构编码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测的组合(ciip)模式,其中预测基于帧间预测信号和帧内预测信号。模式选择单元203还可以在帧间预测的情况下为块选择运动矢量的分辨率(例如,子像素或整数像素精度)。
[0218]
为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲区213的一个或多个参考帧与当前视频块进行比较来生成当前视频块的运动信息。运动补偿单元205可以基于运动信息和来自缓冲区213的图片的解码样本(与当前视频块相关联的图片除
外)来确定当前视频块的预测视频块。
[0219]
例如,运动估计单元204和运动补偿单元205可以根据当前视频块是在i条带、p条带还是b条带中,对当前视频块执行不同的操作。
[0220]
在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以在列表0或列表1的参考图片中搜索当前视频块的参考视频块。然后,运动估计单元204可以生成参考索引,该参考索引指示包含参考视频块的列表0或列表1中的参考图片以及指示当前视频块和参考视频块之间的空间位移的运动矢量。运动估计单元204可以输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块生成当前块的预测视频块。
[0221]
在其他示例中,运动估计单元204可以对当前视频块执行双向预测,运动估计单元204可以在列表0中的参考图片中搜索当前视频块的参考视频块,并且还可以在列表1中的参考图片中搜索当前视频块的另一参考视频块。然后,运动估计单元204可以生成指示包含参考视频块的列表0和列表1中的参考图片的参考索引和指示参考视频块和当前视频块之间的空间位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块生成当前视频块的预测视频块。
[0222]
在一些示例中,运动估计单元204可以输出用于解码器的解码处理的运动信息的完整集合。
[0223]
在一些示例中,运动估计单元204可以不输出当前视频的运动信息的完整集合。相反,运动估计单元204可以参考另一视频块的运动信息来信令通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与相邻视频块的运动信息足够相似。
[0224]
在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示向视频解码器300指示当前视频块与另一视频块具有相同的运动信息的值。
[0225]
在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中识别另一视频块和运动矢量差(mvd)。运动矢量差指示当前视频块的运动矢量与所指示视频块的运动矢量之间的差。视频解码器300可以使用所指示视频块的运动矢量和运动矢量差来确定当前视频块的运动矢量。
[0226]
如上所述,视频编码器200可以预测地信令通知运动矢量。可由视频编码器200实施的预测信令技术的两个示例包括高级运动矢量预测(amvp)和合并模式信令。
[0227]
帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于同一图片中其他视频块的解码样本生成当前视频块的预测数据。当前视频块的预测数据可以包括预测视频块和各种语法元素。
[0228]
残差生成单元207可以通过从当前视频块减去(例如,由减号指示)当前视频块的(多个)预测视频块来生成当前视频块的残差数据。当前视频块的残差数据可以包括对应于当前视频块中的样本的不同样本分量的残差视频块。
[0229]
在其他示例中,例如在跳过模式下,对于当前视频块,可以没有当前视频块的残差数据,并且残差生成单元207可以不执行减法操作。
[0230]
变换处理单元208可以通过将一个或多个变换应用于与当前视频块相关联的残差
视频块来为当前视频块生成一个或多个变换系数视频块。
[0231]
在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(qp)值对与当前视频块相关联的变换系数视频块进行量化。
[0232]
逆量化单元210和逆变换单元211可分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重构残差视频块。重构单元212可以将重构的残差视频块添加到来自预测单元202生成的一个或多个预测视频块的对应样本中,以产生与当前块相关联的重构视频块,以存储在缓冲区213中。
[0233]
在重构单元212重构视频块之后,可以执行环路滤波操作以减少视频块中的视频块伪影。
[0234]
熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收到数据时,熵编码单元214可以执行一个或多个熵编码操作以生成熵编码数据并输出包括熵编码数据的比特流。
[0235]
图6是示出了可以是图4所示的系统100中的视频解码器114的视频解码器300的示例的框图。
[0236]
视频解码器300可被配置为执行本公开的任何或所有技术。在图5的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各个组件之间共享。在一些示例中,处理器可被配置为执行本公开中描述的任何或所有技术。
[0237]
在图6的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305、重构单元306和缓冲区307。在一些示例中,视频解码器300可以执行与关于视频编码器200(图5)描述的编码过程大体相反的解码过程。
[0238]
熵解码单元301可以检索编码比特流。编码比特流可包括熵编解码视频数据(例如,视频数据的编码块)。熵解码单元301可以解码熵编解码视频数据,并且运动补偿单元302可以从熵解码视频数据确定包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息的运动信息。例如,运动补偿单元302可以通过执行amvp和合并模式来确定这样的信息。
[0239]
运动补偿单元302可以产生运动补偿块,可能基于插值滤波器执行插值。可以在语法元素中包括以子像素精度使用的插值滤波器的标识符。
[0240]
运动补偿单元302可以使用视频编码器20在视频块编码期间使用的插值滤波器来计算参考块的子整数像素的内插值。运动补偿单元302可以根据接收到的语法信息确定视频编码器200使用的插值滤波器,并使用插值滤波器来产生预测块。
[0241]
运动补偿单元302可以使用一些语法信息来确定用于编码编码视频序列的(多个)帧和/或(多个)条带的块的大小、描述如何对编码视频序列的图片的每个宏块进行分割的分区信息、指示如何对每个分区进行编码的模式、用于每个帧间编码块的一个或多个参考帧(和参考帧列表),以及用于解码编码视频序列的其他信息。
[0242]
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空域相邻块形成预测块。逆量化单元303对在比特流中提供并由熵解码单元301解码的量化视频块系数进行逆量化(即,去量化)。逆变换单元303应用逆变换。
[0243]
重构单元306可以将残差块与由运动补偿单元202或帧内预测单元303生成的相应
预测块相加,以形成解码块。如果需要,还可以应用去块滤波器对解码块进行滤波,以去除块性伪影。解码视频块随后存储在缓冲区307中,缓冲区307为后续运动补偿/帧内预测提供参考块,并且还产生解码视频以在显示设备上呈现。
[0244]
解决方案的列表描述了所公开的技术的一些实施例。
[0245]
下面提供了第一组解决方案。以下解决方案示出了前一节(例如,第1-3项)中讨论的技术的示例实施例。
[0246]
1.一种视频处理方法(例如,图3所示的方法600),包括:执行(602)包括一个或多个视频层的视频和包括一个或多个输出层集的视频的编解码表示之间的转换,其中编解码表示符合与一个或多个语法元素是否以及如何与不可缩放嵌套的假设参考解码器(hrd)相关的补充增强信息(sei)相关有关的格式规则。
[0247]
2.根据解决方案1的方法,其中,格式规则指定与不可缩放嵌套的hrd相关sei相关的消息适用于与整个编解码表示包括相同的层集的输出层集。
[0248]
3.根据解决方案1-2中任一解决方案的方法,其中,格式规则指定在不存在与整个编解码表示具有相同的层集的输出层集的情况下省略一个或多个语法元素。
[0249]
4.根据解决方案1的方法,其中,格式规则指定一个或多个语法元素适用于编解码表示中的所有层。
[0250]
以下解决方案示出了前一节(例如,第4-10项)中讨论的技术的示例实施例。
[0251]
5.一种视频处理方法,包括:执行包括一个或多个视频层的视频和包括一个或多个输出层集的视频的编解码表示之间的转换,其中编解码表示符合与是否以及如何将一个或多个语法元素包括在补充增强信息(sei)网络抽象层(nal)单元中有关的格式规则。
[0252]
6.根据解决方案5的方法,其中,格式规则指定,在sei nal单元包括不可缩放嵌套的sei消息的情况下,层标识符的值不受约束。
[0253]
7.根据解决方案5-6中任一解决方案的方法,其中,由于在编解码表示中的所有输出层集中使用相同图片定时的信令,格式规则禁止包括包含特定有效载荷类型的可缩放嵌套的sei消息的sei nal单元。
[0254]
8.根据解决方案5-7中任一解决方案的方法,其中,格式规则指定不允许包括第一特定有效载荷类型的不可缩放嵌套的sei消息的sei nal单元包括第二特定类型的另一sei消息。
[0255]
9.根据解决方案8的方法,其中,第一特定有效载荷类型等于0、1、130或203。
[0256]
10.根据解决方案8或9的方法,其中,第二特定有效载荷类型等于0、1、130、203或133。
[0257]
11.根据解决方案8至10的方法,其中,第一特定有效载荷类型和第二特定有效载荷类型为3。
[0258]
12.根据解决方案1-11中任一解决方案的方法,其中,执行转换包括对视频进行编码以生成编解码表示。
[0259]
13.根据解决方案1-11中任一解决方案的方法,其中,执行转换包括解析和解码编解码表示以生成视频。
[0260]
14.一种视频解码装置,包括处理器,该处理器被配置为实施解决方案1至13中任一项或多项所述的方法。
[0261]
15.一种视频编码装置,包括处理器,该处理器被配置为实施解决方案1到13中任一项或多项所述的方法。
[0262]
16.一种计算机程序产品,其上存储有计算机代码,该计算机代码在由处理器执行时,使得处理器实施解决方案1至13中任一项所述的方法。
[0263]
17.一种本文档中描述的方法、装置或系统。
[0264]
第二组解决方案示出了前一节(例如,第1-5项)中讨论的技术的示例实施例。
[0265]
1.一种处理视频数据的方法(例如,如图7a所示的方法700),包括:执行702视频和视频的比特流之间的转换,其中根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定包括关于假设参考解码器hrd的信息的不可缩放嵌套的补充增强信息sei消息适用于与比特流包括相同的视频层的所有输出层集。
[0266]
2.根据解决方案1的方法,其中,不可缩放嵌套的sei消息是不包含在可缩放嵌套sei消息中的sei消息。
[0267]
3.根据解决方案1或2的方法,其中,包括关于hrd的信息的不可缩放嵌套的sei消息是缓冲期(bp)sei消息、图片定时(pt)sei消息、解码单元信息(dui)sei消息或子图片级信息(sli)sei消息。
[0268]
4.根据解决方案1或2的方法,其中,包括关于hrd的信息的不可缩放嵌套的sei消息具有等于0、1、130或203的有效载荷类型。
[0269]
5.一种处理视频数据的方法(例如,如图7b所示的方法710),包括:执行712视频和视频的比特流之间的转换,其中,根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定响应于不存在与比特流包括相同的层集的输出层集的条件而省略不可缩放嵌套的假设参考解码器(hrd)相关的补充增强信息(sei)消息。
[0270]
6.根据解决方案5的方法,其中,不可缩放嵌套的sei消息是不包含在可缩放嵌套sei消息中的sei消息。
[0271]
7.根据解决方案5或6的方法,其中,不可缩放嵌套的hrd相关的sei消息是缓冲期(bp)sei消息、图片定时(pt)sei消息、解码单元信息(dui)sei消息或子图片级信息(sli)sei消息。
[0272]
8.根据解决方案5或6的方法,其中,不可缩放嵌套的hrd相关的sei消息具有等于0、1、130或203的有效载荷类型。
[0273]
9.一种处理视频数据的方法(例如,如图7c所示的方法720),包括:执行722视频和视频的比特流之间的转换,其中根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定用于包括不可缩放嵌套的补充增强信息(sei)消息的sei网络抽象层(nal)单元的层标识符的值不受约束。
[0274]
10.根据解决方案9的方法,其中,不可缩放嵌套的sei消息是不包含在可缩放嵌套sei消息中的sei消息。
[0275]
11.根据解决方案9的方法,其中,不可缩放嵌套的sei消息是缓冲期(bp)sei消息、图片定时(pt)sei消息、解码单元信息(dui)sei消息或子图片级信息(sli)sei消息。
[0276]
12.根据解决方案9的方法,其中,不可缩放嵌套的sei消息具有等于0、1、130或203的有效载荷类型。
[0277]
13.一种处理视频数据的方法(例如,如图7d所示的方法730),包括:执行732视频和视频的比特流之间的转换,其中,根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定包括用于非假设参考解码器(hrd)相关的补充增强信息(sei)消息的允许的补充增强信息(sei)有效载荷类型值的列表中不允许对应于子图片级信息的特定有效载荷类型值。
[0278]
14.根据解决方案13的方法,其中,特定有效载荷类型值是203。
[0279]
15.根据解决方案13的方法,其中,允许的sei有效载荷类型值包括填充有效载荷、胶片颗粒特性、帧封装布置、参数集包含指示、主显示颜色量、内容光级信息、从属敲击(rap)指示、替代传输特性、周围观看环境、内容颜色量、等角投影、广义立方体贴图投影、球体旋转、区域封装、全向视口、帧场信息和样本纵横比信息。
[0280]
16.根据解决方案13的方法,其中,允许的sei有效载荷类型值包括3、19、45、129、137、144、145、147至150、153至156、168和204。
[0281]
17.一种处理视频数据的方法,包括:执行视频和视频的比特流之间的转换,其中,根据格式规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中格式规则指定包括与假设参考解码器(hrd)无关的信息的不可缩放嵌套的补充增强信息sei消息适用于比特流中的所有层。
[0282]
18.根据解决方案17的方法,其中,不可缩放嵌套的sei消息是不包含在可缩放嵌套sei消息中的sei消息。
[0283]
19.根据解决方案17或18的方法,其中,包括与hrd无关的信息的不可缩放嵌套的sei消息具有不等于0、1、130或203的有效载荷类型。
[0284]
20.根据解决方案17或18的方法,其中,包括与hrd无关的信息的不可缩放嵌套的sei消息不对应于缓冲期(bp)sei消息、图片定时(pt)sei消息、解码单元信息(dui)sei消息或子图片级信息(sli)sei消息。
[0285]
21.根据解决方案1至20中任一项的方法,其中,转换包括将视频编码为比特流。
[0286]
22.根据解决方案1至20中任一项的方法,其中,转换包括从比特流解码视频。
[0287]
23.根据解决方案1至20中任一项的方法,其中,转换包括从视频生成比特流,并且方法还包括:将比特流存储在非暂时性计算机可读记录介质中。
[0288]
24.一种视频处理装置,包括处理器,该处理器被配置为实施解决方案1到23中任一项或多项所述的方法。
[0289]
25.一种存储视频的比特流的方法,包括解决方案1至23中任一项所述的方法,并且还包括将比特流存储到非暂时性计算机可读记录介质。
[0290]
26.一种存储程序代码的计算机可读介质,该程序代码在被执行时,使处理器实施解决方案1至23中任一项或多项所述的方法。
[0291]
27.一种计算机可读介质,存储根据上述任一方法生成的比特流。
[0292]
28.一种用于存储比特流的视频处理装置,其中,该视频处理装置被配置为实施解决方案1至23中任一项或多项所述的方法。
[0293]
第三组解决方案示出了前一节(例如,第6项)中讨论的技术的示例实施例。
[0294]
1.一种处理视频数据的方法(例如,如图8所示的方法800),包括:根据规则执行802视频和包括一个或多个输出层集的视频的比特流之间的转换,其中规则指定由于在比
特流中的所有输出层集中使用相同的图片定时,因此不包括包含携带图片定时信息的可缩放嵌套的补充增强信息(sei)消息的sei网络抽象层(nal)单元。
[0295]
2.根据解决方案1的方法,其中,可缩放嵌套的sei消息是包含在可缩放嵌套sei消息中的sei消息。
[0296]
3.根据解决方案1或2的方法,其中,携带图片定时信息的可缩放嵌套的sei消息对应于图片定时(pt)sei消息。
[0297]
4.根据解决方案1的方法,其中,携带图片定时信息的可缩放嵌套的sei消息具有等于1的有效载荷类型。
[0298]
5.根据解决方案1至4中任一项的方法,其中,规则还指定携带图片定时信息的不可缩放嵌套的sei消息适用于允许从比特流中提取的所有输出层集和子图片序列。
[0299]
6.根据解决方案5的方法,其中,不可缩放嵌套的sei消息是不包含在可缩放嵌套sei消息中的sei消息。
[0300]
7.根据解决方案1至4中任一解决方案的方法,其中,规则还指定,在语法字段具有指定适用于特定输出层集或层的可缩放嵌套的sei消息适用于指定输出层集或层的所有子图片的值的情况下,不包括包含携带图片定时信息的可缩放嵌套的sei消息的sei nal单元。
[0301]
8.根据解决方案1至7中任一项的方法,其中,转换包括将视频编码为比特流。
[0302]
9.根据解决方案1至7中任一项的方法,其中,转换包括从比特流解码视频。
[0303]
10.根据解决方案1至7中任一项的方法,其中,转换包括从视频生成比特流,并且方法还包括:将比特流存储在非暂时性计算机可读记录介质中。
[0304]
11.一种视频处理装置,包括处理器,该处理器被配置为实施解决方案1到10中任一项或多项所述的方法。
[0305]
12.一种存储视频的比特流的方法,包括解决方案1至10中任一项所述的方法,并且还包括将比特流存储到非暂时性计算机可读记录介质。
[0306]
13.一种存储程序代码的计算机可读介质,该程序代码在被执行时,使处理器实施解决方案1至10中任一项或多项所述的方法。
[0307]
14.一种计算机可读介质,存储根据上述任一方法生成的比特流。
[0308]
15.一种用于存储比特流的视频处理装置,其中,该视频处理装置被配置为实施解决方案1至10中任一项或多项所述的方法。
[0309]
第四组解决方案示出了前一节(例如,第7-9项)中讨论的技术的示例实施例。
[0310]
1.一种处理视频数据的方法(例如,如图9a所示的方法900),包括:执行902视频和视频的比特流之间的转换,其中,根据规则比特流包括一个或多个补充增强信息sei网络抽象层(nal)单元,其中规则指定,响应于sei nal单元包括第一有效载荷类型的不可缩放嵌套的sei消息,不允许sei nal单元包括第二有效载荷类型的另一sei消息。
[0311]
2.根据解决方案1的方法,其中,不可缩放嵌套的sei消息是不包含在可缩放嵌套sei消息中的sei消息。
[0312]
3.根据解决方案1或2的方法,其中,第一有效载荷类型的不可缩放嵌套的sei消息对应于缓冲期(bp)sei消息、图片定时(pt)sei消息、解码单元信息(dui)sei消息或子图片级信息(sli)sei消息。
[0313]
4.根据解决方案1或2的方法,其中,第一有效载荷类型等于0、1、130或203。
[0314]
5.根据解决方案1至4中任一项的方法,其中,第二有效载荷类型的不可缩放嵌套的sei消息不对应于缓冲期(bp)sei消息、图片定时(pt)sei消息、解码单元信息(dui)sei消息和子图片级信息(sli)sei消息中的任何一个。
[0315]
6.根据解决方案1至4中任一项的方法,其中,第二有效载荷类型不等于0、1、130和203中的任何一个。
[0316]
7.一种处理视频数据的方法(例如,如图9b所示的方法910),包括:根据规则执行912视频和视频的比特流之间的转换,其中根据规则比特流包括一个或多个补充增强信息sei网络抽象层(nal)单元,其中规则指定,响应于sei nal单元包括第一有效载荷类型的可缩放嵌套的sei消息,不允许sei nal单元包括第二有效载荷类型的另一sei消息。
[0317]
8.根据解决方案7的方法,其中,可缩放嵌套的sei消息是包含在可缩放嵌套sei消息中的sei消息。
[0318]
9.根据解决方案7或8的方法,其中,第一有效载荷类型的可缩放嵌套的sei消息对应于缓冲期(bp)sei消息、图片定时(pt)sei消息、解码单元信息(dui)sei消息或子图片级信息(sli)sei消息。
[0319]
10.根据解决方案7或8的方法,其中,第一有效载荷类型等于0、1、130或203。
[0320]
11.根据解决方案7至10中任一项的方法,其中,第二有效载荷类型的可缩放嵌套的sei消息不对应于缓冲期(bp)sei消息、图片定时(pt)sei消息、解码单元信息(dui)sei消息、子图片级信息(sli)sei消息和可缩放嵌套信息sei消息中的任何一个。
[0321]
12.根据解决方案7至10中任一项的方法,其中,第二有效载荷类型不等于0、1、130、203和133中的任何一个。
[0322]
13.一种处理视频数据的方法(例如,如图9c所示的方法920),包括:执行922视频和视频的比特流之间的转换,其中根据规则比特流包括一个或多个补充增强信息sei网络抽象层(nal)单元,其中规则指定,响应于sei nal单元包括第一有效载荷类型的sei消息,不允许sei nal单元包括不等于第一有效载荷类型或第二有效载荷类型的另一sei消息。
[0323]
14.根据解决方案13的方法,其中,第一有效载荷类型的sei消息对应于填充有效载荷sei消息。
[0324]
15.根据解决方案13或14的方法,其中,第一有效载荷类型等于3。
[0325]
16.根据解决方案13至15中任一项的方法,其中,规则还指定不允许将第一有效载荷类型的sei消息包含在可缩放嵌套sei消息中。
[0326]
17.根据解决方案13至16中任一项的方法,其中,规则还指定第二有效载荷类型的sei消息是可缩放嵌套sei消息。
[0327]
18.根据解决方案13至16中任一项的方法,其中,第二有效载荷类型等于133。
[0328]
19.根据解决方案1至18中任一项的方法,其中,转换包括将视频编码为比特流。
[0329]
20.根据解决方案1至18中任一项的方法,其中,转换包括从比特流解码视频。
[0330]
21.根据解决方案1至18中任一项的方法,其中,转换包括从视频生成比特流,并且方法还包括:将比特流存储在非暂时性计算机可读记录介质中。
[0331]
22.一种视频处理装置,包括处理器,该处理器被配置为实施解决方案1到21中任一项或多项所述的方法。
[0332]
23.一种存储视频的比特流的方法,包括解决方案1至21中任一项的方法,并且还包括将比特流存储到非暂时性计算机可读记录介质。
[0333]
24.一种存储程序代码的计算机可读介质,该程序代码在被执行时,使处理器实施解决方案1至21中任一项或多项所述的方法。
[0334]
25.一种计算机可读介质,存储根据上述任一方法生成的比特流。
[0335]
26.一种用于存储比特流的视频处理装置,其中,该视频处理装置被配置为实施解决方案1至21中任一项或多项所述的方法。
[0336]
第五组解决方案示出了前一节(例如,第10和11项)中讨论的技术的示例实施例。
[0337]
1.一种处理视频数据(例如,如图10a所示的方法1000),包括:执行1002视频和视频的比特流之间的转换,其中根据规则比特流包括一个或多个输出层集,该输出层集包括一个或多个视频层,其中响应于子图片级信息(sli)补充增强信息(sei)消息和缓冲期(bp)sei消息被包括在访问单元中的条件,规则指定适用于特定输出层集的sli sei消息和bp sei消息之间的特定解码顺序。
[0338]
2.根据解决方案1的方法,其中,特定解码顺序是sli sei消息在bp sei消息之前。
[0339]
3.一种处理视频数据的方法(例如,如图10b所示的方法1010),包括:根据规则执行1012视频和视频的比特流之间的转换,其中,响应于指示在缓冲期补充增强信息(sei)消息中指示初始编解码图片缓冲区(cpb)移除延迟的时间子层的最大数量的第二语法字段的特定值,规则指定省略指示存在初始cpb移除延迟相关的语法元素的子层表示信息的第一语法字段。
[0340]
4.根据解决方案3的方法,其中特定值是0。
[0341]
5.根据解决方案3或4的方法,其中,具有特定值的第二语法字段指定时间子层的最大数量为1。
[0342]
6.根据解决方案3至5中任一项的方法,其中,等于另一特定值的第一语法字段指定初始cpb移除延迟相关的语法元素存在于在0到第二语法字段(含)的范围内的子层表示。
[0343]
7.根据解决方案6的方法,其中,另一特定值是1。
[0344]
8.根据解决方案3至7中任一项的方法,其中,等于另一特定值的语法字段指定初始cpb移除延迟相关的语法元素存在于对应于第二语法字段的特定值的子层表示。
[0345]
9.根据解决方案8的方法,其中,另一特定值是0。
[0346]
10.根据解决方案3至9中任一项的方法,其中,规则还指定响应于第二语法字段的特定值推断第一语法字段的值等于0。
[0347]
11.根据解决方案1至10中任一项的方法,其中,转换包括将视频编码为比特流。
[0348]
12.根据解决方案1至10中任一项的方法,其中,转换包括从比特流解码视频。
[0349]
13.根据解决方案1至10中任一项的方法,其中,转换包括从视频生成比特流,并且方法还包括:将比特流存储在非暂时性计算机可读记录介质中。
[0350]
14.一种视频处理装置,包括处理器,该处理器被配置为实施解决方案1到13中任一项或多项所述的方法。
[0351]
15.一种存储视频的比特流的方法,包括解决方案1至13中任一项所述的方法,并且还包括将比特流存储到非暂时性计算机可读记录介质。
[0352]
16.一种存储程序代码的计算机可读介质,该程序代码在被执行时,使处理器实施
解决方案1至13中任一项或多项所述的方法。
[0353]
17.一种计算机可读介质,存储根据上述任一方法生成的比特流。
[0354]
18.一种用于存储比特流的视频处理装置,其中,该视频处理装置被配置为实施解决方案1至13中任一项或多项所述的方法。
[0355]
本文档中描述的公开和其他解决方案、示例、实施例、模块和功能操作可在数字电子电路中或在计算机软件、固件或硬件(包括本文档中公开的结构及其结构等效物,或以它们中的一种或多种的组合)中实施。所公开的实施例和其他实施例可以实施为一个或多个计算机程序产品,即,编码在计算机可读介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制其操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储设备、影响机器可读传播信号的物质的组合物,或者它们中的一个或多个的组合。术语“数据处理装置”包括用于处理数据的所有装置、设备和机器,例如包括可编程处理器、计算机或多个处理器或计算机。除了硬件之外,装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。传播信号是人为生成的信号,例如,机器生成的电、光或电磁信号,其生成用于编码信息以传输到合适的接收器装置。
[0356]
计算机程序(也称为程序、软件、软件应用程序、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程,或其他适合在计算环境中使用的单元。计算机程序不一定与文件系统中的文件相对应。程序可以存储在保存其他程序或数据(例如,标记语言文档中存储的一个或多个脚本)的文件的一部分、专用于所讨论的程序的单个文件或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以部署在一台计算机上执行或者部署在位于一个站点或分布在多个站点并通过通信网络互连的多台计算机上执行。
[0357]
本文档中描述的过程和逻辑流可由一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序,通过操作输入数据和生成输出来执行功能。处理和逻辑流还可以由专用逻辑电路执行,并且装置也可以实现为专用逻辑电路,例如fpga(现场可编程门阵列)或asic(专用集成电路)。
[0358]
例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是执行指令的处理器和存储指令和数据的一个或多个存储设备。通常,计算机还将包括或操作地耦合以从用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘)接收数据或向其传输数据或两者。然而,计算机不需要具有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如eprom、eeprom和闪存设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及cd-rom及dvd-rom盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。
[0359]
尽管本专利文档包含许多细节,但这些细节不应被解释为对任何主题或可能要求保护的内容的范围的限制,而是对可能特定于特定技术的特定实施例的特征的描述。本专利文档中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个
实施例中实施。此外,尽管上述特征可以被描述为在某些组合中起作用,甚至最初被声称为这样,但在一些情况下,可以从组合中删除来自所声称的组合的一个或多个特征,并且所声称的组合可以被定向到子组合或子组合的变体。
[0360]
类似地,虽然在附图中以特定顺序描述操作,但这不应理解为要求以所示的特定顺序或顺序执行此类操作,或要求执行所有图示操作以实现期望结果。此外,本专利文档中描述的实施例中的各种系统组件的分离不应理解为在所有实施例中都需要这种分离。
[0361]
仅描述了一些实施方式和示例,并且可以基于本专利文档中描述和说明的内容来进行其他实施方式、增强和变化。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1