首页> 中国专利> 渐近解码刷新(GDR)单元的限制

渐近解码刷新(GDR)单元的限制

摘要

描述了用于视频编解码和编码的方法、装置和系统,包括用于子图片、条带和片的约束、限制和信令通知。视频处理方法的一个示例包括:执行包括一个或多个图片的视频和视频的比特流之间的转换,其中,比特流符合格式规则,其中,格式规则不允许对一个或多个图片中的图片进行编解码,以包括具有渐近解码刷新类型的编解码条带网络抽象层NAL单元,并且以与指示图片包括混合类型的NAL单元的标志相关。

著录项

  • 公开/公告号CN114930843A

    专利类型发明专利

  • 公开/公告日2022-08-19

    原文格式PDF

  • 申请/专利权人 字节跳动有限公司;

    申请/专利号CN202180008694.1

  • 发明设计人 王业奎;张莉;张凯;

    申请日2021-01-08

  • 分类号H04N19/597(2006.01);H04N19/70(2006.01);H04N19/187(2006.01);

  • 代理机构北京市柳沈律师事务所 11105;

  • 代理人张亮

  • 地址 美国加利福尼亚州

  • 入库时间 2023-06-19 16:25:24

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-09-06

    实质审查的生效 IPC(主分类):H04N19/597 专利申请号:2021800086941 申请日:20210108

    实质审查的生效

说明书

相关申请的交叉引用

根据适用的《专利法》和/或《巴黎公约》的规定,本申请及时要求于2020年1月9日提交的美国临时专利申请号US 62/959,108的优先权和利益。出于法律上的所有目的,将前述申请的全部公开以引用方式并入本文,作为本申请公开的一部分。

技术领域

本申请文件涉及图像和视频编码和解码。

背景技术

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

发明内容

本文件公开了视频编码器和解码器分别用于视频编码和解码,并且包括用于子图片、条带和片的约束、限制和信令通知。

在一个示例方面,公开了一种视频处理方法。该方法包括:执行视频和所述视频的比特流之间的转换,其中,所述比特流包括根据格式规则的一个或多个接入单元,以及其中,所述格式规则规定用于操作点OP的第一消息和第二消息在所述接入单元AU中出现的顺序,以使得所述第一消息在解码顺序中先于所述第二消息。

在另一个示例方面,公开了一种视频处理方法。该方法包括:执行视频和所述视频的比特流之间的转换,其中,所述比特流包括根据格式规则的一个或多个接入单元,以及其中,所述格式规则规定用于操作点OP的多个消息在所述接入单元中出现的顺序,以使得所述多个消息的第一消息在解码顺序中先于所述多个消息的第二消息。

在另一个示例方面,公开了一种视频处理方法。该方法包括:执行包括图片的视频和所述视频的比特流之间的转换,其中,所述比特流符合格式规则,其中,所述格式规则规定是否在与所述图片相关的图片标头的开始信令通知第一标志的指示,其中,所述第一标志指示所述图片是帧内随机接入点IRAP图片还是渐近解码刷新GDR图片。

在再一个示例方面,公开了一种视频处理方法。该方法包括:执行包括一个或多个图片的视频和所述视频的比特流之间的转换,其中,所述比特流符合格式规则,其中,所述格式规则不允许对所述一个或多个图片中的图片进行编解码,以包括具有渐近解码刷新类型的编解码条带网络抽象层NAL单元,并且以与指示所述图片包括混合类型的所述NAL单元的标志相关。

在再一个示例方面,公开了一种视频处理方法。该方法包括:执行包括一个或多个图片的视频和所述视频的比特流之间的转换,其中,所述比特流符合格式规则,其中,所述格式规则允许对所述一个或多个图片中的图片进行编解码,以包括具有渐近解码刷新类型的编解码条带网络抽象层NAL单元,并且以与指示所述图片不包括混合类型的所述NAL单元的标志相关。

在再一个示例方面,公开了一种视频处理方法。该方法包括:执行视频的图片和所述视频的比特流之间的转换,其中,所述比特流符合格式规则,所述格式规则规定是否在与所述图片相关的图片参数集PPS中信令通知第一语法元素,其中,所述图片包括具有条带类型的一个或多个条带,其中,由于所述第一语法元素等于0,所述第一语法元素指示在图片标头中信令通知所述条带类型,否则所述第一语法元素指示在条带标头中信令通知所述条带类型。

在再一个示例方面,公开了一种视频处理方法。该方法包括:根据规则执行视频的图片和所述视频的比特流之间的转换,其中,所述转换包括环路滤波过程,以及其中,所述规则规定与所述环路滤波操作相关的垂直虚拟边界的总数和水平虚拟边界的总数在图片级别或序列级别中信令通知。

在再一个示例方面,公开了一种视频处理方法。该方法包括:执行包括一个或多个图片的视频和所述视频的比特流之间的转换,其中,所述比特流符合格式规则,其中,所述格式规则有条件地允许基于第一语法元素通过使用来自其他层的参考图片对一个层内的图片进行编解码,所述第一语法元素指示来自所述其他层的所述参考图片是否存在于所述比特流中,以及其中,基于第二语法元素在所述比特流中有条件地信令通知所述第一语法元素,所述第二语法元素指示与所述图片相关的参数集的标识符是否不等于0。

在再一个示例方面,公开了一种视频处理方法。该方法包括:执行视频的图片和所述视频的比特流之间的转换,其中,所述比特流符合格式规则,其中,所述格式规则规定第一语法元素,所述第一语法元素使得(a)在解码所述图片中的编解码树单元CTU之前对上下文变量进行同步处理和(b)在解码所述CTU之后对所述上下文变量进行存储处理,其中,在与所述图片关联的序列参数集SPS中信令通知所述第一语法元素。

在再一个示例方面,公开了一种视频处理方法。该方法包括:执行视频的图片和所述视频的比特流之间的转换,其中,所述比特流符合格式规则,其中,所述格式规则规定语法元素,所述语法元素指示在所述图片的条带标头中是否存在用于片或片指定编解码树单元CTU行的条目点偏移的信令通知,以及其中,在与所述图片关联的序列参数集SPS中信令通知所述语法元素。

在再一个示例方面,公开了一种视频处理方法。该方法包括:根据规则执行视频和所述视频的比特流之间的转换,其中,所述规则规定第一语法元素小于第一预设阈值,所述第一语法元素指示在与所述视频关联的视频参数集VPS中的用于输出层集OLS假设参考解码器HRD的参数的数量。

在再一个示例方面,公开了一种视频处理方法。该方法包括:根据规则执行视频和所述视频的比特流之间的转换,其中,所述规则规定语法元素小于预设阈值,所述语法元素指示与所述视频关联的视频参数集VPS中的配置文件/层级/级别PTL语法结构的数量。

在再一个示例方面,公开了一种视频处理方法。该方法包括:根据规则执行视频和所述视频的比特流之间的转换,其中,所述规则规定第一语法元素,所述第一语法元素指示在视频参数集VPS中的解码图片缓冲参数语法结构的数量必须小于或等于第二语法元素,所述第二语法元素指示被所述VPS规定的层的数量。

在再一个示例方面,公开了一种视频处理方法。该方法包括:根据规则执行视频和所述视频的比特流之间的转换,其中,所述规则允许通过在所述比特流中信令通知或通过外部手段提供而使得解码器获得终端网络抽象层NAL单元。

在再一个示例方面,公开了一种视频处理方法。该方法包括:执行视频和所述视频的比特流之间的转换,其中,所述比特流符合格式规则,以及其中,由于语法元素等于0,所述格式规则限制在所述比特流中每层只包括一个子图片,指示所述每层配置为使用层间预测。

在再一个示例方面,公开了一种视频处理方法。该方法包括:根据规则执行视频和所述视频的比特流之间的转换,其中,所述规则规定实施子比特流提取过程以生成用于解码的子比特流,其中,所述子比特流提取过程配置为从所述比特流中提取具有目标最高时域标识符的子比特流,以及其中,所述规则规定在所述提取过程中,在移除视频编解码层VCL网络抽象层NAL单元时,也删除在与所述VCL NAL单元关联的补充增强信息(SEI)VCL单元中的填充数据单元和填充补充增强信息SEI消息。

在再一个示例方面,公开了一种视频处理方法。该方法包括:执行视频的视频单元和所述视频的比特流之间的转换,其中,所述比特流符合格式规则,其中,所述格式规则规定所述比特流包括第一语法元素,所述第一语法元素指示所述视频单元是在有损模式还是无损模式下编解码,以及其中,信令通知第二语法元素指示基于所述第一语法元素的值有选择地包括应用于所述视频单元的调色板模式中的转义样点。

在再一个示例方面,公开了一种视频编码装置。该视频编码装置包括处理器,其中,所述处理器配置为执行上述方法。

在再一个示例方面,公开了一种视频解码装置。该视频解码装置包括处理器,其中,所述处理器配置为执行上述方法。

在再一个示例方面,公开了一种其上存储有代码的计算机可读介质。该编解码以处理器可执行代码的形式实现上述方法。

在本文件中描述了这些以及其他的特征。

附图说明

图1示出了用亮度编解码树单元(CTU)分割图片的示例。

图2示出了用亮度CTU分割图片的另一示例。

图3示出了图片分割的示例。

图4示出了图片分割的另一示例。

图5是可以实现所公开的技术的示例视频处理系统的框图。

图6是用于视频处理的示例硬件平台的框图。

图7是图示根据本公开一些实施例的视频编解码系统的框图。

图8是图示根据本公开一些实施例的编码器的框图。

图9是图示根据本公开一些实施例的解码器的框图。

图10-26示出了视频处理的示例方法的流程图。

具体实施方式

在本文中,使用章节标题是为了易于理解,并且不将每个章节中公开的技术和实施例的适用性仅限于该章节。此外,在一些描述中使用H.266术语只是为了易于理解而不是为了限制所公开技术的范围。因此,这里描述的技术也适用于其他视频编解码器协议和设计。

1.简介

本文涉及视频编解码技术。具体地,关于子图片、片和条带的信令。这些构思可以单独或以各种组合应用到任何支持多层视频编解码的视频编解码标准或非标准视频编解码器,例如正在开发的多功能视频编解码(VVC)。

2.缩写

APS 自适应参数集

AU 接入单元

AUD 接入单元分隔符

AVC 高级视频编解码

CLVS 编解码层视频序列

CPB 编解码图片缓冲区

CRA 清除随机访问

CTU 编解码树单元

CVS 编解码视频序列

DPB 解码图片缓冲区

DPS 解码参数集

EOB 比特流结束

EOS 序列结束

GDR 渐进解码刷新

HEVC 高效视频编解码

HRD 虚拟参考解码器

IDR 即时解码刷新

JEM 联合探索模型

MCTS 运动约束片集

NAL 网络抽象层

OLS 输出层集

PH 图片标头

PPS 图片参数集

PTL 配置文件、层级和级别

PU 图片单元

RBSP 原始字节序列载荷

SEI 补充增强信息

SPS 序列参数集

SVC 可伸缩视频编解码

VCL 视频编解码层

VPS 视频参数集

VTM VVC测试模型

VUI 视频可用性信息

VVC 多功能视频编解码

3.初步讨论

视频编解码标准主要是通过开发已知的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年共同成立了联合视频探索团队(JVET)。此后,JVET采用了许多新的方法,并将其应用于名为联合探索模型(JEM)的参考软件中。JVET会议每季度同时召开一次,新的编解码标准的目标是相比HEVC码率降低50%。新的视频编解码标准在2018年4月的JVET会议上正式命名为多功能视频编解码(VersatileVideo Coding,VVC),当时发布了第一版VVC测试模型(VTM)。随着VVC标准化的不断努力,在每次JVET会议上都有新的编解码技术被采纳到VVC标准中。每次会议后都会更新VVC工作草案和测试模型VTM。VVC项目现在的目标是在2020年7月的会议上的技术完成(FDIS)。

3.1.HEVC中的图片分割方案

HEVC包括四种不同的图片分割方案,即常规条带、非独立条带、片和波前并行处理(WPP),可应用于最大传输单元(MTU)尺寸匹配、并行处理和减小端到端延迟。

