一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

VVC图像项目中包括的图片和层的制作方法

2022-03-19 21:03:36 来源:中国专利 TAG:

vvc图像项目中包括的图片和层
1.相关申请的交叉引用
2.根据适用的专利法和/或依据巴黎公约的规则,本技术及时要求于2020年9月2日提交的美国临时专利申请no.63/073,829的优先权和利益。出于根据该法律的所有目的,将前述申请的全部公开内容以引用方式并入本文,以作为本技术公开内容的部分。
技术领域
3.本专利文档涉及图像和视频编解码和解码。


背景技术:

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


技术实现要素:

5.本文档公开了可以由视频编码器和解码器用于根据文件格式处理视频或图像的编解码表示的技术。
6.在一个示例方面,一种处理图像数据的方法包括执行在视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括一个或多个图片的序列,并且根据视频编解码格式,比特流包括一个或多个访问单元。根据视频编解码格式编解码比特流。媒体文件格式规定视觉媒体文件中特定类型值的图像项目包括比特流的单个访问单元。单个访问单元是根据视频编解码格式的帧内随机访问图片(intra random access picture,irap)访问单元,或者是根据视频编解码格式的渐进解码刷新(gradual decoding refresh,gdr)访问单元。gdr访问单元中的所有图片被标识为比特流中的恢复点。在另一示例方面,一种处理图像数据的方法包括执行视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括的一个或多个图片的序列,并且根据视频编解码格式,比特流包括一个或多个访问单元。根据视频编解码格式编解码比特流。媒体文件格式规定视觉媒体文件中特定类型值的图像项目不包括不属于目标输出层集的层。
7.在另一示例方面,一种处理图像数据的方法包括执行视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括一个或多个图片的序列,并且根据视频编解码格式,比特流包括的一个或多个访问单元。根据视频编解码格式编解码比特流。媒体文件格式规定视觉媒体文件中特定类型值的图像项目包括其中图片包括一个或多个子图片的访问单元的至少一部分。
8.在另一示例方面,一种处理图像数据的方法包括执行在视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括图像项目,每个图像项目包括一个或多个图片的序列,并且根据视频编解码格式,比特流包括访问单元,每个访问单元包括一个或多个图片,每个图片属于层。媒体文件格式规定包括源自比特流的图片的图像项目被允许与属性描述符的不同实例相关联,该属性描述符指示比特流的高级特性。
9.在另一示例方面,一种处理图像数据的方法包括执行在视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括图像项目,每个图像项目包括一个或多个图片的序列,并且根据视频编解码格式,比特流包括访问单元,每个访问单元包括一个或多个图片,每个图片属于层。媒体文件格式规定,响应于操作点的记录被包括在操作点的属性描述符中,该属性描述符指示比特流的高级特性,则记录中的第一语法元素的值或记录中的第二语法元素的值中的至少一个被约束为预定值。
10.在一个示例方面,公开了一种视频处理方法。该方法包括根据文件格式执行在包括一个或多个图像序列的视觉媒体和比特流表示之间的转换;其中,该文件格式被配置为包括一个或多个语法元素,该语法元素指示在一个或多个图像的显示期间一个或多个图像之间的过渡属性。
11.在另一个示例方面,公开了另一种视频处理方法。该方法包括根据文件格式,执行在包括一个或多个图像序列的视觉媒体和比特流表示之间的转换;其中,该文件格式规定在视觉媒体被表示在具有特定文件标签的文件中的情况下,根据规则限制该文件格式。
12.在另一个示例方面,公开了另一种视频处理方法。该方法包括根据文件格式,执行在包括一个或多个图像序列的视觉媒体和比特流表示之间的转换;其中,该文件格式被配置为根据规则指示一个或多个图像的图像类型。
13.在又一示例方面,公开了一种视频编码器装置。视频编码器包括被配置为实施上述方法的处理器。
14.在又一示例方面,公开了一种视频解码器装置。视频解码器包括被配置为实施上述方法的处理器。
15.在又一示例方面,公开了一种其上存储有代码的计算机可读介质。该代码以处理器可执行代码的形式体现了本文描述的方法之一。
16.在又一示例方面,公开了一种其上存储有比特流的计算机可读介质。使用本文档中描述的方法生成比特流。
17.本文档通篇描述了这些和其他特征。
附图说明
18.图1是示例视频处理系统的框图。
19.图2是视频处理装置的框图。
20.图3是视频处理的示例方法的流程图。
21.图4是示出根据本公开的一些实施例的视频编解码系统的框图。
22.图5是示出根据本公开的一些实施例的编码器的框图。
23.图6是示出根据本公开的一些实施例的解码器的框图。
24.图7示出了编码器框图的示例。
25.图8是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。
26.图9是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。
27.图10是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。
28.图11是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。
29.图12是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。
具体实施方式
30.为了便于理解,在本文档中使用了章节标题,并且不将每个章节中公开的技术和实施例的适用性仅限于该章节。此外,在一些描述中使用h.266术语仅仅是为了便于理解,而不是为了限制所公开技术的范围。如此,本文描述的技术也适用于其他视频编解码器协议和设计。在本文档中,相对于vvc规范的当前草案,对文本的编辑更改以删除线显示,指示删除的文本,并且突出显示(包括粗体斜体)指示增加的文本。
31.1.概述
32.本文档与图像文件格式相关。具体地,它与基于iso基本媒体文件格式的媒体文件中的图像和图像过渡的信令和存储有关。这些思想可以单独或以各种组合方式应用于由任何编解码器编解码的图像,例如通用视频编解码(versatile video coding,vvc)标准,以及用于任何图像文件格式,例如正在开发的vvc图像文件格式。
33.2.缩写
34.au(access unit)访问单元
35.aud(access unit delimiter)访问单元分隔符
36.avc(advanced video coding)高级视频编解码
37.bp(buffering period)缓冲期
38.clvs(coded layer video sequence)编解码层视频序列
39.clvss(coded layer video sequence start)编解码层视频序列开始
40.cpb(coded picture buffer)编解码图片缓冲器
41.cra(clean random access)干净随机访问
42.ctu(coding tree unit)编解码树单元
43.cvs(coded video sequence)编解码视频序列
44.dci(decoding capability information)解码能力信息
45.dpb(decoded picture buffer)解码图片缓冲器
46.dui(decoding unit information)解码单元信息
47.eob(end of bitstream)比特流的结束
48.eos(end of sequence)序列的结束
49.gdr(gradual decoding refresh)渐进解码刷新
50.hevc(high efficiency video coding)高效视频编解码
51.hrd(hypothetical reference decoder)假想参考解码器
52.idr(instantaneous decoding refresh)即时解码刷新
53.ilp(inter-layer prediction)层间预测
54.ilpr(inter-layer reference picture)层间参考图片
55.irap(intra random access picture)帧内随机访问图片
56.jem(joint exploration model)联合探索模型
57.ltrp(long-term reference picture)长期参考图片
58.mcts(motion-constrained tile sets)运动约束的片集合
59.nal(network abstraction layer)网络抽象层
60.ols(output layer set)输出层集合
61.ph(picture header)图片标头
62.poc(picture order count)图片顺序计数
63.pps(picture parameter set)图片参数集
64.pt(picture timing)图片定时
65.ptl(profile,tier and level)档次、层和级别
66.pu(picture unit)图片单元
67.rap(random access point)随机访问点
68.rbsp(raw byte sequence payload)原始字节序列负荷
69.sei(supplemental enhancement information)补充增强信息
70.sli(subpicture level information)子图片级别信息
71.sps(sequence parameter set)序列参数集
72.strp(short-term reference picture)短期参考图片
73.svc(scalable video coding)可缩放视频编解码
74.vcl(video coding layer)视频编解码层
75.vps(video parameter set)视频参数集
76.vtm(vvc test model)vvc测试模型
77.vui(video usability information)视频可用性信息
78.vvc(versatile video coding)通用视频编解码
79.3.初步讨论
80.3.1.视频编解码标准
81.视频编解码标准主要通过众所周知的itu-t和iso/iec标准的发展而演变。itu-t产生了h.261和h.263,iso/iec产生了mpeg-1和mpeg-4视频,并且这两个组织联合产生了h.262/mpeg-2视频和h.264/mpeg-4高级视频编解码(avc)和h.265/hevc标准。自h.262以来,视频编解码标准基于混合视频编解码结构,其中利用了时域预测加变换编解码。为了探索hevc以外的未来视频编解码技术,vceg和mpeg于2015年联合成立了联合视频探索团队(joint video exploration team,jvet)。此后,许多新的方法被jvet采用,并被放入名为联合探索模型(jem)的参考软件中。当多功能视频编解码(vvc)项目正式启动时,jvet后来被更名为联合视频专家小组(joint video experts team,jvet)。vvc是新的编解码标准,目标是与hevc相比降低50%的比特率,该标准已由jvet在2020年7月1日结束的第19次会议上最终确定。
82.通用视频编解码(vvc)标准(itu-t h.266|iso/iec 23090-3)和相关的通用补充增强信息(versatile supplemental enhancement information,vsei)标准(itu-t h.274|iso/iec 23002-7)已被设计用于最大范围的应用,包括传统用途,诸如电视广播、视频会议或从存储媒体回放,以及更新和更高级的用途,诸如自适应比特率流、视频区域提取、从多个编解码视频比特流的内容合成和内容合并、多视图视频、可缩放分层编解码和视口自适应360
°
沉浸式媒体。
83.3.2.文件格式标准
84.媒体流应用程序通常基于ip、tcp和http传输方法,并且通常依赖于诸如iso基本媒体文件格式(isobmff)的文件格式。一种这样的流系统是基于http的动态自适应流
(dash)。为了将视频格式与isobmff和dash一起使用,需要一个特定于视频格式(诸如avc文件格式和hevc文件格式)的文件格式规范,用于将视频内容封装在isobmff轨道以及dash表示和片段中。关于视频比特流的重要信息(例如档次、层和级别以及许多其他信息)需要作为文件格式级别元数据和/或dash媒体呈现描述(media presentation description,mpd)来展示,用于内容选择目的,例如用于选择合适的媒体片段,以及用于在流会话开始时的初始化和流会话期间的流适配两者。
85.类似地,对于使用具有isobmff的图像格式,可能需要特定于图像格式的文件格式规范,诸如avc图像文件格式和hevc图像文件格式。
86.3.3.vvc视频文件格式
87.vvc视频文件格式,基于isobmff的vvc视频内容存储的文件格式,目前正由mpeg开发。
88.3.4.vvc图像文件格式和图像过渡
89.基于isobmff的vvc图像文件格式,即用于存储使用vvc编解码的图像内容的文件格式,目前正由mpeg开发。
90.在某些情况下,包括幻灯片信令通知的设计,支持图像过渡效果,如擦除、缩放、渐变、分割和溶解。在过渡效果属性结构中信令通知过渡效果,过渡效果与过渡中涉及的两个连续项目中的第一个项目相关联,指示过渡类型,并且在适用时可能信令通知其他过渡信息,诸如过渡方向和过渡形状。
91.4.由公开的技术解决方案解决的技术问题的示例
92.vvc图像文件格式和图像过渡效果的信令的最新设计存在以下问题:
93.1)在基于幻灯片或其他类型的图像的应用程序中,涉及从一个图像到另一个图像的过渡效果,尽管过渡的时间段通常不需要精确,但为了良好的用户体验,过渡时间段不应该太长,也不应该太短。最佳过渡期取决于内容和过渡类型。因此,从使用体验的角度来看,信令通知推荐的过渡期是有帮助的,其中推荐值由内容创建者确定。
94.2)在最新的vvc图像文件格式草案规范中,规定的vvc图像项目类型和文件标签允许图像项目的vvc比特流包括访问单元,访问单元包括多层的多个图片,其中,图片中的一些可以是帧间编解码的,即,包括如vvc所规定的使用层间预测的预测b条带或p条带。换句话说,无论是通过图像项目类型还是文件标签,都缺乏互操作点,其中图像项目只能包括一个帧内编解码的图片(即,仅包括帧内编解码的i条带)。在vvc标准本身中,这种互操作点是通过两个静态图片档次的定义提供的,即主10静态图片档次和主10 4:4:4静态图片档次。
95.3)类型为“vvc1”的项目规定如下:
[0096]“vvc1”类型的项目由vvc比特流的nal单元组成,这些单元按照下面的规定进行长度分隔,并且比特流恰好包括一个访问单元。
[0097]
注意2“vvc1”类型的项目可能由iso/iec 23090-3中定义的irap访问单元组成,可以包括一个以上的编解码图片,并且最多包括一个具有nuh_layer_id的任意特定值的编解码图片。
[0098]
然而,不是任何访问单元都可以是这种图像项目中的访问单元。因此,上述注意2的第一部分应移到基本定义(即上面引用的第一句),并应添加gdr访问单元的缺失部分。
[0099]
4)存在以下语句:
[0100]“vvc1”图像项目应包括由相关联的targetolsproperty标识的层集中包括的层,也可以包括其他层。
[0101]
如果考虑到除了所标识的ols中包括的层以外的其他层,那么应用系统中的哪个实体应该在关联的targetolsproperty中设置正确的目标ols索引值?因为在任何情况下,该值都需要正确设置,例如由文件编写者正确设置,丢弃不必要层中的不必要图片也是文件编写者的简单操作,因此完全不允许不必要层中的不必要图片是有意义的。
[0102]
5)存在以下约束:
[0103]
源自同一比特流的图像项目应与同一vvcoperatingpointsinformationproperty相关联。
[0104]
然而,vvc比特流可以包括可能具有不同操作点的多个cvs。
[0105]
6)在下面的文本中,vvcoperatingpointsrecord的一些其他语法元素的值,例如ptl_max_temporal_id[i](在第i个profile_tier_level()语法结构中存在级别信息的最高子层表示的时域id)和op_max_temporal_id,也应该受到约束:
[0106]
当vvcoperatingpointsrecord的语法元素被包括在vvcoperatingpointsinformationproperty中时,vvcoperatingpointsrecord的语法元素的值被约束如下:
[0107]
frame_rate_info_flag应等于0。因此,avgframerate和constantframerate不存在,并且也没有规定它们的语义。
[0108]
bit_rate_info_flag应等于0。因此,maxbitrate和avgbitrate不存在,并且也没有规定它们的语义。
[0109]
7)存在以下文本:
[0110]
如果vvc子图片项目适合用vvc解码器解码,并且在没有其他vvc子图片项目的情况下消耗,则vvc子图片项目应作为“vvc1”类型的项目存储。否则,vvc子图片项目应存储为“vvs1”类型的项目,并按照l.2.2.1.2中的定义,vvc子图片项目应格式化为一系列前面有长度字段的nal单元。
[0111]
这样存在以下问题:
[0112]
a)这个条件不够清楚,不能作为一致性要求的条件(例如,当考虑如何检查该要求是否满足时),因此需要澄清。
[0113]
b)类型