常规条带与H.264/AVC中的类似。每个常规条带都封装在自己的NAL单元中,并且禁用了跨条带边界的图内预测(帧内样点预测、运动信息预测、编解码模式预测)和熵编解码依赖性。因此,可以独立于同一图片内的其他常规条带重建常规条带(尽管由于环路滤波操作可能仍然存在相互依赖性)。

常规条带是唯一可用于并行化的工具,该工具在H.264/AVC中也以几乎相同的形式可用。基于常规条带的并行化不需要太多处理器间或核间通信(除了在解码预测编解码图片时用于运动补偿的处理器间或核间数据共享,由于帧内图片预测,这通常比处理器间或核间的数据共享重得多)。然而,出于同样的原因,由于条带标头的比特成本以及跨条带边界的预测缺失,使用常规条带可能会产生大量的编解码开销。此外,由于常规条带的图片内独立性以及每个常规条带都封装在其自己的NAL中,因此常规条带(与下面提到的其他工具相比)也可作为比特流分割以匹配MTU尺寸要求的关键机制。在许多情况下,并行化的目标和MTU尺寸匹配的目标对图片中的条带布局的要求是矛盾的。这种情况的实现导致了下面提到的并行化工具的开发。

非独立条带具有短条带标头并且允许在树块边界处对比特流进行分区而不破坏任何图片内预测。基本上,非独立条带将常规条带分成多个NAL单元,通过允许在整个常规条带的编码完成之前发送常规条带的一部分来减少端到端延迟。

在WPP中,图片被分割成单行的编解码树块(CTBs)。允许熵解码和预测使用来自其他分割中的CTBs的数据。通过CTB行的并行解码可以进行并行处理,其中CTB行的解码开始延迟两个CTBs,以确保与在主体CTB上方和右侧的CTB相关的数据可以在正在解码的主体CTB之前获得。使用这种交错开始(以图形方式表示时看起来像一个波前),可以并行化与包含有CTB行的图片一样多的处理器/核。因为允许图片内的相邻树块行之间的图片内预测,所以实现图片内预测所需的处理器间/核间通信可能是大量的。与未应用WPP分割相比,WPP分割不会导致产生额外的NAL单元,因此WPP不是用于MTU尺寸匹配的工具。但是,如果需要MTU尺寸匹配,则可以将常规条带与WPP一起使用,但具有一定的编解码开销。

片定义将图片分割为片列和片行的水平和垂直边界。片列从图片的顶部延伸到图片底部。同样,片行从图片的左侧延伸到图片的右侧。图片中的片数可以简单地通过片列数乘以片行数得出。

在按照一个图片的片光栅扫描的顺序解码下一个片的左上CTB之前,CTB的扫描顺序被改变为片内的本地扫描顺序(按照片的CTB光栅扫描的顺序)。与常规条带类似,片打破了图片内预测依赖性以及熵解码依赖性。但是,它们不需要包含在独立的NAL单元中(在这方面与WPP相同);因此片不能用于MTU尺寸匹配。每个片可由一个处理器/核处理,并且在一个条带跨越多个片的情况下,解码相邻条带的处理单元之间的图片内预测所需的处理器间/核间通信仅限于传送共享的条带标头和与重建样点和元数据共享相关的环路滤波。当条带中包含一个以上的片或WPP段时,条带中除第一个之外的每个片或WPP段的入口点字节偏移量在条带标头中用信令通知。

为简单起见,在HEVC中规定了对四种不同图片分割方案的应用的限制。对于HEVC中规定的大多数配置文件,给定的编解码视频序列不能同时包含片和波前。对于每个条带和片,必须满足以下条件之一或两者:1)条带中的所有编解码树块都属于同一个片;2)一个片中的所有编解码树块属于同一个条带。最后,一个波前段恰好包含一个CTB行,并且当使用WPP时,如果一个条带在CTB行内开始,则该条带必须在同一CTB行中结束。

在JCT-VC输出文档JCTVC-AC1005、J.Boyce、A.Ramasubramonian、R.Skupin、G.J.Sullivan、A.Tourapis、Y.-KWang(编辑)中规定了HEVC的最近修订。“HEVC AdditionalSupplemental Enhancement Information(Draft4)”,2017年10月24日在http://phenix.intevry.fr/jct/doc_end_user/documents-/29_Macau/wg11/JCTVC-AC1005-v2.zip公开。包含此修订内,HEVC规定了三个与MCT相关的SEI消息,即时域MCTS SEI消息、MCTS提取信息集SEI消息和MCTS提取信息嵌套SEI消息。

时域MCTSs SEI消息指示比特流中存在MCTSs并信令通知MCTSs。对于每个MCTS,运动矢量被限制为指向MCTS内的全样点位置和仅需要MCTS内的全样点位置进行插值的分数样点位置,并且不允许使用对于来自MCTS之外的块的时域运动矢量预测的运动矢量候选。这样,每个MCTS可以在不存在未包括在MCTS中的片的情况下独立解码。

MCTSs提取信息集SEI消息提供补充信息,该补充信息可用于MCTS子比特流提取(规定为SEI消息的语义的一部分)以生成符合MCTS集的比特流。该信息由多个提取信息集组成,每个提取信息集定义多个MCTS集并包含要在MCTS子比特流提取过程中使用的替换VPSs、SPSs和PPSs的RBSP字节。在根据MCTS子比特流提取过程提取子比特流时,参数集(VPSs、SPSs和PPSs)需要重写或替换,条带标头需要稍微更新,因为其中一个或全部条带地址相关语法元素(包括first_slice_segment_in_pic_flag和slice_segment_address)通常需要具有不同的值。

3.2.VVC中图片的分割

在VVC中,图片被分割为一个或多个片行和一个或多个片列。片是覆盖图片矩形区域的CTU序列。片中的CTU在该片内以光栅扫描顺序进行扫描。

条带由图片的片内整数个完整片或整数个连续完整CTU行组成。

支持两种条带模式,即光栅扫描条带模式和矩形条带模式。在光栅扫描条带模式中,条带包含图片的条带光栅扫描中的完整条带序列。在矩形条带模式中,条带包含共同形成图片的矩形区域的多个完整片或共同形成图片的矩形区域的一个片的多个连续完整CTU行。矩形条带内的条带在对应于该条带的矩形区域内以条带光栅扫描顺序进行扫描。

子图片包含共同覆盖图片的矩形区域的一个或多个条带。

图1示出了图片的光栅扫描条带分割的示例,其中图片被分割为12个片和3个光栅扫描条带。

图2示出了图片的矩形条带分割的示例,其中图片被分割为24个片(6个片列和4个片行)和9个矩形片。

图3示出了被分割为片和矩形条带的图片的示例,其中图片被分割为4个片(2个片列和2个片行)和4个矩形条带。

图4示出了图片的子图片分割示例,其中图片被分割为18个片,左侧的12个片,每个覆盖一个有4x4个CTU的条带,右侧的6个片,每个覆盖2个有2x2个CTU的垂直堆叠的条带,总共产生24个条带和24个不同维度的子图片(每个条带是一个子图片)。

3.3.VVC中子图片、片和条带的信令通知

在最新的VVC草案文本中,子图片的信息在SPS中信令通知,子图片的信息包括子图片布局(即,每个图片的子图片数量以及每个图片的位置和尺寸)和其他序列级别的子图片信息。在SPS中信令通知的子图片的顺序定义了子图片索引。可以例如在SPS或PPS中显式地信令通知每个子图片所具有的子图片ID列表。

VVC中的片在概念上与HEVC中的相同,即,每个图片被分割为片列和片行,但在PPS中具有不同的用于信令通知片的语法。

在VVC中,条带模式也在PPS中信令通知。当条带模式是矩形条带模式时,每个图片的条带布局(即,每个图片的条带数量以及每个条带的位置和尺寸)在PPS中信令通知。在PPS中信令通知的图片内的矩形条带的顺序定义了图片级别条带索引。子图片级条带索引被定义为子图片内的条带在其图片级条带索引的升序中的顺序。基于在SPS中信令通知的子图片位置和尺寸(当每个子图片仅包含一个条带时),或基于在PPS中信令通知的片位置和尺寸(当子图片可能包含多个条带时)来发送/导出矩形条带的位置和尺寸。当条带模式是光栅扫描条带模式时,类似于在HEVC中,图片内的条带布局在条带本身中以不同的细节信令通知。

与本发明最相关的最新VVC草案文本中的SPS、PPS和条带标头和语义如下。

7.3.2.3序列参数集RBSP语法

7.4.3.3序列参数集RBSP语义

...

subpics_present_flag等于1指子图片参数存在于SPS RBSP语法中。subpics_present_flag等于0指子图片参数不存在于SPS RBSP语法中。

注2–当比特流是子比特流提取过程的结果并且仅包含子比特流提取过程的输入比特流的子图片的子集时,可能需要将在SPS的RBSP中的subpics_present_flag的值设置为等于1。

sps_num_subpics_minus1加1指子图片的数量。sps_num_subpics_minus1应在0到254的范围内。当不存在时,sps_num_subpics_minus1的值被推断为等于0。

subpic_ctu_top_left_x[i]指在CtbSizeY的单元中的第i个子图片的左上角CTU的水平位置。语法元素的长度是Ceil(Log2(pic_width_max_in_luma_samples/CtbSizeY))比特。当其不存在,则推断subpic_ctu_top_left_x[i]的值等于0。

subpic_ctu_top_left_y[i]在CtbSizeY的单元指第i个子图片的左上角CTU的垂直位置。语法元素的长度是Ceil(Log2(pic_height_max_in_luma_samples/CtbSizeY))比特。当其不存在,则推断subpic_ctu_top_left_y[i]的值等于0。

subpic_width_minus1[i]加1指在CtbSizeY的单元中的第i个子图片的宽度。语法元素的长度是Ceil(Log2(pic_width_max_in_luma_samples/CtbSizeY))比特。当其不存在,则推断subpic_width_minus1[i]的值等于Ceil(pic_width_max_in_luma_samples/CtbSizeY)-1。

subpic_height_minus1[i]加1指在CtbSizeY的单元中的第i个子图片的高度。语法元素的长度是Ceil(Log2(pic_height_max_in_luma_samples/CtbSizeY))比特。当其不存在,则推断subpic_height_minus1[i]的值等于Ceil(pic_height_max_in_luma_samples/CtbSizeY)-1。

subpic_treated_as_pic_flag[i]等于1表示CLVS中每个编解码图片的第i个子图片在除了环路滤波操作的解码过程中被视为图片。subpic_treatment_as_pic_flag[i]等于0表示CLVS中每个编解码图片的第i个子图片在除了环路滤波操作的解码过程中不被视为图片。当其不存在,则推断subpic_treatment_as_pic_flag[i]的值等于0。

loop_filter_across_subpic_enabled_flag[i]等于1指可以在CLVS中的每个编解码图片中的第i个子图片的边界上跨界执行环路滤波操作。loop_filter_across_subpic_enabled_flag[i]等于0指不在CLVS中每个编解码图片中的第i个子图片的边界跨界执行环路滤波操作。当其不存在,则loop_filter_across_subpic_enabled_pic_flag[i]的值被推断为等于1。

以下约束适用于比特流一致性的要求:

对于任意两个子图片subpicA和subpicB,当subpicA的子图片索引小于subpicB的子片图索引时,subPicA的任何编解码条带NAL单元应在解码顺序上先于subPicB的任何编解码条带NAL单元。

子图片的形状应使得每个子图片在解码时,其整个左边界和整个上边界都由图片边界或由先前解码的子图片的边界组成。

sps_subpic_id_present_flag等于1表示SPS中存在子图片ID映射。sps_subpic_id_present_flag等于0指子图片ID映射不存在于SPS中。

sps_subpic_id_signalling_present_flag等于1指子图片ID映射在SPS中信令通知。sps_subpic_id_signalling_present_flag等于0指子图片ID映射不在SPS中信令通知。当不存在时,sps_subpic_id_signalling_present_flag的值被推断为等于0。

sps_subpic_id_len_minus1加1指用于表示语法元素sps_subpic_id[i]的位数。sps_subpic_id_len_minus1的值应在0到15的范围内,包括端值。

sps_subpic_id[i]指第i个子图片的子图片ID。sps_subpic_id[i]语法元素的长度是sps_subpic_id_len_minus1+1比特。当不存在时,并且当sps_subpic_id_present_flag等于0时,sps_subpic_id[i]的值被推断为等于i,每个i在从0到sps_num_subpics_minus1范围内,包括端值。

...

7.3.2.4图片参数集RBSP语法

7.4.3.4图片参数集RBSP语义

...

pps_subpic_id_signalling_present_flag等于1指子图片ID映射在PPS中信令通知。pps_subpic_id_signalling_present_flag等于0指子图片ID映射不在PPS中信令通知。当sps_subpic_id_present_flag为0或sps_subpic_id_signalling_present_flag等于1时,pps_subpic_id_signalling_present_flag应等于0。

pps_num_subpics_minus1加1指参考PPS的编解码图片中的子图片数量。

pps_num_subpic_minus1的值应等于sps_num_subpics_minus1是比特流一致性的要求。

pps_subpic_id_len_minus1加1指用于表示语法元素pps_subpic_id[i]的位数。pps_subpic_id_len_minus1的值应在0到15的范围内,包括端值。

对于被在CLVS中的编解码图片引用的pps_subpic_id_len_minus1的值应对于所有PPS均相同,这是比特流一致性的要求。

pps_subpic_id[i]指第i个子图片的子图片ID。pps_subpic_id[i]语法元素的长度是pps_subpic_id_len_minus1+1比特。

no_pic_partition_flag等于1指不将图片分割应用于引用PPS的每个图片。no_pic_partition_flag等于0指引用PPS的每个图片可以被分割为多个片或条带。

对于CLVS内的编解码图片所引用的所有PPS,no_pic_partition_flag的值应相同,这是比特流一致性的要求。

当sps_num_subpics_minus1+1的值大于1时,no_pic_partition_flag的值不能等于1,这是比特流一致性的要求。

pps_log2_ctu_size_minus5加5指每个CTU的亮度编解码树块尺寸。pps_log2_ctu_size_minus5应等于sps_log2_ctu_size_minus5。

num_exp_tile_columns_minus1加1指明确提供的片列宽度的数量。num_exp_tile_columns_minus1的值应在0到PicWidthInCtbsY-1的范围内,包括端值。当no_pic_partition_flag等于1时,推断num_exp_tile_columns_minus1的值等于0。

num_exp_tile_rows_minus1加1指明确提供的片行高度的数量。num_exp_tile_rows_minus1的值应在0到PicHeightInCtbsY-1的范围内,包括端值。当no_pic_partition_flag等于1时,推断num_exp_tile_columns_minus1的值等于0。

tile_column_width_minus1[i]加1指在CTBs的单元的第i个片列的宽度,i在0到num_exp_tile_columns_minus1-1的范围内,包括端值。tile_column_width_minus1[num_exp_tile_columns_minus1]用于推导出索引大于或等于num_exp_tile_columns_minus1的片列的宽度,如条款6.5.1中所述。当其不存在,则推断tile_column_width_minus1[0]的值等于PicWidthInCtbsY-1。

tile_row_height_minus1[i]加1指在CTBs的单元的第i个片行的高度,i在0到num_exp_tile_rows_minus1-1的范围内,包括端值。tile_row_height_minus1[num_exp_tile_rows_minus1]用于推导出索引大于或等于num_exp_tile_rows_minus1的片行的高度,如条款6.5.1中所述。当其不存在,则tile_row_height_minus1[0]的值被推断为等于PicHeightInCtbsY-1。

rect_slice_flag等于0指每个条带内的片按光栅扫描顺序排列,并且条带信息不在PPS中信令通知。rect_slice_flag等于1指每个条带内的片覆盖图片的矩形区域,并且条带信息在PPS中信令通知。当其不存在,则推断rect_slice_flag等于1。当subpics_present_flag等于1时,rect_slice_flag的值应等于1。

single_slice_per_subpic_flag等于1指每个子图片由一个且仅由一个矩形条带组成。single_slice_per_subpic_flag等于0指每个子图片可以包含一个或多个矩形条带。当subpics_present_flag等于0时,single_slice_per_subpic_flag应等于0。当single_slice_per_subpic_flag等于1时,推断num_slices_in_pic_minus1等于sps_num_subpics_minus1。

num_slices_in_pic_minus1加1指每个图片中参考PPS的矩形条带的数量。num_slices_in_pic_minus1的值应在0到MaxSlicesPerPicture-1的范围内,包括端值,其中MaxSlicesPerPicture在附录A中规定。当no_pic_partition_flag等于1时,推断num_slices_in_pic_minus1的值等于0。

tile_idx_delta_present_flag等于0指tile_idx_delta值不存在于PPS中,并且根据条款6.5.1中定义的过程,以光栅顺序指定引用PPS的图片中的所有矩形条带。tile_idx_delta_present_flag等于1指tile_idx_delta值可以存在于PPS中,并且参考PPS的图片中的所有矩形条带都按照tile_idx_delta值指示的顺序指定。

slice_width_in_tiles_minus1[i]加1指在片列的单元的第i个矩形条带的宽度。slice_width_in_tiles_minus1[i]的值应在0到NumTileColumns-1的范围内,包括端值。当其不存在,slice_width_in_tiles_minus1[i]的值将按照第6.5.1节中的规定进行推断。

slice_height_in_tiles_minus1[i]加1指在片行的单元的第i个矩形条带的高度。slice_height_in_tiles_minus1[i]的值应在0到NumTileRows-1的范围内,包括端值。当其不存在,slice_height_in_tiles_minus1[i]的值将按照第6.5.1节中的规定进行推断。

num_slices_in_tile_minus1[i]加1指当前片中的条带数,适用于第i个条带包含来自单个片的CTU行的子集的情况。num_slices_in_tile_minus1[i]的值应在0到RowHeight[tileY]-1的范围内,包括端值,其中tileY是包含第i个条带的片行索引。当其不存在,则推断num_slices_in_tile_minus1[i]的值等于0。

slice_height_in_ctu_minus1[i]加1指在CTU行的单元的第i个矩形条带的高度,适用于第i个条带包含来自单个片的CTU行的子集的情况。slice_height_in_ctu_minus1[i]的值应在0到RowHeight[tileY]-1的范围内,包括端值,其中tileY是包含第i个条带的片行索引。

tile_idx_delta[i]指第i个矩形条带和第(i+1)个矩形条带之间的片索引差值。tile_idx_delta[i]的值应在–NumTilesInPic+1到NumTilesInPic-1的范围内,包括端值。当其不存在,则tile_idx_delta[i]的值被推断为等于0。在所有其他情况下,tile_idx_delta[i]的值不应等于0。

loop_filter_across_tiles_enabled_flag等于1指可以在参考PPS的图片中跨片边界执行环路滤波操作。loop_filter_across_tiles_enabled_flag等于0指不在参考PPS的图片中跨片边界执行环路滤波操作。环路滤波操作包括去方块滤波器、样点自适应偏移滤波器和自适应环路滤波器操作。当其不存在,则loop_filter_across_tiles_enabled_flag的值被推断为等于1。

loop_filter_across_slices_enabled_flag等于1指可以在参考PPS的图片中跨条带边界执行环路滤波操作。loop_filter_across_slice_enabled_flag等于0指不在参考PPS的图片中跨条带边界执行环路滤波操作。环路滤波操作包括去方块滤波器、样点自适应偏移滤波器和自适应环路滤波器操作。当其不存在,则loop_filter_across_slices_enabled_flag的值被推断为等于0。

7.3.7.1通用条带标头语法

7.4.8.1通用条带标头语义

...

slice_subpic_id指包含条带的子图片的子图片标识符。如果slice_subpic_id存在,则推导出变量SubPicIdx的值以使SubpicIdList[SubPicIdx]等于slice_subpic_id。否则(slice_subpic_id不存在),变量SubPicIdx被推导出等于0。slice_subpic_id的长度,以比特为单位,推导如下:

—如果sps_subpic_id_signalling_present_flag等于1,slice_subpic_id的长度等于sps_subpic_id_len_minus1+1。

—否则,如果ph_subpic_id_signalling_present_flag等于1,则slice_subpic_id的长度等于ph_subpic_id_len_minus1+1。

—否则,如果pps_subpic_id_signalling_present_flag等于1,则slice_subpic_id的长度等于pps_subpic_id_len_minus1+1。

—否则,slice_subpic_id的长度等于Ceil(Log2(sps_num_subpics_minus1+1))。

slice_address指条带的条带地址。当不存在时,slice_address的值被推断为等于0。

如果rect_slice_flag等于0,则适用以下情况:

—条带地址是光栅扫描片索引。

—slice_address的长度为Ceil(Log2(NumTilesInPic))比特。

—slice_address的值应在0到NumTilesInPic-1的范围内,包括端值。

否则(rect_slice_flag等于1),则适用以下情况:

—条带地址是第SubPicIdx个子图片内条带的条带索引。

—slice_address的长度是Ceil(Log2(NumSlicesInSubpic[SubPicIdx]))比特。

—slice_address的值应在0到NumSlicesInSubpic[SubPicIdx]-1的范围内,包括端值。

以下约束适用于比特流一致性的要求:

—如果rect_slice_flag等于0或subpics_present_flag等于0,则slice_address的值不应等于同一编解码图片的任何其他编解码条带NAL单元的slice_address的值。

—否则,slice_subpic_id和slice_address值的对不应等于同一编解码图片的任何其他编解码条带NAL单元的slice_subpic_id和slice_address值的对。

—当rect_slice_flag等于0时,图片的条带应按其slice_address值的升序排列。

—图片条带的形状应使得每个CTU在解码时,其整个左边界和整个上边界都应由图片边界或由先前解码的CTU的边界组成。

num_tiles_in_slice_minus1加1(如果存在)指条带中片的数量。num_tiles_in_slice_minus1的值应在0到NumTilesInPic-1的范围内,包括端值。

变量NumCtuInCurrSlice,指当前条带中CTU的数量,列表CtbAddrInCurrSlice[i],指条带内第i个CTB的图片光栅扫描地址,其中i的范围为0到NumCtuInCurrSlice-1,包括端值,推导如下:

变量SubPicLeftBoundaryPos、SubPicTopBoundaryPos、SubPicRightBoundaryPos和SubPicBotBoundaryPos推导如下:

3.4 JVET-Q0075的实施例

转义样点用于处理调色板模式中的异常情况。

转义样点的二值化是当前VTM中的EG3。然而,对于均匀分布的信令通知,固定长度的二值化在失真和比特率测量方面都可能优于EG3。

JVET-Q0075提议对转义样点使用固定长度的二值化,并且也相应地修改量化和去量化过程。

在所提出的方法中,转义样点的最大比特深度取决于量化参数,推导如下。

max(1,bitDepth–(max(QpPrimeTsMin,Qp)–4)/6)

这里,bitDepth是内部比特深度,Qp是当前量化参数(QP),QpPrimeTsMin是变换跳过块的最小QP,max是在两个输入之间获得更大值的操作。

此外,在转义样点的去量化过程中仅需要移位操作。令escapeVal为解码逃逸值,recon为转义样点的重构值。该值的推导如下。

shift=min(bitDepth–1,(max(QpPrimeTsMin,Qp)–4)/6)

recon=(escapeVal<

保证重构值的失真总是小于或等于当前设计的失真,例如,((escapeVal*levelScale[qP%6])<<(qP/6)+32)>>6.

在编码器处,量化实现如下:

escapeVal=(p+(1<<(shift–1)))>>shift

escapeVal=clip3(0,(1<

与使用EG3和使用反量化表、一次加法、一次乘法和两次移位操,进行量化的当前设计相比,本申请所提出的方法要简单得多,仅需要一次移位操作。

3.5 JVET-Q0294的实施例

为了在混合有损和无损编解码中实现有效压缩,JVET-Q0294建议在每个编解码树单元(CTU)处信令通知标志以指示CTU是否被编解码为无损或有损模式。如果CTU是无损编解码的,则信令通知附加CTU级别标志以规定用于该CTU的残差编解码方法,常规残差编解码或变换跳过残差编解码。

4.本文解决方案解决的技术问题示例

VVC中子图片、片和条带的信令现有设计存在以下问题:

1)sps_num_subpics_minus1的编解码为u(8),这使得每个图片不允许超过256个子图片。但是,在某些应用中,每个图片的最大子图片数量可能需要大于256。

2)允许subpics_present_flag等于0,sps_subpic_id_present_flag等于1。但是,这没有意义,因为subpics_present_flag等于0意味着CLVS根本没有关于子图片的信息。

3)对于每个子图片之一,子图片ID的列表可以在图片标头(PH)中信令通知。然而,当在PH中信令通知子图片ID的列表时,并且当从比特流中提取子图片的子集时,所有的PH都将需要更改。这是不可取的。