vvc1’的图像项目的使用不完全符合先前的定义,即比特流仅包括一个vvc访问单元,因为这里类型

vvc1’的图像项目的比特流可以仅包括vvc访问单元的子集。
[0114]
c)不清楚是否允许有一个vvc图像项目,比如类型为“vvc1”的项目,该项目包括包括多个“可提取”子图片的图片。
[0115]
8)以下说明不包括opi nal单元:
[0116]
vps、dci、sps、pps、aud、ph、eos和eob nal单元应在项目和

vvs 1’项目的样点两者中不存在。
[0117]
然而,在本文中,操作点信息(opi)nal单元应类似地处理。
[0118]
9)对于给定图像或给定图像内的区域,仅允许一种过渡效果(例如,缩放、旋转)。然而,在实际应用中,多个效果可以应用于一个图像或给定图像内的一个区域。
[0119]
5.示例实施例和解决方案
[0120]
为了解决上述问题和其他问题,公开了如下概述的方法。这些项目应被视为解释
一般概念的示例,不应作狭义解释。此外,这些项目可以单独地应用或以任何方式组合地应用。
[0121]
1)为了解决问题1,为从一个图像到另一个图像的过渡,可以信令通知推荐的过渡期。
[0122]
a)在一个示例中,可替换地,为从一个图像到另一个图像的过渡,信令通知强制的过渡期。
[0123]
b)在一个示例中,信令通知的值的值,推荐的过渡期或强制的过渡期,由内容创建者确定。
[0124]
c)在一个示例中,为每个过渡属性,信令通知一个过渡期。
[0125]
d)在一个示例中,为每种类型的过渡,信令通知一个过渡期。
[0126]
e)在一个示例中,为过渡属性列表,信令通知一个过渡期。
[0127]
f)在一个示例中,为过渡类型列表,信令通知一个过渡期。
[0128]
g)在一个示例中,为所有过渡,信令通知一个过渡期。
[0129]
2)为了解决问题2,定义一个或多个文件标签,使得包括在符合这种标签的图像项目中的vvc比特流需要仅包括一个访问单元,该访问单元仅包括一个帧内编解码的图片(或其一部分)。
[0130]
a.可替换地,定义一个或多个文件标签,使得包括在符合这种标签的图像项目中的vvc比特流需要仅包括一个访问单元,该访问单元仅包括帧内/ibc/调色板编解码的一个图片(或其一部分)。
[0131]
i.可替换地,定义一个或多个文件标签,使得包括在符合这种标签的图像项目中的vvc比特流需要仅包括一个访问单元,该访问单元仅包括一个i图片(或其一部分)。
[0132]
b.在一个示例中,这种文件标签的值被规定为