4)当前,当子图片ID被指示为显式地信令通知时,通过等于1的sps_subpic_id_present_flag(或语法元素的名称更改为subpic_ids_explicitly_signalled_flag),子图片ID可以不在任何地方信令通知。这是有问题的,因为当子图片ID被指示为显式地信令通知时,需要在SPS或PPS中显式地信令通知子图片ID。

5)当子图片ID没有显式信令通知时,只要subpics_present_flag等于1,包括当sps_num_subpics_minus1等于0时,条带头语法元素slice_subpic_id仍然需要信令通知。但是,slice_subpic_id的长度目前指定为Ceil(Log2(sps_num_subpics_minus1+1))比特,当sps_num_subpics_minus1等于0时为0比特。这是有问题的,因为任何现有语法元素的长度都不能为0比特。

6)子图片布局,包括子图片的数量、尺寸和位置,在整个CLVS中保持不变。即使没有在SPS或PPS中显式地信令通知子图片ID,对于条带标头中的子图片ID语法元素,仍需要信令通知子图片ID长度。

7)每当rect_slice_flag等于1时,语法元素slice_address在条带标头中信令通知,并指定包含条带的子图片内的条带索引,包括当子图片内的条带数量(即,NumSlicesInSubpic[SubPicIdx])等于1时。但是,目前,当rect_slice_flag等于1时,slice_address的长度被指定为Ceil(Log2(NumSlicesInSubpic[SubPicIdx]))比特,当NumSlicesInSubpic[SubPicIdx]等于1时slice_address的长度为0比特。这是有问题的,因为任何现有语法元素的长度都不能是0比特。

8)语法元素no_pic_partition_flag和pps_num_subpics_minus1之间存在冗余,尽管最新的VVC文本有以下约束:当sps_num_subpics_minus1大于0时,no_pic_partition_flag的值应等于1。

9)在CLVS内,特定子图片位置或索引的子图片ID值可能会因图片而异。当这种情况发生时,原则上,子图片不能通过参考同一层中的参考图片来使用层间预测。然而,目前,在当前的VVC规范中缺乏禁止这种做法的约束。

10)在当前的VVC设计中,参考图片可以是不同层中的图片,以支持多种应用,例如可伸缩视频编解码和多视图视频编解码。如果子图存在于不同的层,需要研究是否允许或不允许层间预测。

5.示例技术和实施例

为了解决上述问题和其他问题,公开了如下概述的方法。本发明应被视为解释一般概念的示例,不应狭义地解释。此外,这些发明可以单独应用或以任何方式组合应用。

以下缩写具有与在JVET-P1001-vE中相同的含义。

BP(缓冲期),BP SEI(补充增强信息),

PT(图片定时),PT SEI,

AU(接入单元),

OP(操作点),

DUI(解码单元信息),DUI SEI,

NAL(网络层),

NUT(NAL单元类型),

GDR(渐近解码刷新),

SLI(子图片级别信息),SLI SEI。

1)为解决第一个问题,将sps_num_subpics_minus1的编解码从u(8)改为ue(v),使得每个图片可以多于256个子图片。

a.此外,sps_num_subpics_minus1的值被限制在0到Ceil(pic_width_max_in_luma_samples÷CtbSizeY)*Ceil(pic_height_max_in_-luma_samples÷CtbSizeY)-1的范围内。

b.此外,每个图片的子图片数量在级别的定义中被进一步限制。

2)为解决第二个问题,将信令通知语法元素sps_subpic_id_present_flag的条件设置为“if(subpics_present_flag)”,即当subpics_present_flag等于0时,不信令通知sps_subpic_id_present_flag语法元素,并在其不存在时,推断sps_subpic_id_present_flag的值等于0。

a.或者,当subpics_present_flag等于0时,语法元素sps_subpic_id_present_flag仍然被信令通知,但是当subpics_present_flag等于0时,该值需要等于0。

b.此外,语法元素subpics_present_flag和sps_subpic_id_present_flag的名称分别更改为subpic_info_present_flag和subpic_ids_explicitly_signalled_flag。

3)为解决第三个问题,去除PH语法中子图片ID的信令。因此,对于i在0到sps_num_subpics_minus1的范围内(包括端值),列表SubpicIdList[i]推导如下:

4)为解决第四个问题,当子图片被指示显式信令通知时,在SPS或PPS中信令通知子图片ID。

a.通过添加以下约束来实现:如果subpic_ids_explicitly_signalled_flag为0或subpic_ids_in_sps_flag等于1,则subpic_ids_in_pps_flag应等于0。否则(subpic_ids_explicitly_signalled_flag为1或subpic_ids_in_sps_flag等于0),subpic_ids_in_pps_flag应等于1。

5)为解决第五个和第六个问题,无论SPS的标志sps_subpic_id_present_flag(或重命名为subpic_ids_explicitly_signalled_flag)的值如何,在SPS中信令通知子图片ID的长度,尽管当子图片ID也在PPS中显式信令通知时,长度也可以在PPS中信令通知以避免解析PPS对SPS的依赖性。在这种情况下,长度还指定了条带标头中的子图片ID的长度,即使子图片ID不在SPS或PPS中显式地信令通知。因此,当其存在时,slice_subpic_id的长度也由在SPS中信令通知的子图片ID长度指定。

6)或者,为解决第五和第六个问题,在SPS语法中添加标志,其值为1来指定在SPS语法中存在子图片ID长度。该标志的存在与指示子图片ID是否在SPS或PPS中显式信令通知的标志的值无关。当subpic_ids_explicitly_signalled_flag等于0时,该标志的值可以等于1或0,但当subpic_ids_explicitly_signalled_flag等于1时,该标志的值必须等于1。当该标志等于0时,即子图片长度不存在,slice_subpic_id的长度被指定为Max(Ceil(Log2(sps_num_subpics_minus1+1)),1)比特(而不是最新的VVC草案文本中的Ceil(Log2(sps_num_subpics_minus1+1))比特)。

a.或者,仅当subpic_ids_explicitly_signalled_flag等于0时才存在此标志,并且当subpic_ids_explicitly_signalled_flag等于1时,推断此标志的值等于1。

7)为解决第七个问题,当rect_slice_flag等于1时,指slice_address的长度为Max(Ceil(Log2(NumSlicesInSubpic[SubPicIdx])),1)比特。

a.或者,更进一步,当rect_slice_flag等于0时,slice_address的长度被指定为Max(Ceil(Log2(NumTilesInPic)),1)比特,而不是Ceil(Log2(NumTilesInPic))比特。

8)为解决第八个问题,将信令通知no_pic_partition_flag的条件设置为“if(subpic_ids_in_pps_flag&&pps_num_subpics-_minus1>0)”,并添加以下推断:当其不存在时,推断no_pic_partition_flag的值等于1。

a.或者,将子图片ID语法(所有四个语法元素)移动到PPS中的片和条带语法之后,例如,紧接在语法元素entropy_coding_sync_enabled_flag之前,然后将信令通知pps_num_subpics_minus1的条件设置为“if(no_pic_partition_flag)”。

9)为解决第九个问题,规定如下约束:对于每个特定的子图片索引(或等效地,子图片位置),当子图片ID值在一个图片picA与前一个图片在相同层的解码顺序中发生变化时为picA,除非picA是CLVS的第一张图片,否则picA处的子图片应仅包含nal_unit_type等于IDR_W_RADL、IDR_N_LP或CRA_NUT的编解码条带NAL单元。

a.或者,上述约束仅适用于subpic_treatment_as_pic_flag[i]的值等于1的子图片索引。

b.或者,对于上述9和9a,将“IDR_W_RADL、IDR_N_LP或CRA_NUT”更改为“IDR_W_RADL、IDR_N_LP、CRA_NUT、RSV_IRAP_11或RSV_IRAP_12”。

c.或者,picA处的子图片可以包含其他类型的编解码条带NAL单元,然而,这些编解码条带NAL单元仅使用层间预测、层内块复制(IBC)预测和调色板模式预测中的一种或多种。

d.或者,picA的子图片中的第一视频单元(例如条带、片、块等)可以指前一图片中的第二视频单元。限制第二视频单元和第一视频单元可以在具有相同子图片索引的子图片中,尽管两者的子图片IDs可能不同。子图片索引是分配给子图片的唯一编号,在CLVS中不能更改。

10)对于特定子图片索引(或等效地,子图片位置),可以在比特流中信令通知指示哪些子图片(由层ID值连同子图片索引或子图片ID值一起标识)被用作参考图片。

11)对于多层情况,当满足某些条件(例如,可能取决于子图片的数量、子图片的位置)时,允许来自不同层中的子图片的层间预测(ILR),而当某些条件不满足时,ILR被禁用。

a.在一个示例中,即使当两个层中的两个子图片具有相同的子图片索引值但具有不同的子图片ID值时,在满足某些条件时仍然可以允许层间预测。

i.在一个示例中,某些条件是“如果两个层与不同的视图顺序索引/视图顺序ID值相关联”。

b.如果两个子图片具有相同的子图片索引,则可以约束第一层中的第一子图片和第二层中的第二子图片必须在并置的位置和/或合理的宽度/高度。

c.如果第一子图片可以参考第二参考子图片,则可以限制第一层中的第一子图片和第二层中的第二子图片必须处于并置位置和/或合理的宽度/高度。

12)当前子图片是否可以使用来自与参考层的区域或子图片相关联的样点值和/或其他值(例如,运动信息和/或编解码模式信息)的层间预测(ILP)的指示在比特流中信令通知,例如在VPS/DPS/SPS/PPS/APS/序列标头/图片标头中信令通知。

a.在一个示例中,参考层的参考区域或子图片是包含当前子图片内的样点的至少一个并置样点的。

b.在一个示例中,参考层的参考区域或子图片在当前子图片的并置区域之外。

c.在一个示例中,该指示在一个或多个SEI消息中信令通知。

d.在一个示例中,不管参考层是否具有多个子图片,并且当多个子图片存在于一个或多个参考层中时,无论将图片分割成子图片是否与使得当前图片中的每个子图片是覆盖并置区域的参考图片中的对应子图片,无论对应/并置子图片是否具有与当前子图片相同的子图片ID值,信令通知该指示。

13)当应用于特定OP的BP SEI消息和PT SEI消息出现在AU中时,BP SEI消息应在解码顺序中位于PT SEI消息之前。

14)当应用于特定OP的BP SEI消息和DUI SEI消息出现在AU中时,BP SEI消息应在解码顺序中位于DUI SEI消息之前。

15)当应用于特定OP的PT SEI消息和DUI SEI消息出现在AU中时,PT SEI消息应在解码顺序中位于DUI SEI消息之前。

16)在图片标头的开始处信令通知一个图片是否是IRAP/GDR图片标志的指示,并且可以根据该指示信令通知no_output_of_prior_pics_flag。

示例性语法设计如下:

irap_or_gdr_pic_flag等于1规定与PH关联的图片是IRAP或GDR图片。irap_or_gdr_pic_flag等于0规定与PH关联的图片既不是IRAP图片也不是GDR图片。

17)不允许mixed_nalu_types_in_pic_flag的值等于0的图片不包含nal_unit_type等于GDR_NUT的编解码条带NAL单元。

18)在PPS中信令通知语法元素(即mixed_slice_types_in_pic_flag)。如果mixed_slice_types_in_pic_flag等于0,则条带类型(B、P或I)在PH中编解码。否则,条带类型在SHs中编解码。与未使用的条带类型相关的语法值在图片标头中被进一步跳过。有条件地信令通知语法元素mixed_slice_types_in_pic_flag,如下所示:

19)在SPS或PPS中,最多发送N1个(例如,3个)垂直虚拟边界和最多N2个(例如,3个)水平虚拟边界的信号。在PH中,最多发送N3个(例如,1)额外的垂直边界和最多N4个(例如,1)额外的水平虚拟边界,并且限制垂直虚拟边界的总数应小于或等于N1,并且水平虚拟边界的总数应小于或等于N2。

20)可以有条件地信令通知SPS中的语法元素inter_layer_ref_pics_present_flag,如下所示:

21)在SPS中而不是在PPS中信令通知语法元素entropy_coding_sync_enabled_flag和entry_point_offsets_present_flag。

22)要求vps_num_ptls_minus1和num_ols_hrd_params_minus1的值必须小于值T。例如,T可以等于JVET-2001-vE中规定的TotalNumOlss。

a.可以信令通知T和vps_num_ptls_minus1或(vps_num_ptls_minus1+1)之间的差值。

b.可以信令通知T和hrd_params_minus1或(hrd_params_minus1+1)之间的差值。

c.可以通过一元编解码或指数-哥伦布编解码信令通知上述差值。

23)要求vps_num_dpb_params_minus1的值必须小于或等于vps_max_layers_minus1。

a.可以信令通知T和vps_num_ptls_minus1或(vps_num_ptls_minus1+1)之间的差值。

b.可以通过一元编解码或指数-哥伦布编解码来信令通知差值。

24)允许EOB NAL单元通过包含在比特流中或通过外部方式提供给解码器。

25)允许EOS NAL单元可以通过包含在比特流中或通过外部方式提供给解码器。

26)对于层索引为i的每一层,当vps_independent_layer_flag[i]等于0时,该层中的每个图片应仅包含一个子图片。

27)在子比特流提取过程中,指定每当移除VCL NAL单元时,也移除与VCL NAL单元关联的填充数据单元,并移除与VCL NAL单元关联的SEI NAL单元中的所有填充SEI消息。

28)限制当一个SEI NAL单元包含一个填充SEI消息时,SEI NAL单元不包含任何其他不是填充SEI消息的SEI消息。

a.或者,限制当一个SEI NAL单元包含一个填充SEI消息时,SEI NAL单元应包含任何其他SEI消息。

29)限制一个VCL NAL单元应最多有一个关联的填充NAL单元。

30)限制一个VCL NAL单元应最多有一个关联的填充NAL单元。

31)建议信令通知标志以指示视频单元是否被编解码为无损或有损模式,其中视频单元可以是CU或CTU,以及在调色板模式下转义样点的信令通知可以取决于标志。

a.在一个示例中,调色板模式中的转义样点的二值化方法可以取决于标志。

b.在一个示例中,在调色板模式中的转义样点的算术编解码中编解码上下文的确定可以取决于标志。

6.实施例

以下是除以上在第5节中总结的8项之外的所有发明部分的一些示例实施例,其可应用于VVC规范。更改的文本基于JVET-P2001-v14中最新的VVC文本。已添加或修改的最相关部分以

6.1.第一实施例

7.3.2.3序列参数集RBSP语法

7.4.3.3序列参数集RBSP语义

...

注2–当比特流是子比特流提取过程的结果并且仅包含子比特流提取过程的输入比特流的子图片的子集时,可能需要将在SPS中

sps_num_subpics_minus1加1指子图片的数量。

subpic_ctu_top_left_x[i]指在CtbSizeY的单元的第i个子图片的左上CTU的水平位置。语法元素的长度是Ceil(Log2(pic_width_max_in_luma_samples/CtbSizeY))比特。当其不存在,则推断subpic_ctu_top_left_x[i]的值等于0。

subpic_ctu_top_left_y[i]指在CtbSizeY的单元的第i个子图的左上角CTU的垂直位置。语法元素的长度是Ceil(Log2(pic_height_max_in_luma_samples/CtbSizeY))比特。当其不存在,则推断subpic_ctu_top_left_y[i]的值等于0。

subpic_width_minus1[i]加1指在CtbSizeY的单元的第i个子图片的宽度。语法元素的长度是Ceil(Log2(pic_width_max_in_luma_samples/CtbSizeY))比特。当其不存在,则推断subpic_width_minus1[i]的值等于Ceil(pic_width_max_in_luma_samples/CtbSizeY)-1。

subpic_height_minus1[i]加1指在CtbSizeY的单元的第i个子图片的高度。语法元素的长度是Ceil(Log2(pic_height_max_in_luma_samples/CtbSizeY))比特。当其不存在,则推断subpic_height_minus1[i]的值等于Ceil(pic_height_max_in_luma_samples/CtbSizeY)-1。

subpic_treated_as_pic_flag[i]等于1表示CLVS中每个编解码图片的第i个子图片在不包括环路滤波操作的解码过程中被视为图片。subpic_treatment_as_pic_flag[i]等于0指CLVS中每个编解码图片的第i个子图片在不包括环路滤波操作的解码过程中不被视为图片。当其不存在,则推断subpic_treatment_as_pic_flag[i]的值等于0。

loop_filter_across_subpic_enabled_flag[i]等于1指可以在CLVS中的每个编解码图片中的第i个子图片的边界上跨界执行环路滤波操作。loop_filter_across_subpic_enabled_flag[i]等于0表示不在CLVS中每个编解码图片中的第i个子图片的边界上跨界执行环路滤波操作。当其不存在,则loop_filter_across_subpic_enabled_pic_flag[i]的值被推断为等于1。

以下约束适用于比特流一致性的要求:

—对于任意两个子图片subpicA和subpicB,当subpicA的子图片索引小于subpicB的子图片索引时,subPicA的任何编解码条带NAL单元应在解码顺序上优先于subPicB的任何编解码条带NAL单元。

—子图片的形状应使得每个子图片在解码时,其整个左边界和整个上边界都由图片边界或由先前解码的子图片的边界组成。

sps_subpic_id[i]指第i个子图片的子图片ID。sps_subpic_id[i]语法元素的长度是sps_subpic_id_len_minus1+1比特。

...

7.3.2.4图片参数集RBSP语法

7.4.3.4图片参数集RBSP语义

...

pps_num_subpics_minus1应等于sps_num_subpics_minus1。

pps_subpic_id_len_minus1应等于sps_subpic_id_len_minus1。

pps_subpic_id[i]指第i个子图片的子图片ID。pps_subpic_id[i]语法元素的长度是pps_subpic_id_len_minus1+1比特。

比特流一致性的要求是,对于0到sps_num_subpics_minus1范围(包括端值)内的任何i和j,当i小于j时,SubpicIdList[i]应小于SubpicIdList[j]。

...

rect_slice_flag等于0指每个条带内的片按光栅扫描顺序排列,并且不在PPS中信令通知条带信息。rect_slice_flag等于1指每个条带内的片覆盖图片的矩形区域,并且在PPS中信令通知条带信息。当其不存在时,则推断rect_slice_flag等于1。当

single_slice_per_subpic_flag等于1指每个子图片由一个且仅由一个矩形条带组成。single_slice_per_subpic_flag等于0指每个子图片可以包含一个或多个矩形条带。当

...

7.3.7.1通用条带头语法

7.4.8.1通用条带标头语义

...

slice_subpic_id指包含条带的子图片的子图片ID。

当其不存在时,则推断slice_subpic_id的值等于0。

变量SubPicIdx被推导出为使得SubpicIdList[SubPicIdx]等于slice_subpic_id的值。

slice_address指条带的条带地址。当其不存在时,则推断slice_address的值等于0。

如果rect_slice_flag等于0,则适用以下情况:

—条带地址是光栅扫描片索引。

—slice_address的长度为Ceil(Log2(NumTilesInPic))比特。

—slice_address的值应在0到NumTilesInPic-1的范围内,包括端值。

否则(rect_slice_flag等于1),则适用以下情况:

—条带地址是条带的子图片级别条带索引。

—slice_address的长度为

—slice_address的值应在0到NumSlicesInSubpic[SubPicIdx]-1的范围内,包括端值。

以下约束适用于比特流一致性的要求:

—如果rect_slice_flag等于0或

—否则,slice_subpic_id和slice_address值的对不应等于同一编解码图片的任何其他编解码条带NAL单元的slice_subpic_id和slice_address值的对。

—当rect_slice_flag等于0时,图片的条带应按其slice_address值的升序排列。

—图像条带的形状应使得每个CTU在解码时,其整个左边界和整个上边界都应由一个图片边界或由先前解码的(多个)CTU的边界组成。

...

图5示出了可以实现本公开各种技术的示例视频处理系统500的框图。各种实现可以包括系统500的一些或所有组件。系统500可以包括用于接收视频内容的输入502。视频内容可以以原始或未压缩格式(例如,8或10比特多分量像素值)接收,或者可以以压缩或编码格式接收。输入502可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括例如以太网、无源光网络(PON)等的有线接口和例如Wi-Fi或蜂窝接口的无线接口。

系统500可以包括编解码组件504,编解码组件504可以实现本公开中描述的各种编解码或编码方法。编解码组件504可以降低从输入502到编解码组件504的输出的视频的平均比特率,以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码组件504的输出可以被存储,或者经由如组件506所表示的通信连接而被传输。在输入502处接收到的视频的存储或通信的比特流(或编解码)表示可以由组件508使用,组件508用于生成发送到显示接口510的像素值或可显示视频。从比特流表示生成用户可观看视频的过程有时称为视频解压缩。此外,虽然某些视频处理操作被称为“编解码”操作或工具,但应当理解,编码工具或操作在编码器处使用,并且反转编码结果的相应解码工具或操作将由解码器执行。

外围总线接口或显示接口的示例可以包括通用串行总线(USB)或高清多媒体接口(HDMI)或显示端口等。存储接口的示例包括SATA(串行高级技术附件)、PCI、IDE接口等。本公开中描述的技术可以实施在各种电子设备中,例如移动电话、笔记本电脑、智能手机或能够执行数字数据处理和/或视频显示的其他设备。

图6是视频处理装置600的框图。装置600可用于实现本公开中描述的一种或多种方法。装置600可以位于智能手机、平板电脑、计算机、物联网(IoT)接收器等中。装置600可以包括一个或多个处理器602、一个或多个存储器604和视频处理硬件606。处理器602可以被配置为实现本公开中描述的一种或多种方法。存储器604可用于存储用于实现本公开描述的方法和技术的数据和代码。视频处理硬件606可以在硬件电路中使用以实现本公开中描述的一些技术。在一些实施例中,硬件606可以部分或全部在处理器602中,例如图形处理器。

图7是说明可利用本公开的技术的示例视频编解码系统100的框图。

如图7所示,视频编解码系统100可以包括源设备110和目标设备120。源设备110可生成编码视频数据,源设备110可被称为视频编码设备。目标设备120可解码由源设备110产生的编码视频数据,目标设备120可称为视频解码装置。

源设备110可以包括视频源112、视频编码器114和输入/输出(I/O)接口116。

视频源112可以包括例如视频捕获设备的源、从视频内容提供者接收视频数据的接口、和/或用于生成视频数据的计算机图形系统、或这些源的组合。视频数据可以包括一幅或多幅图片。视频编码器114对来自视频源112的视频数据进行编码以生成比特流。比特流可以包括形成视频数据的编解码表示的位序列。比特流可以包括编解码图片和相关数据。编解码图片是图片的编解码表示。关联数据可以包括序列参数集、图片参数集和其他语法结构。I/O接口116可以包括调制器/解调器(调制解调器)和/或发射器。编码的视频数据可以通过网络130a经由I/O接口116直接发送到目标设备120。编码的视频数据也可以存储在存储介质/服务器130b上以供目标设备120访问。

目标设备120可以包括I/O接口126、视频解码器124和显示设备122。

I/O接口126可以包括接收器和/或调制解调器。I/O接口126可以从源设备110或存储介质/服务器130b获取已编码的视频数据。视频解码器124可解码已编码的视频数据。显示设备122可以向用户显示解码的视频数据。显示设备122可以与目标设备120集成,或者可以在目标设备120的外部,目标设备120被配置为与外部显示设备接口。

视频编码器114和视频解码器124可以根据视频压缩标准操作,例如高效视频编码(HEVC)标准、多功能视频编码(VVM)标准和其他当前和/或其他标准。

图8是说明视频编码器200的示例的框图,视频编码器200可以是图7中说明的系统100中的视频编码器114。

视频编码器200可以配置为执行本公开的任何或所有技术。在如图8所示的示例中,视频编码器200包括多个功能组件。本公开中所描述的技术可在视频编码器200的各种组件之间共享。在一些示例中,处理器可以配置为执行本公开中所描述的技术中的任一或全部。