vvic
’‘
、vvi1
’‘
、vvi2’。
[0133]
c.附加地,在一个示例中,包括在这种图像项目中的vvc比特流需要符合主10静止图片档次、主10 4:4:4静止图片档次、主10档次、主10 4:4:4档次、多层主10档次或多层主10 4:4:4档次。
[0134]
i.可替换地,附加地,包括在这种图像项目中的vvc比特流需要符合主10静止图片档次、主10 4:4:4静止图片档次、主10档次或主10 4:4:4档次。
[0135]
ii.可替换地,附加地,包括在这种图像项目中的vvc比特流需要符合主10静止图片档次或主10 4:4:4静止图片档次。
[0136]
d.在一个示例中,可以规定符合这种标签的图像项目不应该具有以下属性中的任何一个:目标输出层集属性(targetolsproperty)、vvc操作点信息属性(vvcoperatingpointsinformationproperty)。
[0137]
3)为了解决问题2,定义了一个或多个图像项目类型,使得包括在这种类型的图像项目中的vvc比特流仅包括一个访问单元,该访问单元仅包括帧内编解码的图片。
[0138]
a.可替换地,定义一个或多个图像项目类型,使得包括在这种类型的图像项目中的vvc比特流仅包括一个访问单元,该访问单元仅包括帧内/调色板/ibc编解码的图片。
[0139]
i.可替换地,定义一个或多个图像项目类型,使得包括在这种类型的图像项目中的vvc比特流仅包括一个访问单元,该访问单元仅包括i图片。
[0140]
b.在一个示例中,这种图像项目类型的类型值被规定为“vvc1”或“vvc2”。
[0141]
c.在一个示例中,附加地,这种图像项目中的比特流需要符合主10静止图片档次、主10 4:4:4静止图片档次、主10档次、主10 4:4:4档次、多层主10档次或多层主10 4:4:4档次。
[0142]
i.可替换地,附加地,这种图像项目中的比特流需要符合主10静止图片档次、主10 4:4:4静止图片档次、主10档次或主10 4:4:4档次。
[0143]
ii.可替换地,附加地,这种图像项目中的比特流需要符合主10静止图片档次或主10 4:4:4静止图片档次。
[0144]
d.在一个示例中,可以规定这种类型的图像项目不应该具有以下属性中的任何一个:目标输出层集属性(targetolsproperty)、vvc操作点信息属性(vvcoperatingpointsinformationproperty)。
[0145]
4)为了解决问题3,例如“vvc1”类型的vvc图像项目被定义为由vvc比特流的nal单元组成,该比特流恰好包括一个访问单元,该访问单元是iso/iec 23090-3中定义的irap访问单元或gdr访问单元,其中所有图片的ph_recovery_poc_cnt等于0,如iso/iec 23090-3中定义的。
[0146]
5)为了解决问题4,对于例如“vvc1”类型的vvc图像项目,不允许包括在不属于目标输出层集的层中的图片。
[0147]
6)为了解决问题5,对于源自相同比特流的图像项目,允许与vvcoperatingpointsinformationproperty的不同实例相关联。
[0148]
7)为了解决问题6,当vvcoperatingpointsrecord被包括在vvcoperatingpointsinformationproperty中时,vvcoperatingpointsrecord的语法元素ptl_max_temporal_id[i]和op_max_temporal_id被约束为某些值。
[0149]
8)为了解决问题7,可以规定对于例如“vvc1”类型的vvc图像项目,允许以下任一项:
[0150]
a.包括整个vvc访问单元,其中,每个图片可以包括多个“可提取的”子图片。
[0151]
b.包括vvc访问单元的子集,其中,对于比特流中存在的每一层,存在共同形成矩形区域的一个或多个“可提取”子图片。
[0152]
其中“可提取”子图片是指在vvc中规定的对应标志sps_subpic_treated_as_pic_flag[i]等于1的子图片。
[0153]
9)为了解决问题8,可以规定opi nal单元在项目和“vvs1”项目的样点中都不存在。
[0154]
10)为了解决问题9,提出允许在幻灯片中从一个图像(或其区域)到另一个图像(或其区域)的多个过渡效果。
[0155]
a.在一个示例中,例如,通过使多个过渡效果属性结构与两个连续图像项目中的第一个图像项目相关联,可以信令通知多个过渡效果的指示。
[0156]
b.在一个示例中,可以在文件中信令通知要应用于两个连续图像项目的过渡效果的数量的指示。
[0157]
c.可替换地,此外,可以在文件中信令通知、或者预先定义、或即时推导如何应用多个过渡效果。
[0158]
i.在一个示例中,可以在文件中信令通知应用多个过渡效果的顺序。
[0159]
ii.在一个示例中,应用多个过渡效果的顺序可以根据比特流中多个效果的指示顺序来推导。
[0160]
11)为了解决问题9,提出允许幻灯片中从一个图像到另一个图像的多个过渡效果,其中,多个过渡效果中的每一个应用于过渡中涉及的两个图像项目中的特定区域。
[0161]
a.在一个示例中,在过渡效果应用到的过渡中涉及的两个图像项目中的特定区域在过渡效果属性中信令通知。
[0162]
12)为了解决问题9,提出允许为一对连续的图像项目信令通知多个可替换的过渡效果,并且由文件的播放器来选择要应用的多个过渡效果之一。
[0163]
a.在一个示例中,多个过渡效果的优先级顺序(或偏好顺序)在文件中被信令通知、或者预先定义、或者根据过渡属性的信令通知的顺序来推导。
[0164]
6.实施例
[0165]
以下是在上述章节5中概述的一些发明方面的一些示例实施例,其可以应用于vvc图像文件格式的标准规范并且支持幻灯片。添加或者修改的大部分相关部分用黑体斜体突出显示,一些被删除的部分用[[]]指示。
[0166]
6.1.第一实施例
[0167]
此实施例至少关于项目1、1.b和1.c。
[0168]
6.5.28擦除过渡效果
[0169]
6.5.28.1定义
[0170]
盒子(box)类型:“擦除”[0171]
属性类型:变换项目属性
[0172]
容器:itempropertycontainerbox
[0173]
强制性(每个项目):否
[0174]
数量(每个项目):最多一个
[0175]
wipetransitioneffectproperty记录了在幻灯片实体组的两个连续项目的显示之间应用的建议的擦除过渡效果(图像项目从另一个图像项目的一侧到另一侧逐渐替换该另一个图像项目)。
[0176]
该项目属性应与过渡中涉及的两个连续项目中的第一个项目相关联。
[0177]
在关联任何其他描述属性或变换属性后,该项目属性应与图像项目相关联。
[0178]
6.5.28.2语法
[0179]
aligned(8)class wipetransitioneffectproperty
[0180]
extends itemfullproperty('wipe',version=0,flags=0){
[0181]
unsigned int(8)transition_direction;
[0182]
unsigned int(8)transition_period;
[0183]
}
[0184]
6.5.28.3语义
[0185]
transition_direction标识要应用的过渡方向。它采用以下值之一:
[0186]
0:从左侧;
[0187]
1:从右侧;
[0188]
2:从上方;
[0189]
3:从下方;
[0190]
4:从左上方;
[0191]
5:从右上方;
[0192]
6:从左下方;
[0193]
7:从右下方;
[0194]
保留其他值。
[0195]
transition_period指示推荐的过渡期,以秒为单位,即从过渡开始到过渡结束的时间段。该值等于0指示不建议过渡期。
[0196]
6.5.29缩放过渡效果
[0197]
6.5.29.1定义
[0198]
盒子类型:“缩放”[0199]
属性类型:变换项目属性
[0200]
容器:itempropertycontainerbox
[0201]
强制性(每个项目):否
[0202]
数量(每个项目):最多一个
[0203]
zoomtransitioneffectproperty记录了在幻灯片实体组的两个连续项目的显示之间应用的建议的缩放过渡效果(图像项目通过从另一个图像项目放大或缩小来替换另一个图像项目)。
[0204]
该项目属性应与过渡中涉及的两个连续项目中的第一个项目相关联。
[0205]
在关联任何其他描述属性或变换属性后,该项目属性应与图像项目相关联。
[0206]
6.5.29.2语法
[0207]
aligned(8)class zoomtransitioneffectproperty
[0208]
extends itemfullproperty('zoom',version=0,flags=0){
[0209]
unsigned int(1)transition_direction;
[0210]
unsigned int(7)transition_shape;
[0211]
unsigned int(8)transition_period;
[0212]
}
[0213]
6.5.29.3语义
[0214]
transition_direction标识要应用的过渡方向。它采用以下值之一:
[0215]
0:放大;(使用transition_shape定义的形状放大)
[0216]
1:缩小;(使用transition_shape定义的形状缩小)
[0217]
transition_shape标识要应用的过渡形状。它采用以下值之一
[0218]
0:矩形;
[0219]
1:圆形;
[0220]
2:菱形;
[0221]
保留其他值。
[0222]
transition_period指示推荐的过渡期,以秒为单位,即从过渡开始到过渡结束的时间段。该值等于0指示不建议过渡期。
[0223]
6.5.30渐变过渡效果
[0224]
6.5.30.1定义
[0225]
盒子类型:“渐变”[0226]
属性类型:变换项目属性
[0227]
容器:itempropertycontainerbox
[0228]
强制性(每个项目):否
[0229]
数量(每个项目):最多一个
[0230]
fadetransitioneffectproperty记录建议的渐变过渡效果(图像项目通过首先逐渐过渡到白色或黑色图像,然后从该白色或黑色图像逐渐过渡到新的图像项目来替换另一个图像项目),以应用于幻灯片实体组的两个连续项目的显示之间。
[0231]
该项目属性应与两个连续项目中的第一个项目相关联。
[0232]
在关联任何其他描述属性或变换属性后,该项目属性应与图像项目相关联。
[0233]
6.5.30.2语法
[0234]
aligned(8)class fadetransitioneffectproperty
[0235]
extends itemfullproperty('fade',version=0,flags=0){
[0236]
unsigned int(8)transition_direction;
[0237]
unsigned int(8)transition_period;
[0238]
}
[0239]
6.5.30.3语义
[0240]
transition_direction标识要使用的过渡图像。它采用以下值之一:
[0241]
0:through_white;
[0242]
1:through_black;
[0243]
保留其他值。
[0244]
transition_period指示推荐过渡期,以秒为单位,即从过渡开始到过渡结束的时间段。该值等于0指示不建议过渡期。
[0245]
6.5.31分割过渡效果
[0246]
6.5.31.1定义
[0247]
盒子类型:“分割”[0248]
属性类型:变换项目属性
[0249]
容器:itempropertycontainerbox
[0250]
强制性(每个项目):否
[0251]
数量(每个项目):最多一个
[0252]
splittransitioneffectproperty记录了在幻灯片实体组的两个连续项目的显示之间应用的建议分割过渡效果(图像项目通过首先被水平分割或垂直分割而逐渐替换另一个图像项目)。
[0253]
该项目属性应与两个连续项目中的第一个项目相关联。
[0254]
在关联任何其他描述属性或变换属性后,该项目属性应与图像项目相关联。
[0255]
6.5.31.2语法
[0256]
aligned(8)class splittransitioneffectproperty
[0257]
extends itemfullproperty('split',version=0,flags=0){
[0258]
unsigned int(8)transition_direction;
[0259]
unsigned int(8)transition_period;
[0260]
}
[0261]
6.5.31.3语义
[0262]
transition_direction标识要应用的过渡方向。它采用以下值之一:
[0263]
0:vertical_in;
[0264]
1:vertical_ou;
[0265]
2:horizontal_in;
[0266]
3:horizontal_out;
[0267]
保留其他值。
[0268]
transition_period指示推荐的过渡期,以秒为单位,即从过渡开始到过渡结束的时间段。该值等于0指示不建议过渡期。
[0269]
6.5.32溶解过渡效果
[0270]
6.5.32.1定义
[0271]
盒子类型:“dsvl”[0272]
属性类型:变换项目属性
[0273]
容器:itempropertycontainerbox
[0274]
强制性(每个项目):否
[0275]
数量(每个项目):最多一个
[0276]
dissolvetransitioneffectproperty记录了在幻灯片实体组的两个连续项目之间应用的建议溶解过渡效果(图像项目通过逐渐淡入而另一个图像项目逐渐淡出来替换另一个图像项目)。
[0277]
该项目属性应与两个连续项目中的第一个项目相关联。
[0278]
在关联任何其他描述属性或变换属性后,该项目属性应与图像项目相关联。
[0279]
6.5.32.2语法
[0280]
aligned(8)class dissolvetransitioneffectproperty
[0281]
extends itemfullproperty('dsvl',version=0,flags=0){
[0282]
unsigned int(8)transition_period;
[0283]
}
[0284]
6.5.32.3语义
[0285]
transition_period指示推荐的过渡期,以秒为单位,即从过渡开始到过渡结束的时间段。该值等于0指示不建议过渡期。
[0286]
6.8
[0287]
在子条款6.8.8之后增加以下新子条款:
[0288]
6.5.33幻灯片
[0289]
6.8.9.1“slid”实体组
[0290]
幻灯片实体组(“slid”)指示意图形成幻灯片的实体集合。该实体组应包括指向图像项目的entity_id值,并且不应包括指向轨道的entity_id值。
[0291]
注意1对于需要合成图像(可能在画布上)的高级幻灯片,输入图像项目可以是推
导项目(例如标识、覆盖或网格)。
[0292]
幻灯片实体组中输入幻灯片图像的entity_id值应按递增显示顺序列出。
[0293]
同一文件中可能有多个具有不同group_id值的幻灯片实体组。
[0294]
过渡效果项目属性可以与幻灯片实体组的图像项目相关联,以记录要在该图像项目和实体列表中的连续图像项目之间应用的过渡效果。
[0295]
注意2当同一图像需要包括在不同的幻灯片中时,通过在与不同的过渡效果相关联的不同幻灯片中使用“iden”类型的推导项目,或者通过使得两个项目共享相同的数据(通过“iloc”),但在不同的幻灯片中具有不同的过渡效果,可以在不同的幻灯片中将该同一图像与不同的过渡效果相关联。
[0296]
注意3只有当过渡效果项目属性确实如此时,才应将其标记为必要的,因为被标记为必要的无法识别的过渡属性可能会阻碍单个图像的显示。在大多数幻灯片中,过渡效果“很好”,但是如果阅读器不理解过渡效果,过渡效果不应该妨碍显示图像。
[0297]
6.2.第二实施例
[0298]
此实施例至少关于项目4和项目5。
[0299]
l.2.2.1.2“vvc1”类型的图像项目
[0300]“vvc1”类型的项目由vvc比特流的nal单元组成,这些单元按照下面的规定进行了长度分隔,并且该比特流恰好包括一个访问单元,该一个访问单元是iso/iec 23090-3中定义的irap访问单元,或者是gdr访问单元,其中,所有图片的ph_recovery_poc_cnt等于0,如iso/iec 23090-3中定义的。
[0301]
nuh_layer_id大于0的nal单元可能出现在“vvc1”类型的项目中。阅读器应以与nuh_layer_id等于0的nal单元类似的方式处理“vvc1”类型的项目中nuh_layer_id大于0的nal单元。
[0302]
注意1在“vvc1”类型的图像项目中,非独立层中的图片可能使用层间预测,因此可能包括帧间编解码条带。在图像项目中不使用层间预测的图片可以是idr图片或cra图片,或其中如iso/iec 23090-3定义的ph_recovery_poc_cnt等于0的gdr图像。
[0303]
注意2“vvc1”类型的项目[[可能由iso/iec 23090-3中定义的irap访问单元组成,可以包括一个以上的编解码图片,并且]]最多包括一个具有nuh_layer_id的任意特定值的编解码图片。
[0304]
所有具有多层的“vvc1”类型的图像项目都应具有相关联的项目属性vvcoperatingpointsinformationproperty。vvcoperatingpointsinformationproperty提供了包括在具有多个层的图像项目中的比特流的高级特征的概述,类似于iso/iec 14496-15的“vopi”样点分组。
[0305]“vvc1”类型的所有图像项目都应具有零个或一个相关联的项目属性targetolsproperty。targetolsproperty包括target_ols_idx,它提供要用作vvc编解码图像项目的解码过程的输入的输出层集索引。target_ols_idx用作targetolsidx变量的值,并以与vvc中相同的编解码格式规定。除非图像项目中只有一张图片,否则targetolsproperty的数目不应为零。“vvc1”图像项目应包括由相关联的targetolsproperty标识的输出层集中包括的层,并且[[也可以包括其他层]]不应包括其他层。
[0306]“vvc1”类型的图像项目可以具有相关联的项目属性layerselectorproperty。layerselectorproperty应包括layer_id,它是由与同一图像项目相关联的targetolsproperty标识的输出层集的输出层的nuh_layer_id值之一。
[0307]
6.3.第三实施例
[0308]
此实施例至少关于项目6和项目7。
[0309]
l.2.3.3vvc操作点信息属性
[0310]
l.2.3.3.1定义
[0311]
盒子类型:“vopi”[0312]
属性类型:描述项目属性
[0313]
容器:itempropertycontainerbox
[0314]
强制形(每个项目):对于“vvc1”类型的图像项目,否
[0315]
数量(每个项目):对于“vvc1”类型的图像项目,零或一
[0316]
vvcoperatingpointsinformationproperty类似于iso/iec 14496-15中规定的vvcoperatingpointsinformation,但适用于图像项目。
[0317]
[[源自相同比特流的图像项目应与相同的vvcoperatingpointsinformationproperty相关联]]。vvcoperatingpointsinformationproperty通知关于比特流提供的不同操作点及其构成。每个操作点都与输出层集以及档次、层和级别的组合相关。与图像项目相关联的targetolsproperty提供了输出层集索引,该输出层集索引可用于选择将vvcoperatingpointsinformationproperty的哪些特定于操作点的信息应用于图像项目。vvcoperatingpointsinformationproperty还提供了层之间的依赖关系信息。
[0318]
l.2.3.3.2语法
[0319]
aligned(8)class vvcoperatingpointsinformationproperty
[0320]
extends itemfullproperty('vopi',version=0,flags=0){
[0321]
vvcoperatingpointsrecord;//specified iniso/iec 14496-15
[0322]
}
[0323]
l.2.3.3.3语义
[0324]
在iso/iec 14496-15规定了vvcoperatingpointsrecord的语义。当vvcoperatingpointsrecord包括在vvcoperatingpointsinformationproperty中时,vvcoperatingpointsrecord的语法元素的值被约束如下:
[0325]
对于i为0到num_profile_tier_level_minus1范围内的每个值(包括端点),ptl_max_temporal_id[i]应等于0。
[0326]
max_temporal_id应等于0。
[0327]
frame_rate_info_flag应等于0。因此,avgframerate和constantframerate不存在,并且也没有规定它们的语义。
[0328]
bit_rate_info_flag应等于0。因此,maxbitrate和avgbitrate不存在,并且也没有规定它们的语义。
[0329]
6.4.第四实施例
[0330]
此实施例至少关于项目9。
[0331]
vvc子图片项目
[0332]
iso/iec 23090-3允许将图片分割成子图片。iso/iec 23090-3包括子图片属性的确切定义和信令通知,而一些属性在下文中被信息性地重复:
[0333]-子图片是具有一个或多个条带的图片的矩形区域。
[0334]-如果[[子图片之间不存在帧内预测、熵解码和环路滤波器依赖关系]]子图片边界在帧间预测过程中被视为图片边界(即,当iso/iec23090-3中规定的相应标志sps_subpic_treated_as_pic_flag[i]等于1时),则子图片可以独立于其他子图片被解码。
[0335]
如果vvc子图片项目适合用vvc解码器解码,并且在没有其他vvc子图片项目的情况下被消耗,则vvc子图片项目应作为“vvc1”类型的项目存储。否则,vvc子图片项目应存储为“vvs1”类型的项目,并按照l.2.2.1.2中的定义,格式化为一系列前面带有长度字段的nal单元。
[0336]
存储为“vvc1”类型的子图片项目应遵循子条款l.2.2.1.2的所有要求。
[0337]
当vvc子图片项目存储为“vvs1”类型的项目时,以下约束适用于该项目:
[0338]-vcl
·
nal单元集合包括一个或多个子图片,如iso/iec 23090-3中所定义,使得包括在该vcl
·
nal单元集合中的子图片代表像素的矩形阵列;
[0339]-vps、dci、opi、sps、pps、aud、ph、eos和eob nal单元应在项目和