视频编码器200的功能组件可以包括分割单元201、可以包括模式选择单元203的预测单元202、运动估计单元204、运动补偿单元205和帧内预测单元206、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲器213和熵编码单元214。

在其他示例中,视频编码器200可包括更多、更少或不同功能的组件。在一个示例中,预测单元202可以包括帧内块复制(IBC)单元。IBC单元可以在IBC模式下执行预测,其中至少一个参考图片是当前视频块所在的图片。

此外,例如运动估计单元204和运动补偿单元205之类的一些组件可以是高度集成的,但是出于描述的目的而在图8的示例中被分开表示。

分割单元201可将图片分割成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块的尺寸。

模式选择单元203可以例如基于误差结果来选择编解码模式(帧内或帧间)之一,并将所得帧内或帧间编解码块提供给残差生成单元207以生成残差块数据并且重构单元212重构编解码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测(CIIP)模式的组合,其中预测是基于帧间预测信号和帧内预测信号。在帧间预测的情况下,模式选择单元203还可以为块选择运动矢量的分辨率(例如,子像素或整数像素精度)。

为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲器213的一个或多个参考帧与当前视频块进行比较来生成当前视频块的运动信息。运动补偿单元205可以基于来自缓冲器213的除了与当前视频块相关联的图片之外的图片的运动信息和解码样点来确定当前视频块的预测视频块。

运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作,例如,取决于当前视频块是在I条带、P条带还是B条带中。

在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以对当前视频块的参考视频块搜索列表0或1的参考图片。运动估计单元204可接着产生指示列表0或列表1中包含参考视频块的参考图片的参考索引和指示当前视频块与参考视频块之间的空间位移的运动矢量。运动估计单元204可输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。

在其他示例中,运动估计单元204可以对当前视频块执行双向预测,运动估计单元204可以对当前视频块的参考视频块搜索列表0中的参考图片,并且还可以对当前视频块的参考视频块搜索列表1中的参考图片。运动估计单元204可接着产生指示列表0和列表1中的参考图片的参考索引,其包含参考视频块和指示参考视频块与当前视频块之间的空间位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。

在一些示例中,运动估计单元204可以输出完整的运动信息集以用于解码器的解码处理。

在一些示例中,运动估计单元204可以不输出当前视频的完整的运动信息集。相反,运动估计单元204可参考另一视频块的运动信息来信令通知当前视频块的运动信息。例如,运动估计单元204可确定当前视频块的运动信息与相邻视频块的运动信息足够相似。

在一个示例中,运动估计单元204可在与当前视频块相关联的语法结构中指示向视频解码器300指示当前视频块具有与另一视频块相同的运动信息的值。

在另一示例中,运动估计单元204可在与当前视频块相关联的语法结构中识别另一视频块和运动矢量差(MVD)。运动矢量差表示当前视频块的运动矢量与指示的视频块的运动矢量之间的差。视频解码器300可以使用所指示的视频块的运动矢量和运动矢量差来确定当前视频块的运动矢量。

如上所述,视频编码器200可以预测性地信令通知运动矢量。可由视频编码器200实施的预测信令技术的两个示例包括高级运动矢量预测(AMVP)和merge模式信令。

帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于同一图片中的其他视频块的解码样点生成当前视频块的预测数据。当前视频块的预测数据可以包括预测视频块和各种语法元素。

残差产生单元207可通过从当前视频块减去(例如,由负号指示)当前视频块的预测视频块来产生当前视频块的残差数据。当前视频块的残差数据可以包括对应于当前视频块中的样点的不同样点分量的残差视频块。

在其他示例中,对于当前视频块,例如在跳过模式中,可能不存在当前视频块的残差数据,并且残差生成单元207可能不执行减法运算。

变换处理单元208可通过对与当前视频块相关联的残余视频块应用一个或多个变换来生成当前视频块的一个或多个变换系数视频块。

在变换处理单元208产生与当前视频块相关联的变换系数视频块之后,量化单元209可基于与当前视频块相关联的一个或多个量化参数(QP)值来量化与当前视频块相关联的变换系数视频块。

逆量化单元210和逆变换单元211可以分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重构残余视频块。重构单元212可以将重构的残余视频块添加到来自预测单元202生成的一个或多个预测视频块的对应样点,以产生存储在缓冲器213中的与当前块相关联的重构视频块。

在重构单元212重构视频块之后,可以执行环路滤波操作以减少视频块中的视频块伪影。

熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收数据时,熵编码单元214可以执行一个或多个熵编码操作以生成熵编码数据并输出包括熵编码数据的比特流。

图9是说明可以说明视频解码器300的示例的框图,视频解码器300可以是图7所示的系统100中的视频解码器114。

视频解码器300可以配置为执行本公开的任何或所有技术。在图8所示的示例中,视频解码器300包括多个功能组件。本公开中所描述的技术可在视频解码器300的各种组件之间共享。在一些示例中,处理器可以配置为执行本公开中所描述的技术中的任一或全部。

在如图9所示的示例,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305、以及重构单元306和缓冲器307。在一些示例中,视频解码器300可以执行通常与关于视频编码器200(图8)描述的编码通道相反的解码通道。

熵解码单元301可以取得编码比特流。编码比特流可以包括熵编码的视频数据(例如,编码的视频数据块)。熵解码单元301可以解码熵编码的视频数据,并且根据熵解码的视频数据,运动补偿单元302可以确定包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息的运动信息。例如,运动补偿单元302可以通过执行AMVP和merge模式来确定这样的信息。

运动补偿单元302可以产生运动补偿块,可能基于插值滤波器执行插值。用于以子像素精度的插值滤波器的标识符可以包括在语法元素中。

运动补偿单元302可使用在视频块的编码期间由视频编码器20使用的内插滤波器来计算参考块的子整数像素的内插值。运动补偿单元302可根据接收的语法信息来确定由视频编码器200使用的内插滤波器并且使用内插滤波器来产生预测块。

运动补偿单元302可以使用一些语法信息来确定用于对编码的视频序列的帧和/或条带进行编码的块的大小,分割信息描述编码视频序列的图片的每个宏块如何被分割,模式指示如何编码每个分区,每个帧间编码块的一个或多个参考帧(和参考帧列表),以及解码编码视频序列的其他信息。

帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空间相邻块形成预测块。逆量化单元303对在比特流中提供并由熵解码单元301解码的量化视频块系数进行逆量化,即去量化。逆变换单元303应用逆变换。

重构单元306可将残余块与由运动补偿单元202或帧内预测单元303生成的对应预测块相加以形成解码块。如果需要,还可以应用去方块滤波器来过滤解码的块,以便去除块状伪影。然后将解码的视频块存储在缓冲器307中,该缓冲器为随后的运动补偿/帧内预测提供参考块并且还产生用于在显示设备上呈现的解码视频。

图10-26示出了可以实现上述技术方案的示例方法,例如,图5-9所示的实施例。

图10示出了视频处理的示例方法1000的流程图。方法1000包括,在操作1010,执行视频和视频的比特流之间的转换,比特流包括根据格式规则的一个或多个接入单元,以及格式规则规定用于操作点OP的第一消息和第二消息在接入单元AU中出现的顺序,以使得第一消息在解码顺序中先于第二消息。

图11示出了视频处理的示例方法1100的流程图。方法1000包括,在操作1110,执行视频和视频的比特流之间的转换,比特流包括根据格式规则的一个或多个接入单元,以及格式规则规定用于操作点OP的多个消息在接入单元中出现的顺序,以使得多个消息的第一消息在解码顺序中先于多个消息的第二消息。

图12示出了视频处理的示例方法1200的流程图。方法1200包括,在操作1210,执行包括图片的视频和视频的比特流之间的转换,比特流符合格式规则,格式规则规定是否在与图片相关的图片标头的开始信令通知第一标志的指示,第一标志指示图片是帧内随机接入点IRAP图片还是渐近解码刷新GDR图片。

图13示出了视频处理的示例方法1300的流程图。方法1300包括,在操作1310,执行包括一个或多个图片的视频和视频的比特流之间的转换,比特流符合格式规则,格式规则不允许对一个或多个图片中的图片进行编解码,以包括具有渐近解码刷新类型的编解码条带网络抽象层NAL单元,并且以与指示图片包括混合类型的NAL单元的标志相关。

图14示出了视频处理的示例方法1400的流程图。方法1400包括,在操作1410,执行包括一个或多个图片的视频和视频的比特流之间的转换,比特流符合格式规则,格式规则允许对一个或多个图片中的图片进行编解码,以包括具有渐近解码刷新类型的编解码条带网络抽象层NAL单元,并且以与指示图片不包括混合类型的NAL单元的标志相关。

图15示出了视频处理的示例方法1500的流程图。方法1500包括,在操作1510,执行视频的图片和视频的比特流之间的转换,比特流符合格式规则,格式规则规定是否在与图片相关的图片参数集PPS中信令通知第一语法元素,图片包括具有条带类型的一个或多个条带,由于第一语法元素等于0,第一语法元素指示在图片标头中信令通知条带类型,否则第一语法元素指示在条带标头中信令通知条带类型。

图16示出了视频处理的示例方法1600的流程图。方法1600包括,在操作1610,根据规则执行视频的图片和视频的比特流之间的转换,转换包括环路滤波过程,以及规则规定与环路滤波操作相关的垂直虚拟边界的总数和水平虚拟边界的总数在图片级别或序列级别中信令通知。

图17示出了视频处理的示例方法1700的流程图。方法1700包括,在操作1710,执行包括一个或多个图片的视频和视频的比特流之间的转换,比特流符合格式规则,格式规则有条件地允许基于第一语法元素通过使用来自其他层的参考图片对一个层内的图片进行编解码,第一语法元素指示来自其他层的参考图片是否存在于比特流中,以及基于第二语法元素在比特流中有条件地信令通知第一语法元素,第二语法元素指示与图片相关的参数集的标识符是否不等于0。

图18示出了视频处理的示例方法1800的流程图。方法1800包括,在操作1810,执行视频的图片和视频的比特流之间的转换,比特流符合格式规则,格式规则规定第一语法元素,第一语法元素使得(a)在解码图片中的编解码树单元CTU之前对上下文变量进行同步处理和(b)在解码CTU之后对上下文变量进行存储处理,在与图片关联的序列参数集SPS中信令通知第一语法元素。

图19示出了视频处理的示例方法1900的流程图。方法1900包括,在操作1910,执行视频的图片和视频的比特流之间的转换,比特流符合格式规则,格式规则规定语法元素,语法元素指示在图片的条带标头中是否存在用于片或片指定编解码树单元CTU行的条目点偏移的信令通知,以及在与图片关联的序列参数集SPS中信令通知语法元素。

图20示出了视频处理的示例方法2000的流程图。方法2000包括,在操作2010,根据规则执行视频和视频的比特流之间的转换,规则规定第一语法元素小于第一预设阈值,第一语法元素指示在与视频关联的视频参数集VPS中的用于输出层集OLS假设参考解码器HRD的参数的数量。

图21示出了视频处理的示例方法2100的流程图。方法2100包括,在操作2110,根据规则执行视频和视频的比特流之间的转换,规则规定语法元素小于预设阈值,语法元素指示与视频关联的视频参数集VPS中的配置文件/层级/级别PTL语法结构的数量。

图22示出了视频处理的示例方法2200的流程图。方法2200包括,在操作2210,根据规则执行视频和视频的比特流之间的转换,规则规定第一语法元素,第一语法元素指示在视频参数集VPS中的解码图片缓冲参数语法结构的数量必须小于或等于第二语法元素,第二语法元素指示被VPS规定的层的数量。

图23示出了视频处理的示例方法2300的流程图。方法2300包括,在操作2310,根据规则执行视频和视频的比特流之间的转换,规则允许通过在比特流中信令通知或通过外部手段提供而使得解码器获得终端网络抽象层NAL单元。

图24示出了视频处理的示例方法2400的流程图。方法2400包括,在操作2410,执行视频和视频的比特流之间的转换,比特流符合格式规则,以及由于语法元素等于0,格式规则限制在比特流中每层只包括一个子图片,指示每层配置为使用层间预测。

图25示出了视频处理的示例方法2500的流程图。方法2500包括,在操作2510,根据规则执行视频和视频的比特流之间的转换,规则规定实施子比特流提取过程以生成用于解码的子比特流,其中,子比特流提取过程配置为从比特流中提取具有目标最高时域标识符的子比特流,以及规则规定在提取过程中,在移除视频编解码层VCL网络抽象层NAL单元时,也删除在与VCL NAL单元关联的补充增强信息(SEI)VCL单元中的填充数据单元和填充补充增强信息SEI消息。

图26示出了视频处理的示例方法2600的流程图。方法2600包括,在操作2610,执行视频的视频单元和视频的比特流之间的转换,比特流符合格式规则,格式规则规定比特流包括第一语法元素,第一语法元素指示视频单元是在有损模式还是无损模式下编解码,以及信令通知第二语法元素指示基于第一语法元素的值有选择地包括应用于视频单元的调色板模式中的转义样点。

接下来提供一些实施例优选的解决方案列表。

A1.一种视频处理方法,包括:执行视频和视频的比特流之间的转换,其中,比特流包括根据格式规则的一个或多个接入单元,以及其中,格式规则规定用于操作点OP的第一消息和第二消息在接入单元AU中出现的顺序,以使得第一消息在解码顺序中先于第二消息。

A2.根据解决方案A1的方法,其中,第一消息包括缓冲期BP补充增强信息SEI消息,以及第二消息包括图片定时(PI)SEI消息。

A3.根据解决方案A1的方法,其中,第一消息包括缓冲期BP补充增强信息SEI消息,以及第二消息包括解码单元(DUI)SEI消息。

A4.根据解决方案A1的方法,其中,第一消息包括图片定时PT补充增强信息SEI消息,以及第二消息包括解码单元(DUI)SEI消息。

A5.一种视频处理方法,包括:执行视频和视频的比特流之间的转换,其中,比特流包括根据格式规则的一个或多个接入单元,以及其中,格式规则规定用于操作点OP的多个消息在接入单元中出现的顺序,以使得多个消息的第一消息在解码顺序中先于多个消息的第二消息。

A6.根据解决方案A5的方法,其中,多个消息包括缓冲期(BP)SEI消息,解码单元信息(DUI)SEI消息,图片定时(PT)SEI消息和子图片级别信息(SLI)SEI消息。

A7.根据解决方案A6的方法,其中,解码顺序是SLI SEI消息、BP SEI消息、PT SEI消息和DUI消息。

接下来提供一些实施例优选的解决方案的另一个列表。

B1.一种视频处理方法,包括:执行包括图片的视频和视频的比特流之间的转换,其中,比特流符合格式规则,其中,格式规则规定是否在与图片相关的图片标头的开始信令通知第一标志的指示,其中,第一标志指示图片是帧内随机接入点IRAP图片还是渐近解码刷新GDR图片。

B2.根据解决方案B1的方法,其中,IRAP图片是一种当比特流的解码从该图片开始时,可以正确解码在输出顺序中的该图片和所有后续图片的图片。

B3.根据解决方案B1或B2的方法,其中,IRAP图片只包括I条带。

B4.根据解决方案B1的方法,其中,GDR图片是一种当比特流的解码从该图片开始时,可以正确解码在解码顺序和输出顺序中的相关恢复点图片和所有后续图片的图片。

B5.根据解决方案B1的方法,其中,格式规则还规定是否基于指示在比特流中信令通知第二标志。

B6.根据解决方案B5的方法,其中,第一标志为irap_or_gdr_pic_flag。

B7.根据解决方案B6的方法,其中,第二标志为no_output_of_prior_pics_flag。

B8.根据解决方案B1-7中任一项的方法,其中,第一标志等于1规定图片是IRAP图片还是GDR图片。

B9.根据解决方案B1-7中任一项的方法,其中,第一标志等于0规定图片既不是IRAP图片也不是GDR图片。

B10.根据解决方案B1-9中任一项的方法,其中,GDR图片的每个网络接入层NAL具有等于GDR_NUT的nal_unit_type语法元素。

接下来提供一些实施例优选的解决方案的另一个列表。

C1.一种视频处理方法,包括:执行包括一个或多个图片的视频和视频的比特流之间的转换,其中,比特流符合格式规则,其中,格式规则不允许对一个或多个图片中的图片进行编解码,以包括具有渐近解码刷新类型的编解码条带网络抽象层NAL单元,并且以与指示图片包括混合类型的NAL单元的标志相关。

C2.一种视频处理方法,包括:执行包括一个或多个图片的视频和视频的比特流之间的转换,其中,比特流符合格式规则,其中,格式规则允许对一个或多个图片中的图片进行编解码,以包括具有渐近解码刷新类型的编解码条带网络抽象层NAL单元,并且以与指示图片不包括混合类型的NAL单元的标志相关。

C3.根据解决方案C1或C2的方法,其中,标志为mixed_nalu_types_in_pic_flag。

C4.根据解决方案C3的方法,其中,标志在图片参数集PPS中。

C5.根据解决方案C1-C4中任一项的方法,其中,图片是渐近解码刷新GDR图片,并且其中,在图片中的每个条带或NAL单元具有等于GDR_NUT的nal_unit_type。

C6.一种视频处理方法,包括:执行视频的图片和视频的比特流之间的转换,其中,比特流符合格式规则,格式规则规定是否在与图片相关的图片参数集PPS中信令通知第一语法元素,其中,图片包括具有条带类型的一个或多个条带,其中,由于第一语法元素等于0,第一语法元素指示在图片标头中信令通知条带类型,否则第一语法元素指示在条带标头中信令通知条带类型。

C7.根据解决方案C6的方法,其中,第一语法元素为mixed_slice_types_in_pic_flag。

C8.根据解决方案C6或C7的方法,其中,由于第二语法元素等于0和/或第三语法元素大于0,信令通知第一语法元素。

C9.根据解决方案C8的方法,其中,第二语法元素规定一个或多个条带中一个或多个片的至少一个特征。

C10.根据解决方案C9的方法,其中,第二语法元素等于0规定一个或多个片是按照光栅扫描顺序的,以及条带信息不包括在PPS中。

C11.根据解决方案C9的方法,其中,第二语法元素等于0规定一个或多个片覆盖图片的矩形区域,以及条带信息在PPS中信令通知。

C12.根据解决方案C9-C11中任一项的方法,其中,第二语法元素为rect_slice_flag。

C13.根据解决方案C8的方法,其中,第三语法元素规定在参考PPS的图片中矩形条带的数量。

C14.根据解决方案C13的方法,其中,第三语法元素为num_slices_in_pic_minus1。

C15.一种视频处理方法,包括:根据规则执行视频的图片和视频的比特流之间的转换,其中,转换包括环路滤波过程,以及其中,规则规定与环路滤波操作相关的垂直虚拟边界的总数和水平虚拟边界的总数在图片级别或序列级别中信令通知。

C16.根据解决方案C15的方法,其中,垂直虚拟边界的总数包括达到在图片参数集PPS中或序列参数集SPS中信令通知的垂直虚拟边界的第一数量N1和达到在图片标头PH中信令通知的额外垂直虚拟边界的第二数量N3,以及其中,水平虚拟边界的总数包括达到在PPS或SPS中信令通知的水平虚拟边界的第三数量N2和达到在PH中信令通知的额外水平虚拟边界的第四数量N4。

C17.根据解决方案C16的方法,其中,N1+N3≤N1并且N2+N4≤N2。

C18.根据解决方案C16或C17的方法,其中,N1=3,N2=3,N3=1,并且N4=1。

接下来提供一些实施例优选的解决方案的另一个列表。

D1.一种视频处理方法,包括:执行包括一个或多个图片的视频和视频的比特流之间的转换,其中,比特流符合格式规则,其中,格式规则有条件地允许基于第一语法元素通过使用来自其他层的参考图片对一个层内的图片进行编解码,第一语法元素指示来自其他层的参考图片是否存在于比特流中,以及其中,基于第二语法元素在比特流中有条件地信令通知第一语法元素,第二语法元素指示与图片相关的参数集的标识符是否不等于0。

D2.根据解决方案D1的方法,其中,第一语法元素为inter_layer_ref_pics_present_flag。

D3.根据解决方案D1或D2的方法,其中,第一语法元素规定是否启用层间预测以及是否可以使用层间参考图片。

D4.根据解决方案D1的方法,其中,第一语法元素为sps_inter_layer_prediction_enabled_flag。

D5.根据解决方案D1-D4中任一项的方法,其中,第一语法元素在序列参数集SPS中。

D6.根据解决方案D1-D4中任一项的方法,其中,参数集是视频参数集VPS。

D7.根据解决方案D6的方法,其中,第二语法元素是sps_video_parameter_set_id。

D8.根据解决方案D6或D7的方法,其中,参数集为VPS提供标识符以作为其他语法元素的参考。

D9.根据解决方案D7的方法,其中,第二语法元素在序列参数集SPS中。

接下来提供一些实施例优选的解决方案的另一个列表。

E1.一种视频处理方法,包括:执行视频的图片和视频的比特流之间的转换,其中,比特流符合格式规则,其中,格式规则规定第一语法元素,第一语法元素使得(a)在解码图片中的编解码树单元CTU之前对上下文变量进行同步处理和(b)在解码CTU之后对上下文变量进行存储处理,其中,在与图片关联的序列参数集SPS中信令通知第一语法元素。

E2.根据解决方案E1的方法,其中,图片关联的图片参数集PPS中不包括第一语法元素。

E3.根据解决方案E1或E2的方法,其中,CTU包括在图片的每个片中的一行编解码树块中的第一编解码树块CTB。

E4.根据解决方案E1-E3中任一项的方法,其中,第一语法元素为entropy_coding_sync_enabled_flag。

E5.根据解决方案E1-E3中任一项的方法,其中,第一语法元素为sps_entropy_coding_sync_enabled_flag。

E6.根据解决方案E1-E5中任一项的方法,其中,格式规则规定第二语法元素,第二语法元素指示在图片的条带标头中是否存在用于片或片指定CTU行的条目点偏移的信令通知,并且其中,在与图片关联的SPS中信令通知第二语法元素。

E7.一种视频处理方法,包括:执行视频的图片和视频的比特流之间的转换,其中,比特流符合格式规则,其中,格式规则规定语法元素,语法元素指示在图片的条带标头中是否存在用于片或片指定编解码树单元CTU行的条目点偏移的信令通知,以及其中,在与图片关联的序列参数集SPS中信令通知语法元素。

E8.根据解决方案E7的方法,其中,格式规则允许基于值等于1的语法元素信令通知条目点偏移。

E9.根据解决方案E7或E8的方法,其中,图片关联的图片参数集PPS不包括语法元素。

E10.根据解决方案E7-E9中任一项的方法,其中,语法元素为entry_point_offsets_present_flag。

E11.根据解决方案E7-E9中任一项的方法,其中,语法元素为sps_entry_point_offsets_present_flag。

接下来提供一些实施例优选的解决方案的另一个列表。

F1.一种视频处理方法,包括:根据规则执行视频和视频的比特流之间的转换,其中,规则规定第一语法元素小于第一预设阈值,第一语法元素指示在与视频关联的视频参数集VPS中的用于输出层集OLS假设参考解码器HRD的参数的数量。

F2.根据解决方案1的方法,其中,第一语法元素为vps_num_ols_timing_hrd_params_minus1。

F3.根据解决方案F1或F2的方法,其中,第一预设阈值是多层输出层集(表示为NumMultiLayerOlss)的数量减1。

F4.根据解决方案F1-F3中任一项的方法,其中,当不在比特流中信令通知第一语法元素时,第一语法元素被推断为0。

F5.根据解决方案F1-F4中任一项的方法,其中,规则规定第二语法元素,第二语法元素指示与视频关联的视频参数集VPS中的配置文件/层级/级别PTL语法结构的数量小于第二预设阈值。

F6.一种视频处理方法,包括:根据规则执行视频和视频的比特流之间的转换,其中,规则规定语法元素,语法元素小于预设阈值指示与视频关联的视频参数集VPS中的配置文件/层级/级别PTL语法结构的数量。

F7.根据解决方案F6的方法,其中,语法元素是vps_num_ptls_minus1。

F8.根据解决方案F6或F7的方法,其中,预设阈值是输出层集(表示为TotalNumOlss)的总数。