vvs 1’项目的样点中不存在。
[0340]-项目应与“vvnc”项目属性相关联,其中语法和语义与iso/iec14496-15中规定的vvcnaluconfigbox相同。
[0341]
注意nuh_layer_id大于0的nal单元可以存在于“vvs1”类型的项目中。阅读器应以与nuh_layer_id等于0的nal单元类似的方式处理“vvs1”类型项目中nuh_layer_id大于0的nal单元。
[0342]
vvc子图片项目的解码顺序由子条款l.2.5中定义的由vvc基本项目决定。
[0343]
视觉图1是示出其中可以实施本文公开的各种技术的示例视频处理系统1900的框图。各种实施方式可以包括系统1900的一些或全部组件。系统1900可以包括用于接收视频内容的输入1902。视频内容可以以原始或未压缩格式接收,例如8或10比特多分量像素值,或者可以以压缩或编解码格式接收。输入1902可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括诸如以太网、无源光网络(passive optical network,pon)等的有线接口和诸如wi-fi或蜂窝接口的无线接口。
[0344]
系统1900可以包括编解码组件1904,其可以实施本文档中描述的各种编解码或编码方法。编解码组件1904可以降低从输入1902到编解码组件1904的输出的视频的平均比特率,以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码组件1904的输出可以被存储,或者经由连接的通信(如由组件1906表示的)传输。组件1908可以使用存储的或在输入1902处接收的视频的通信传送的比特流(或编解码)表示来生成发送到显示接口1910的像素值或可显示视频。从比特流表示生成用户可观看的视频的过程有时被称为视频解压缩。此外,虽然特定视频处理操作被称为“编解码”操作或工具,但是应当理解,编解码工具或操作在编码器处使用,并且将由解码器来执行反转编解码结果的对应的解码工具或操作。
[0345]
外围总线接口或显示接口的示例可以包括通用串行总线(usb)或高清晰度多媒体接口(hdmi)或显示端口(displayport)等。存储接口的示例包括sata(串行高级技术附件)、
pci、ide接口等。本文档中描述的技术可以体现在各种电子设备中,诸如移动电话、膝上型计算机、智能手机或能够执行数字数据处理和/或视频显示的其他设备。
[0346]
图2是视频处理装置3600的框图。装置3600可用于实施本文描述的一种或多种方法。装置3600可以体现在智能手机、平板电脑、计算机、物联网(iot)接收器等中。装置3600可以包括一个或多个处理器3602、一个或多个存储器3604和视频处理硬件3606。(多个)处理器3602可以被配置成实施本文档中描述的一种或多种方法。(多个)存储器3604可以用于存储用于实施本文描述的方法和技术的数据和代码。视频处理硬件3606可以用于在硬件电路系统中实施本文档中描述的一些技术。在一些实施例中,视频处理硬件3606可以至少部分地包括在处理器3602中,例如图形协处理器。
[0347]
图4是示出可以利用本公开的技术的示例视频编解码系统100的框图。
[0348]
如图4所示,视频编解码系统100可以包括源设备110和目的设备120。源设备110生成可被称为视频编码设备的编码视频数据。目的设备120可以解码由源设备110生成的编解码视频数据,源设备110可以被称为视频解码设备。
[0349]
源设备110可以包括视频源112、视频编码器114和输入/输出(i/o)接口116。
[0350]
视频源112可以包括诸如视频捕获设备的源、从视频内容提供商接收视频数据的接口、和/或为生成视频数据的计算机图形系统、或这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码,以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括编解码图片和相关数据。编解码图片是图片的编解码表示。相关数据可以包括序列参数集、图片参数集和其他语法结构。i/o接口116可以包括调制器/解调器(调制解调器)和/或发射器。编码的视频数据可以通过网络130a经由i/o接口116直接传输到目的设备120。编码的视频数据也可以存储在存储介质/服务器130b上,以供目的设备120访问。
[0351]
目的设备120可以包括i/o接口126、视频解码器124和显示设备122。
[0352]
i/o接口126可以包括接收器和/或调制解调器。i/o接口126可以从源设备110或存储介质/服务器130b获取编码的视频数据。视频解码器124可以解码编码的视频数据。显示设备122可以向用户显示解码的视频数据。显示设备122可以与目的设备120集成,或者可以在目的设备120的外部,目的设备120被配置为与外部显示设备接口。
[0353]
视频编码器114和视频解码器124可以根据视频压缩标准操作,诸如高效视频编解码(hevc)标准、通用视频编解码(vvm)标准和其他当前和/或进一步的标准。
[0354]
图5是示出视频编码器200的示例的框图,视频编码器200可以是图4所示的系统100中的视频编码器114。
[0355]
视频编码器200可以被配置成执行本公开的任何或所有技术。在图5的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各种组件之间共享。在一些示例中,处理器可以被配置成执行本公开中描述的任何或所有技术。
[0356]
视频编码器200的功能组件可以包括分割单元201、可以包括模式选择单元203的预测单元202、运动估计单元204、运动补偿单元205和帧内预测单元206、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重建单元212、缓冲器213和熵编码单元214。
[0357]
在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在一个示
例中,预测单元202可以包括帧内块复制(intra block copy,ibc)单元。ibc单元可以在ibc模式下执行预测,其中至少一个参考图片是当前视频块所在的图片。
[0358]
此外,诸如运动估计单元204和运动补偿单元205的一些组件可以是高度集成的,但是为了解释的目的,在图5的示例中单独表示。
[0359]
分割单元201可以将图片分割成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。
[0360]
模式选择单元203可以例如基于误差结果选择编解码模式(帧内或帧间)之一,并将所得的帧内或帧间编解码块提供给残差生成单元207以生成残差块数据,并提供给重建单元212以重建编解码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测(ciip)模式的组合,其中预测基于帧间预测信号和帧内预测信号。在帧间预测的情况下,模式选择单元203还可以为块选择运动矢量的分辨率(例如,子像素或整数像素精度)。
[0361]
为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲器213的一个或多个参考帧与当前视频块进行比较来生成当前视频块的运动信息。运动补偿单元205可以基于运动信息和来自缓冲器213的除了与当前视频块相关联的图片之外的图片的解码样点来确定当前视频块的预测视频块。
[0362]
运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作,例如,取决于当前视频块是在i条带中、p条带中还是在b条带中。
[0363]
在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以为当前视频块的参考视频块搜索列表0或列表1的参考图片。运动估计单元204然后可以生成指示包含参考视频块的列表0或列表1中的参考图片的参考索引和指示当前视频块和参考视频块之间的空间位移的运动矢量。运动估计单元204可以输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。
[0364]
在其他示例中,运动估计单元204可以对当前视频块执行双向预测,运动估计单元204可以为当前视频块的参考视频块搜索列表0中的参考图片,并且还可以为当前视频块的另一个参考视频块搜索列表1中的参考图片。运动估计单元204然后可以生成指示包含参考视频块的列表0和列表1中的参考图片的参考索引以及指示参考视频块和当前视频块之间的空间位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。
[0365]
在一些示例中,运动估计单元204可以输出完整的运动信息集,用于解码器的解码处理。
[0366]
在一些示例中,运动估计单元204可能不输出当前视频的完整的运动信息集。相反,运动估计单元204可以参考另一视频块的运动信息信令通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与相邻视频块的运动信息足够相似。
[0367]
在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示一个值,该值向视频解码器300指示当前视频块具有与另一视频块相同的运动信息。
[0368]
在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中识别
另一视频块和运动矢量差值(mvd)。运动矢量差值指示当前视频块的运动矢量和所指示的视频块的运动矢量之间的差值。视频解码器300可以使用所指示的视频块的运动矢量和运动矢量差值来确定当前视频块的运动矢量。
[0369]
如上所述,视频编码器200可以预测性地信令通知运动矢量。可以由视频编码器200实施的预测信令通知技术的两个示例包括高级运动矢量预测(advanced motion vector predication,amvp)和merge模式信令通知。
[0370]
帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于同一图片中的其他视频块的解码样点来生成当前视频块的预测数据。当前视频块的预测数据可以包括预测视频块和各种语法元素。
[0371]
残差生成单元207可以通过从当前视频块中减去(例如,由减号表示)当前视频块的(多个)预测视频块来生成当前视频块的残差数据。当前视频块的残差数据可以包括对应于当前视频块中样点的不同样点分量的残差视频块。
[0372]
在其他示例中,例如在跳过模式中,当前视频块可能没有当前视频块的残差数据,并且残差生成单元207可能不执行减去操作。
[0373]
变换处理单元208可以通过将一个或多个变换应用于与当前视频块相关联的残差视频块来为当前视频块生成一个或多个变换系数视频块。
[0374]
在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(quantization parameter,qp)值来量化与当前视频块相关联的变换系数视频块。
[0375]
逆量化单元210和逆变换单元211可以分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重建残差视频块。重建单元212可以将重建的残差视频块添加到由预测单元202生成的一个或多个预测视频块的相应样点,以产生与当前块相关联的重建视频块,用于存储在缓冲器213中。
[0376]
在重建单元212重建视频块之后,可以执行环路滤波操作来减少视频块中的视频块伪影。
[0377]
熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收到数据时,熵编码单元214可以执行一个或多个熵编码操作以生成熵编码数据,并输出包括熵编码数据的比特流。
[0378]
图6是示出视频解码器300的示例的框图,视频解码器300可以是图4所示的系统100中的视频解码器114。
[0379]
视频解码器300可以被配置为执行本公开的任何或所有技术。在图6的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各种组件之间共享。在一些示例中,处理器可以被配置成执行本公开中描述的任何或所有技术。
[0380]
在图6的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305以及重建单元306和缓冲器307。在一些示例中,视频解码器300可以执行通常与关于视频编码器200(图5)描述的编解码过程相反的解码过程。
[0381]
熵解码单元301可以检索编码比特流。编码比特流可以包括熵编解码的视频数据
(例如,视频数据的编码块)。熵解码单元301可以解码熵编解码的视频数据,并且根据熵解码的视频数据,运动补偿单元302可以确定包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息的运动信息。运动补偿单元302可以例如通过执行amvp和merge模式来确定这样的信息。
[0382]
运动补偿单元302可以产生运动补偿块,可能基于插值滤波器执行插值。要以亚像素精度使用的插值滤波器的标识符可以包括在语法元素中。
[0383]
运动补偿单元302可以使用视频编码器200在视频块编码期间使用的插值滤波器来计算参考块的亚整数像素的插值。运动补偿单元302可以根据接收的语法信息确定视频编码器200使用的插值滤波器,并使用插值滤波器来产生预测块。
[0384]
运动补偿单元302可以使用一些语法信息来确定用于对编码视频序列的(多个)帧和/或(多个)条带进行编码的块的尺寸、描述编码视频序列的图片的每个宏块如何被分割的分割信息、指示每个分区如何被编码的模式、每个帧间编解码块的一个或多个参考帧(和参考帧列表)以及对编码视频序列进行解码的其他信息。
[0385]
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空间上邻近的块形成预测块。逆量化单元303对在比特流中提供并由熵解码单元301解码的量化视频块系数进行逆量化,即,解量化。逆变换单元303应用逆变换。
[0386]
重建单元306可以将残差块与由运动补偿单元202或帧内预测单元303生成的相应预测块相加,以形成解码块。如果需要,还可以应用去块滤波器来滤波解码的块,以便去除成块效应(blockiness artifacts)。解码的视频块然后被存储在缓冲器307中,缓冲器307为随后的运动补偿/帧内预测提供参考块,并且还产生解码的视频以在显示设备上呈现。
[0387]
接下来,提供一些实施例优选的解决方案列表。
[0388]
以下解决方案示出了在前一节中讨论的技术的示例实施例(例如,项目1、项目10和项目11)。
[0389]
1.一种视觉媒体处理方法(例如,图3中描绘的方法700),包括:根据文件格式执行(702)在包括一个或多个图像序列的视觉媒体和比特流表示之间的转换;其中,该文件格式被配置为包括一个或多个语法元素,该一个或多个语法元素指示在显示一个或多个图像期间一个或多个图像之间的过渡属性。
[0390]
2.根据解决方案1的方法,其中,过渡属性是过渡时间,其中,文件格式包括指示过渡时间的类型的另一语法元素,其中,该类型包括强制的过渡时间或推荐的过渡时间。
[0391]
3.根据解决方案1的方法,其中,过渡属性包括一个或多个图像之间的一个或多个过渡效果。
[0392]
4.根据解决方案2的方法,其中,文件格式包括一个或多个语法元素,为描述可应用于连续图像或连续图像的部分之间的过渡的一个或多个过渡效果。
[0393]
5.根据解决方案3的方法,其中,文件格式包括语法结构,该语法结构规定多个过渡效果和在从一个图像过渡到下一个图像期间该多个过渡效果可应用的图像的对应部分。
[0394]
以下解决方案示出了在前一节中讨论的技术的示例实施例(例如,项目2)。
[0395]
6.一种视觉媒体处理方法,包括:根据文件格式执行在包括一个或多个图像序列的视觉媒体和比特流表示之间的转换;其中,该文件格式规定,在视觉媒体被表示在具有特定文件标签的文件中的情况下,根据规则限制该文件格式。
[0396]
7.根据解决方案6的方法,其中,规则规定仅包括使用特定编解码工具编解码的图像的一部分的一个访问单元。
[0397]
8.根据解决方案6-7的方法,其中,特定编解码工具包括帧内编解码工具。
[0398]
9.根据解决方案6-7的方法,其中,特定编解码工具包括帧内块复制编解码工具。
[0399]
10.根据解决方案6的方法,其中,特定编解码工具包括调色板编解码工具。
[0400]
11.根据解决方案6的方法,其中,规则规定不允许文件格式存储根据编解码属性编解码的一个或多个图像。
[0401]
12.根据解决方案11的方法,其中,编解码属性包括目标输出层集属性。
[0402]
以下解决方案示出了在前一节中讨论的技术的示例实施例(例如,项目3、项目4、项目5和项目8)。
[0403]
13.一种视觉媒体处理方法,包括:根据文件格式,执行在包括一个或多个图像序列的视觉媒体和比特流表示之间的转换;其中,文件格式被配置为根据规则指示一个或多个图像的图像类型。
[0404]
14.根据解决方案13的方法,其中,规则规定文件格式进一步规定,对于一种图像类型,文件格式允许仅包括一个访问单元,该一个访问单元包括帧内编解码图像。
[0405]
15.根据解决方案13的方法,其中,规则规定允许特定图像类型仅包括网络抽象层单元,该网络抽象层单元恰好包括一个访问单元,该一个访问单元是帧内随机访问图片单元。
[0406]
16.根据解决方案13的方法,其中,规则规定对于特定图像类型,文件格式不允许包括来自不同目标输出层集的层中的图片。
[0407]
17.根据解决方案13的方法,其中,规则规定对于特定图像类型,文件格式允许包括整个访问单元,该整个访问单元中包括一个或多个包括多个可提取的子图片的图片。
[0408]
18.根据解决方案1-17中任一项所述的方法,其中,转换包括对一个或多个图像进行编码,以生成根据文件格式的比特流表示。
[0409]
19.根据解决方案18的方法,其中,根据文件格式的比特流表示被存储在计算机可读介质上或通过通信连接传输。
[0410]
20.根据解决方案117中任一项的方法,其中,转换包括从比特流表示解码和重建一个或多个图像。
[0411]
21.根据解决方案20的方法,还包括在解码和重建之后促进显示一个或多个图像。
[0412]
22.一种视频解码装置,包括被配置为实施解决方案1至21中的一个或多个中的方法的处理器。
[0413]
23.一种视频编码装置,包括被配置为实施解决方案1至21中的一个或多个中的方法的处理器。
[0414]
24.一种其上存储有计算机代码的计算机程序产品,当由处理器执行时,该代码使得处理器实施解决方案1至21中任一个中所述的方法。
[0415]
25.一种计算机可读介质,其上的比特流表示符合根据解决方案1至21中任一方案生成的文件格式。
[0416]
26.本文档中描述的方法、装置或系统。
[0417]
图8是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。方
法800包括,在操作810中,执行视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括一个或多个图片的序列,并且根据视频编解码格式,比特流包括一个或多个访问单元。根据视频编解码格式编解码比特流。媒体文件格式规定视觉媒体文件中特定类型值的图像项目包括比特流的单个访问单元。单个访问单元是根据视频编解码格式的帧内随机访问图片(intra random access picture,irap)访问单元,或者是根据视频编解码格式的渐进解码刷新(gradual decoding refresh,gdr)访问单元。gdr访问单元中的所有图片被标识为比特流中的恢复点。
[0418]
图9是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。方法900包括,在操作910中,执行视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括的一个或多个图片的序列,并且根据视频编解码格式,比特流包括一个或多个访问单元。根据视频编解码格式编解码比特流。媒体文件格式规定视觉媒体文件中特定类型值的图像项目不包括不属于目标输出层集的层。
[0419]
图10是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。方法1000包括,在操作1010中,执行视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括一个或多个图片的序列,并且根据视频编解码格式,比特流包括的一个或多个访问单元。根据视频编解码格式编解码比特流。媒体文件格式规定视觉媒体文件中特定类型值的图像项目包括其中图片包括一个或多个子图片的访问单元的至少一部分。
[0420]
以下是结合图8-图10讨论的技术的示例。
[0421]
1.一种处理视频数据的示例方法,包括:执行视觉媒体文件和比特流之间的转换,其中,根据媒体文件格式,视觉媒体文件包括一个或多个图片的序列,其中,根据视频编解码格式,比特流包括一个或多个访问单元,其中,根据视频编解码格式编解码比特流,其中,媒体文件格式规定视觉媒体文件中特定类型值的图像项目包括比特流的单个访问单元,其中,单个访问单元是根据视频编解码格式的帧内随机访问图片(irap)访问单元或者是根据视频编解码格式的渐进解码刷新(gdr)访问单元,其中,gdr访问单元中的所有图片被标识为比特流中的恢复点。
[0422]
2.根据示例1的方法,其中,视频编解码格式对应于根据iso/iec 23090-3的通用视频编解码标准。
[0423]
3.根据示例1或2所述的方法,其中,特定类型值被规定为“vvc1”。
[0424]
4.根据示例1至3中任一所述的方法,其中,gdr访问单元中的所有图片中的每一个都包括图片标头字段,该图片标头字段的值为零,指示对应的图片是恢复点。
[0425]
5.根据示例3的方法,其中,图片标头字段对应于ph_recovery_poc_cnt字段。
[0426]
6.一种处理视频数据的示例方法,包括:执行视觉媒体文件和比特流之间的转换,其中,根据媒体文件格式,视觉媒体文件包括一个或多个图片的序列,并且其中,根据视频编解码格式,比特流包括一个或多个访问单元,其中,根据视频编解码格式编解码比特流,并且其中,媒体文件格式规定视觉媒体文件中特定类型值的图像项目不包括不属于目标输出层集的层。
[0427]
7.根据示例6的方法,其中,视频编解码格式对应于根据iso/iec 23090-3的通用视频编解码标准。
[0428]
8.根据示例6或7的方法,其中,特定类型值被规定为“vvc1”。
[0429]
9.根据示例6至8中任一项所述的方法,其中,图像项目包括由指示目标输出层集的属性标识的输出层集中的层,并且不包括其他层。
[0430]
10.一种处理视频数据的示例方法,包括:执行视觉媒体文件和比特流之间的转换,其中,根据媒体文件格式,视觉媒体文件包括一个或多个图片的序列,其中,根据视频编解码格式,比特流包括一个或多个访问单元,其中,根据视频编解码格式编解码比特流,其中,媒体文件格式规定视觉媒体文件中特定类型值的图像项目包括其中图片包括一个或多个子图片的访问单元的至少一部分。
[0431]
11.根据示例10的方法,其中,视频编解码格式对应于根据iso/iec23090-3的通用视频编解码标准,并且其中,特定类型值被规定为“vvc1”。
[0432]
12.根据示例10或11所述的方法,其中,图像项目包括整个访问单元。
[0433]
13.根据示例10至12中任一项所述的方法,其中,图像项目包括访问单元的一部分,并且其中,对于比特流中存在的每个层,一个或多个子图片形成矩形区域。
[0434]
14.一种视频处理装置,包括处理器,其中,处理器被配置为执行示例1至13中任一个的方法。
[0435]
15.一种存储视频的比特流的非暂时性计算机可读记录介质,该比特流是通过由视频处理装置执行的示例1至13中任一个的方法生成的。
[0436]
图11是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。方法1100包括,在操作1110中,执行视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括图像项目,每个图像项目包括一个或多个图片的序列,并且根据视频编解码格式,比特流包括访问单元,每个访问单元包括一个或多个图片,每个图片属于层。媒体文件格式规定包括源自比特流的图片的图像项目被允许与属性描述符的不同实例相关联,该属性描述符指示比特流的高级特性。
[0437]
图12是根据本技术的一个或多个实施例的处理图像数据的方法的流程图表示。方法1200包括,在操作1210中,执行视觉媒体文件和比特流之间的转换。根据媒体文件格式,视觉媒体文件包括图像项目,每个图像项目包括一个或多个图片的序列,并且根据视频编解码格式,比特流包括访问单元,每个访问单元包括一个或多个图像,每个图像属于层。该媒体文件格式规定,响应于操作点的记录被包括在操作点的属性描述符中,该属性描述符指示比特流的高级特性,则记录中的第一语法元素的值或记录中的第二语法元素的值中的至少一个被约束为预定值。
[0438]
以下是结合图11-图12讨论的技术的示例解决方案。
[0439]
1.一种处理图像数据的示例解决方案,包括执行在视觉媒体文件和比特流之间的转换,其中,根据媒体文件格式,视觉媒体文件包括图像项目,每个图像项目包括一个或多个图片的序列,其中,根据视频编解码格式,比特流包括访问单元,每个访问单元包括一个或多个图片,每个图片属于层,其中,媒体文件格式规定包括源自比特流的图片的图像项目被允许与属性描述符的不同实例相关联,该属性描述符指示比特流的高级特性。
[0440]
2.根据示例解决方案1的方法,其中,视频编解码格式对应于根据iso/iec 23090-3的通用视频编解码标准。
[0441]
3.根据示例解决方案1或2的方法,其中,属性描述符被表示为vvcoperatingpointsinformationproperty。
[0442]
4.一种处理图像数据的示例解决方法,包括:执行在视觉媒体文件和比特流之间的转换,其中,根据媒体文件格式,视觉媒体文件包括图像项目,每个图像项目包括一个或多个图片的序列,并且根据视频编解码格式,比特流包括访问单元,每个访问单元包括一个或多个图片,每个图片属于层,其中,媒体文件格式规定,响应于操作点的记录被包括在操作点的属性描述符中,该属性描述符指示比特流的高级特性,则记录中的第一语法元素的值或记录中的第二语法元素的值中的至少一个被约束为预定值。
[0443]
5.根据示例解决方案4的方法,其中,视频编码格式对应于根据iso/iec23090-3的通用视频编解码标准。
[0444]
6.根据示例解决方案4或5的方法,其中,第一语法元素规定与第i个档次层级别(profile tier level)语法结构相关联的最大时域标识,其中,i在0到(档次层级别的数目-1)的范围内。
[0445]
7.根据示例解决方案6的方法,其中,第一语法元素被表示为ptl_max_temporal_id[i]。
[0446]
8.根据示例解决方案4至7中任一项的方法,其中,第二语法元素规定与操作点的记录相关联的最大时域标识。
[0447]
9.根据示例解决方案8的方法,其中,第二语法元素被表示为max_temproal_id。
[0448]
10.根据示例解决方案4至9中任一项所述的方法,其中,记录包括第三语法元素,该第三语法元素规定是否存在帧速率信息,其中,第三语法元素的值被约束为预定值。
[0449]
11.根据示例解决方案4至10中任一项所述的方法,其中,记录包括第四语法元素,该第四语法元素规定是否存在比特率信息,其中,第四语法元素的值被约束为预定值。
[0450]
12.根据示例解决方案4至11中任一项的方法,其中,预定值等于0。
[0451]
13.一种包括处理器的视频处理装置,其中,处理器被配置为执行示例解决方案1至12中任一个的方法。
[0452]
14.一种存储视频比特流的非暂时性计算机可读记录介质,该视频比特流是由视频处理装置执行的示例解决方案1至12中任一个的方法生成的。
[0453]
在本文描述的解决方案中,编码器可以通过根据格式规则产生编解码表示来符合格式规则。在本文描述的解决方案中,解码器可以使用格式规则来解析编解码表示中的语法元素,同时根据格式规则了解语法元素的存在和不存在,以产生解码的视频。在本文档中,术语“视频处理”可以指视频编码、视频解码、视频压缩或视频解压缩。例如,视频压缩算法可以在从视频的像素表示到相应比特流表示的转换期间应用,反之亦然。当前视频块的比特流表示或编解码表示可以例如对应于比特流中的并置或分布在不同位置的比特,如语法所定义的。例如,宏块可以根据变换和编解码误差残余值来编码,并且还可以使用比特流中的标头和其他字段中的比特来编码。此外,在转换期间,解码器可以基于该确定,在知道一些字段可能存在或不存在的情况下解析比特流,如以上解决方案中所述。类似地,编码器可以确定是否包括某些语法字段,并通过从编解码表示中包括或排除语法字段来相应地生成编解码表示。
[0454]
本文件中描述的所公开的以及其他的解决方案、示例、实施例、模块和功能操作可以在数字电子电路或者计算机软件、固件或硬件中实施,其包括本文件中所公开的结构及其结构等同物,或其中一个或多个的组合。所公开的实施例和其他实施例可以被实施成一
个或多个计算机程序产品,即编码在计算机可读介质上的计算机程序指令的一个或多个模块,以供数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储衬底、存储设备、影响机器可读传播信号的物质组成或者它们当中的一个或多个的组合。术语“数据处理装置”涵盖用于处理数据的所有装置、设备和机器,包括(例如)可编程处理器、计算机或者多个处理器或计算机。除硬件外,该装置还可以包括为所考虑的计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理系统、操作系统或者它们当中的一个或多个的组合。传播的信号是人为生成的信号,例如,机器生成的电、光或电磁信号,其被生成为对信息编码,以便传输到合适的接收器装置。
[0455]
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言(包括编译语言或解释语言)编写,并且可以按照任何形式部署,包括作为独立程序或作为模块、部件、子例程或其他适合在计算环境中使用的单元。计算机程序不一定与文件系统中的文件对应。程序可以存储在保存其他程序或数据的文件(例如,存储在标记语言文档中的一个或多个脚本)的部分中,专用于所讨论的程序的单个文件中,或者多个协调文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。可以将计算机程序部署为在一个或多个计算机上执行,这一个或多个计算机位于一个站点上,或者跨越多个站点分布并通过通信网络互连。
[0456]
本说明书中描述的过程和逻辑流可以通过由一个或多个可编程处理器执行一个或多个计算机程序来执行,从而通过对输入数据进行操作并生成输出来执行功能。这些过程和逻辑流也可以通过专用逻辑电路来执行,并且装置也可以被实施成专用逻辑电路,例如,fpga(现场可编程门阵列)或asic(专用集成电路)。
[0457]
例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。一般来讲,处理器将从只读存储器或随机存取存储器或这两者接收指令和数据。计算机的基本元件是执行指令的处理器以及存储指令和数据的一个或多个存储设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如,磁盘、磁光盘或光盘,或被操作性地耦接为从一个或多个大容量存储设备接收数据或向其传输数据,或两者兼有。然而,计算机不一定具有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括(例如)半导体存储设备,例如,eprom、eeprom和闪存设备;磁盘,例如,内部硬盘或可移动盘;磁光盘;以及cd rom和dvd rom盘。处理器和存储器可以由专用逻辑电路来补充,或合并到专用逻辑电路中。
[0458]
虽然本专利文件包含许多细节,但不应将其解释为对任何主题或权利要求范围的限制,而应解释为对特定技术的特定实施例的具体特征的描述。本专利文件在各单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或者以任何合适的子组合的形式在多个实施例中实施。此外,虽然某些特征可能在上面被描述为以某些组合来起作用并且甚至最初也这样地来要求对其的权利保护,但是来自要求权利保护的组合的一个或多个特征在某些情况下可从该组合中去除,并且要求权利保护的组合可以涉及子组合或子组合的变型。
[0459]
类似地,尽管附图中以特定顺序描述了操作,但这不应被理解为要获得想要的结果必须按照所示的特定顺序或者按照顺次排序执行此类操作,或者必须执行所有例示操
作。此外,在本专利文件中描述的实施例当中对各种系统部件的划分不应被理解为在所有实施例中都要求这样的划分。
[0460]
仅描述了几种实施方式和示例,并且其他实施方式、增强和变化可以基于本专利文件中描述和说明的内容做出。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献