F9.根据解决方案F1-F8中任一项的方法,其中,在比特流中信令通知预设阈值和语法元素的差值。

F10.根据解决方案F9的方法,其中,使用一元编解码信令通知差值。

F11.根据解决方案F9的方法,其中,使用指数-哥伦布EG编解码信令通知差值。

F12.一种视频处理方法,包括:根据规则执行视频和视频的比特流之间的转换,其中,规则规定第一语法元素,第一语法元素指示在视频参数集VPS中的解码图片缓冲参数语法结构的数量必须小于或等于第二语法元素,第二语法元素指示被VPS规定的层的数量。

F13.根据解决方案F12的方法,其中,在比特流中信令通知第一语法元素和预设阈值的差值。

F14.根据解决方案F12的方法,其中,在比特流中信令通知第二语法元素和预设阈值的差值。

F15.根据解决方案F13或F14的方法,其中,使用一元编解码信令通知差值。

F16.根据解决方案F13或F14的方法,其中,使用指数-哥伦布EG编解码信令通知差值。

F17.一种视频处理方法,包括:根据规则执行视频和视频的比特流之间的转换,其中,规则允许通过在比特流中信令通知或通过外部手段提供而使得解码器获得终端网络抽象层NAL单元。

F18.根据解决方案F17的方法,其中,终端NAL单元是比特流NAL单元的终端EOB。

F19.根据解决方案F9的方法,其中,终端NAL单元是序列NAL单元的终端EOS。

F20.根据解决方案F17-F19中任一项的方法,其中,外部手段包括参数集。

F21.一种视频处理方法,包括:执行视频和视频的比特流之间的转换,其中,比特流符合格式规则,以及其中,由于语法元素等于0,格式规则限制在比特流中每层只包括一个子图片,指示每层配置为使用层间预测。

F22.根据解决方案F21的方法,其中,语法元素是vps_independent_layer_flag。

接下来提供一些实施例优选的解决方案的另一个列表。

G1.一种视频处理方法,包括:根据规则执行视频和视频的比特流之间的转换,其中,规则规定实施子比特流提取过程以生成用于解码的子比特流,其中,子比特流提取过程配置为从比特流中提取具有目标最高时域标识符的子比特流,以及其中,规则规定在提取过程中,在移除视频编解码层VCL网络抽象层NAL单元时,也删除在与VCL NAL单元关联的补充增强信息(SEI)VCL单元中的填充数据单元和填充补充增强信息SEI消息。

G2.根据解决方案G1的方法,其中,基于VCL NAL属于的层的标识符移除VCL NAL单元。

G3.根据解决方案G2的方法,其中,标识符为nuh_layer_id。

G4.根据解决方案G1的方法,其中,比特流符合格式规则,格式规则规定包括具有填充有效载荷的SEI消息的SEI NAL单元不包括具有与填充有效载荷不同的有效载荷的SEI消息。

G5.根据解决方案G1的方法,其中,比特流符合格式规则,格式规则规定包括具有填充有效载荷的SEI消息的SEI NAL单元配置为不包括具有任何其他有效载荷的另一SEI消息。

G6.根据解决方案G1的方法,其中,VCL NAL单元最多有一个关联的填充NAL单元。

G7.一种视频处理方法,包括:执行视频的视频单元和视频的比特流之间的转换,其中,比特流符合格式规则,其中,格式规则规定比特流包括第一语法元素,第一语法元素指示视频单元是在有损模式还是无损模式下编解码,以及其中,信令通知第二语法元素指示基于第一语法元素的值有选择地包括应用于视频单元的调色板模式中的转义样点。

G8.根据解决方案G7的方法,其中,转义样点的二值化方法基于第一语法元素。

G9.根据解决方案G7的方法,其中,基于标志确定在转义样点的算术编解码中的上下文编解码。

G10.根据解决方案G7-G9中任一项的方法,其中,视频单元是编解码单元CU或编解码树单元CTU。

接下来提供一些实施例优选的解决方案的另一个列表。

P1.一种视频处理方法,包括执行视频的图片和视频的编解码表示之间的转换,其中,图片中的子图片的数量作为字段包含在编解码表示中,字段的比特宽度依赖于子图片的数量的值。

P2.根据解决方案P1的方法,其中,字段表示使用码字的子图片的数量。

P3.根据解决方案P2的方法,其中,码字包括哥伦布码字。

P4.根据解决方案P1至P3中任一个的方法,其中,子图片的数量的值被限制为小于或等于图片内适合的编解码树块的整数个数。

P5.根据解决解决方案P1至P4中任一个的方法,其中,字段依赖于与编解码表示相关联的编解码级别。

P6.一种视频处理方法,包括执行视频的视频区域和视频的编解码表示之间的转换,其中编解码表示符合格式规则,其中,格式规则指定由于视频区域不包含任何子图片,省略指示子图片标识符的语法元素。

P7.根据解决方案P6的方法,其中,编解码表示包括具有0值的字段,具有0值的字段指示视频区域不包括任何子图片。

P8.一种视频处理方法,包括执行视频的视频区域和视频的编解码表示之间的转换,其中,编码表示符合格式规则,其中,格式规则指定在编解码表示的视频区域标头级别省略视频区域中子图片的标识符。

P9.根据解决方案P8的方法,其中,编解码表示根据子图片在视频区域标头中列出的顺序以数字方式识别子图片。

P10.一种视频处理方法,包括执行视频的视频区域和视频的编解码表示之间的转换,其中,编解码表示符合格式规则,其中,格式规则指定在序列参数集级别或图片参数集级别包括视频区域中子图片的标识符和/或子图片的标识符的长度。

P11.根据解决方案P10的方法,其中,长度包含在图片参数集级别中。

P12.一种视频处理方法,包括执行视频的视频区域和视频的编解码表示之间的转换,其中,编解码表示符合格式规则,其中,格式规则指定在视频序列级别的编解码表示中包括字段,以指示子图片标识符长度字段是否包含在视频序列级别的编解码表示中。

P13.根据解决方案P12的方法,其中,格式规则指定在编解码表示中的另一字段指示视频区域的长度标识符包括在编解码表示中的情况下,设置字段为1。

P14.一种视频处理方法,包括执行视频的视频区域和视频的编解码表示之间的转换,其中编解码表示符合格式规则,并且其中,格式规则规定在编解码表示中包括指示视频区域是否可以用作参考图片的指示。

P15.根据解决方案P14的方法,其中,指示包括层ID和与视频区域关联的索引或ID值。

P16.一种视频处理方法,包括执行视频的视频区域和视频的编解码表示之间的转换,其中,编解码表示符合格式规则,并且其中,格式规则规定在编解码表示中包括指示以指示视频区域是否可以使用来自与参考层的视频区域关联的多个样点值的层间预测(ILP)。

P17.根据解决方案P16的方法,其中,指示包括在序列级别、图片级别或者视频级别中。

P18.根据解决方案P16的方法,其中,参考层的视频区域包括视频区域内的样点的至少一个并置样点。

P19.根据解决方案P16的方法,其中,指示包括在一个或多个补充增强信息SEI消息中。

P20.一种视频处理方法,包括在确定应用视频的接入单元中的操作点的第一消息和第二消息存在于视频的编解码表示中时,配置例如在解码顺序中第一消息优于第二消息的编解码表示;以及基于该配置,执行视频的视频区域和编解码表示之间的转换。

P21.根据解决方案P20的方法,其中,第一消息包括缓冲期BP增强补充信息SEI消息,以及第二消息包括图片定时(PT)SEI消息。

P22.根据解决方案P20的方法,其中,第一消息包括缓冲期BP补充增强信息SEI消息,以及第二消息包括解码单元(DUI)SEI消息。

P23.根据解决方案P20的方法,其中,第一消息包括图片定时PT补充增强信息SEI消息,以及第二消息包括解码单元(DUI)SEI消息。

P24.上述任一方案的方法,其中,视频区域包括视频的子图片。

P25.上述任一方案的方法,其中,转换包括解析和解码编解码表示以生成视频。

P26.上述任一方案的方法,其中,转换包括对视频进行编码以生成编解码表示。

P27.一种视频解码装置,包括处理器,处理器被配置为执行方案P1至P26中的任一个或多个的方法。

P28.一种视频编码装置,包括处理器,处理器被配置为执行方案P1至P26中的任一个或多个的方法。

P29.一种其上存储有计算机代码的计算机程序产品,代码在被执行时使处理器执行方案P1至P26中任一个的方法。

接下来提供一些实施例优选的解决方案的另一个列表。

O1.上述任一方案的方法,其中,转换包括从比特流中解码视频。

O2.上述任一方案的方法,其中,转换包括将视频编码到比特流中。

O3.上述任一方案的方法,其中,转换包括从视频中产生比特流,并且其中,方法还包括:将比特流存储到非暂时性计算机可读记录介质中。

O4.一种将表示视频的比特流存储到计算机可读记录介质中的方法,包括:根据上述任一方案的方法从视频中产生比特流;以及将比特流写入计算机可读记录介质中。

O5.一种视频处理装置,包括处理器,其中,处理器配置为执行上述任一方案的方法。

O6.一种其上存储有指令的计算机可读介质,其中,指令在被执行时使处理器执行上述任一方案的方法。

O7.一种计算机可读介质,存储有上述任一方案的方法生成的比特流。

O8.一种用于存储比特流的视频处理装置,其中,视频处理装置配置为执行上述任一方案的方法。

O9.使用上述任一方案中的方法生成的比特流,该比特流被存储在计算机可读介质上。

本申请文件中描述的公开和其他解决方案、示例、实施例、模块和功能操作可以在数字电子电路、或计算机软件、固件或硬件中实现,包括本说明书中所公开的结构及其结构等效体,或其中一个或多个的组合。本说明书中公开的内容和其他实施例可以实施为一个或多个计算机程序产品,即一个或多个编码在有形的且非易失的计算机可读介质上的计算机程序指令的模块,以供数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储设备、影响机器可读传播信号的物质组成或其中一个或其中多个的组合。术语“数据处理单元”或“数据处理装置”包括用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多处理器或计算机组。除硬件外,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理系统、操作系统或其中一个或多个的组合。传播的信号是人为生成的信号,例如,机器生成的电、光或电磁信号,其被生成以编码信息以传输到合适的接收器设备。

计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言(包括编译语言或解释语言)编写,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或其他适合在计算环境中使用的单元。计算机程序不一定与文件系统中的文件对应。程序可以存储在保存其他程序或数据的文件的部分中(例如,存储在标记语言文档中的一个或多个脚本)、专用于该程序的单个文件中、或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以部署在一台或多台计算机上来执行,这些计算机位于一个站点上或分布在多个站点上,并通过通信网络互连。

本说明书中描述的处理和逻辑流可以通过一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序,通过在输入数据上操作并生成输出来执行功能。处理和逻辑流也可以通过特殊用途的逻辑电路来执行,并且装置也可以实现为特殊用途的逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。

例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型数字计算机的任何一个或多个。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本组件是执行指令的处理器和存储指令和数据的一个或多个存储设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如,磁盘、磁光盘或光盘,或通过操作耦合到一个或多个大容量存储设备来从其接收数据或将数据传输到一个或多个大容量存储设备,或两者兼有。然而,计算机不一定具有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如,内部硬盘或可移动硬盘;磁光盘;以及CDROM和DVDROM盘。处理器和存储器可以由专用逻辑电路来补充,或合并到专用逻辑电路中。

虽然本专利文件包含许多细节,但不应将其解释为对任何发明或权利要求范围的限制,而应解释为对特定发明的特定实施例的特征的描述。本专利文件在单独实施例的上下文描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种功能也可以在多个实施例中单独实施,或在任何合适的子组合中实施。此外,尽管上述特征可以描述为在某些组合中起作用,甚至最初要求是这样,但在某些情况下,可以从组合中移除权利要求组合中的一个或多个特征,并且权利要求的组合可以指向子组合或子组合的变体。

同样,尽管附图中以特定顺序描述了操作,但这不应理解为要获得想要的结果必须按照所示的特定顺序或顺序执行此类操作,或执行所有说明的操作。此外,本专利文件所述实施例中各种系统组件的分离不应理解为在所有实施例中都需要这样的分离。

仅描述了一些实现和示例,其他实现、增强和变体可以基于本专利文件中描述和说明的内容做出。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号