具有包含多个经编码图片分区的网络抽象层单元的视频译码的制作方法

文档序号:7992939阅读:146来源:国知局
具有包含多个经编码图片分区的网络抽象层单元的视频译码的制作方法
【专利摘要】视频编码器产生网络抽象层NAL单元,所述NAL单元含有视频数据的多个经编码图片分区。所述视频编码器产生位流,所述位流包含表示经熵编码的第一语法元素的可变长度值、表示经熵编码的第二语法元素的可变长度值及表示偏移语法元素的固定长度值。所述偏移语法元素中的每一者的长度可基于所述第一语法元素来确定。视频解码器在解码所述经编码图片分区时使用所述第一语法元素、所述第二语法元素及所述偏移语法元素。
【专利说明】具有包含多个经编码图片分区的网络抽象层单元的视频译 码
[0001] 本申请案主张于2011年11月4日申请的第61/555,932号美国临时专利申请案 及于2011年11月8日申请的第61/557,259号美国临时专利申请案的权利,所述两个申请 案的全部内容特此以引用的方式并入。

【技术领域】
[0002] 本发明涉及视频译码(即,视频数据的编码及/或解码)。

【背景技术】
[0003] 可将数字视频能力并入到广泛范围的装置中,所述装置包含数字电视、数字直播 系统、无线广播系统、个人数字助理(PDA)、膝上型计算机或桌上型计算机、平板计算机、电 子书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、 蜂窝式或卫星无线电电话、所谓的"智能电话"、视频电传会议装置、视频流式传输装置及其 类似者。数字视频装置实施视频压缩技术,例如在由MPEG-2、MPEG-4、ITU-T H. 263、ITU-T H. 264/MPEG-4第10部分(进阶视频译码(AVC))定义的标准、目前在开发中的高效率视频 译码(HEVC)标准及这些标准的扩展中所描述的那些视频压缩技术。视频装置可通过实施 这些视频压缩技术来更有效地发射、接收、编码、解码及/或存储数字视频信息。
[0004] 视频压缩技术执行空间(图片内)预测及/或时间(图片间)预测以减少或移除 视频序列中所固有的冗余。对于基于块的视频译码,可将视频切片(即,视频帧或视频帧的 部分)分割成视频块,视频块还可被称为树块、译码单元(CU)及/或译码节点。图片的经 帧内译码(I)切片中的视频块是使用相对于同一图片中的相邻块中的参考样本的空间预 测来编码。图片的经帧间译码(P或B)切片中的视频块可使用相对于同一图片中的相邻块 中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称为 帧,且参考图片可被称为参考帧。
[0005] 空间或时间预测产生待译码的块的预测性块。残余数据表示待译码的原始块与预 测性块之间的像素差。根据指向形成预测性块的参考样本的块的运动向量及指示经译码块 与预测性块之间的差的残余数据来编码经帧间译码块。根据帧内译码模式及残余数据来编 码经帧内译码块。为了进一步压缩,可将残余数据从像素域变换到变换域,从而产生残余系 数,所述残余系数接着可经量化。可扫描最初排列成二维阵列的经量化系数以便产生系数 的一维向量,且可应用熵译码以达成甚至更多压缩。


【发明内容】

[0006] -股来说,视频编码器产生位流,所述位流包含表示经熵编码的第一语法元素的 可变长度值、表示经熵编码的第二语法元素的可变长度值及表示偏移语法元素的固定长度 值。所述偏移语法元素中的每一者的长度可基于所述第一语法元素来确定。所述系列偏移 语法元素中的偏移语法元素的数目可基于所述第二语法元素来确定。多个经编码图片分区 在网络抽象层(NAL)单元内的位置可基于所述偏移语法元素来确定。视频解码器接收所述 位流,熵解码所述第一语法元素及所述第二语法元素,且使用所述第一语法元素及所述第 二语法元素来剖析所述偏移语法元素。所述视频解码器使用所述偏移语法元素来确定所述 经编码图片分区在所述NAL单元内的位置。所述视频解码器解码所述经编码图片分区。
[0007] 在一个方面中,本发明描述一种方法,所述方法包括熵编码第一语法元素、第二语 法元素及一系列偏移语法元素。所述偏移语法元素中的每一者的长度可基于所述第一语法 元素来确定。所述系列偏移语法元素中的偏移语法元素的数目可基于所述第二语法元素来 确定。多个经编码图片分区在NAL单元内的位置可基于所述偏移语法元素来确定。所述方 法还包括产生位流,所述位流包含表示所述经熵编码的第一语法元素的可变长度值、表示 所述经熵编码的第二语法元素的可变长度值及表示所述偏移语法元素的固定长度值。
[0008] 在另一方面中,本发明描述一种计算装置,所述计算装置包括经配置以熵编码第 一语法元素、第二语法元素及一系列偏移语法元素的一或多个处理器。所述偏移语法元素 中的每一者的长度可基于所述第一语法元素来确定。所述系列偏移语法元素中的偏移语法 元素的数目可基于所述第二语法元素来确定。多个经编码图片分区在NAL单元内的位置可 基于所述偏移语法元素来确定。所述一或多个处理器还经配置以产生位流,所述位流包含 表示所述经熵编码的第一语法元素的可变长度值、表示所述经熵编码的第二语法元素的可 变长度值及表示所述偏移语法元素的固定长度值。
[0009] 在另一方面中,本发明描述一种计算装置,所述计算装置包括用于熵编码第一语 法元素、第二语法元素及一系列偏移语法元素的装置。所述偏移语法元素中的每一者的长 度可基于所述第一语法元素来确定。所述系列偏移语法元素中的偏移语法元素的数目可基 于所述第二语法元素来确定。多个经编码图片分区在NAL单元内的位置可基于所述偏移语 法元素来确定。所述计算装置还包括用于产生位流的装置,所述位流包含表示所述经熵编 码的第一语法元素的可变长度值、表示所述经熵编码的第二语法元素的可变长度值及表示 所述偏移语法元素的固定长度值。
[0010] 在另一方面中,本发明描述一种计算机可读存储媒体,其存储在由计算装置的一 或多个处理器执行时配置所述计算装置以熵编码第一语法元素、第二语法元素及一系列偏 移语法元素的指令。所述偏移语法元素中的每一者的长度可基于所述第一语法元素来确 定。所述系列偏移语法元素中的偏移语法元素的数目可基于所述第二语法元素来确定。多 个经编码图片分区在NAL单元内的位置可基于所述偏移语法元素来确定。另外,所述指令 配置所述计算装置以产生位流,所述位流包含表示所述经熵编码的第一语法元素的可变长 度值、表示所述经熵编码的第二语法元素的可变长度值及表示所述偏移语法元素的固定长 度值。
[0011] 在另一方面中,本发明描述一种用于解码视频数据的方法。所述方法包括接收位 流,所述位流包含表示第一语法元素的经熵编码的可变长度值、表示第二语法元素的经熵 编码的可变长度值及一系列偏移语法元素。所述方法还包括熵解码所述第一语法元素及所 述第二语法元素。此外,所述方法包括基于所述第一语法元素确定所述偏移语法元素中的 每一者的长度。所述方法还包括基于所述第二语法元素确定所述系列偏移语法元素中的偏 移语法元素的数目。另外,所述方法包括至少部分基于所述偏移语法元素中的每一者的所 述长度及所述系列偏移语法元素中的偏移语法元素的所述数目剖析所述偏移语法元素。此 夕卜,所述方法包括基于所述偏移语法元素确定多个经编码图片分区在NAL单元内的位置。 所述方法还包括解码所述经编码图片分区。
[0012] 在另一方面中,本发明描述一种计算装置,所述计算装置包括经配置以接收位流 的一或多个处理器,所述位流包含表示第一语法元素的经熵编码的可变长度值、表示第二 语法元素的经熵编码的可变长度值及一系列偏移语法元素。所述一或多个处理器还经配置 以熵解码所述第一语法元素及所述第二语法元素。所述一或多个处理器还经配置以基于所 述第一语法元素确定所述偏移语法元素中的每一者的长度。另外,所述一或多个处理器经 配置以基于所述第二语法元素确定所述系列偏移语法元素中的偏移语法元素的数目。所述 一或多个处理器还经配置以至少部分基于所述偏移语法元素中的每一者的所述长度及所 述系列偏移语法元素中的偏移语法元素的所述数目剖析所述偏移语法元素。此外,所述一 或多个处理器经配置以基于所述偏移语法元素确定多个经编码图片分区在NAL单元内的 位置。所述一或多个处理器还经配置以解码所述经编码图片分区。
[0013] 在另一方面中,本发明描述一种计算装置,所述计算装置包括用于接收位流的装 置,所述位流包含表示第一语法元素的经熵编码的可变长度值、表示第二语法元素的经熵 编码的可变长度值及一系列偏移语法元素。所述计算装置还包括用于熵解码所述第一语法 元素及所述第二语法元素的装置。另外,所述计算装置包括用于基于所述第一语法元素确 定所述偏移语法元素中的每一者的长度的装置。所述计算装置还包括用于基于所述第二语 法元素确定所述系列偏移语法元素中的偏移语法元素的数目的装置。此外,所述计算装置 包括用于至少部分基于所述偏移语法元素中的每一者的所述长度及所述系列偏移语法元 素中的偏移语法元素的所述数目剖析所述偏移语法元素的装置。另外,所述计算装置包括 用于基于所述偏移语法元素确定多个经编码图片分区在NAL单元内的位置的装置。所述计 算装置还包括用于解码所述经编码图片分区的装置。
[0014] 在另一方面中,本发明描述一种计算机可读存储媒体,其存储在由计算装置的一 或多个处理器执行时配置所述计算装置以接收位流的指令,所述位流包含表示第一语法元 素的经熵编码的可变长度值、表示第二语法元素的经熵编码的可变长度值及一系列偏移语 法元素。此外,所述指令使所述计算装置熵解码所述第一语法元素及所述第二语法元素。所 述指令还使所述计算装置基于所述第一语法元素确定所述偏移语法元素中的每一者的长 度。另外,所述指令使所述计算装置基于所述第二语法元素确定所述系列偏移语法元素中 的偏移语法元素的数目。另外,所述指令使所述计算装置至少部分基于所述偏移语法元素 中的每一者的所述长度及所述系列偏移语法元素中的偏移语法元素的所述数目剖析所述 偏移语法元素。所述指令还使所述计算装置基于所述偏移语法元素确定多个经编码图片分 区在NAL单元内的位置。另外,所述指令使所述计算装置解码所述经编码图片分区。
[0015] 本发明的一或多个实例的细节陈述于随附图式及以下描述中。其它特征、目标及 优势将从所述描述、所述图式及权利要求书而显而易见。

【专利附图】

【附图说明】
[0016] 图1是说明可利用本发明中所描述的技术的实例视频译码系统的框图。
[0017] 图2是说明可实施本发明中所描述的技术的实例视频编码器的框图。
[0018] 图3是说明可实施本发明中所描述的技术的实例视频解码器的框图。
[0019] 图4是说明根据本发明的一或多种技术的视频编码器的实例操作的流程图。
[0020] 图5是说明根据本发明的一或多种技术的视频解码器的实例操作的流程图。
[0021] 图6是根据本发明的一或多种技术的视频编码器的用于产生具有字节对准的切 片标头的经译码切片NAL单元的实例操作的流程图。
[0022] 图7是说明根据本发明的一或多种技术的视频编码器的用以产生字节对准的切 片标头的实例操作的流程图。
[0023] 图8是根据本发明的一或多种技术的视频解码器的实例操作的流程图,其中所述 视频解码器接收具有字节对准的切片标头的经译码切片NAL单元。
[0024] 图9是说明波前并行处理的概念图。
[0025] 图10是说明在将图片分割成多个瓦片时的实例译码次序的概念图。
[0026] 图11是根据本发明的一或多个方面的视频编码器的用以产生位流的实例操作的 流程图,所述位流包含表示与NAL单元内的经编码图片分区的偏移相关联的语法元素的可 变长度值。
[0027] 图12是根据本发明的一或多个方面的视频解码器的用以解码通过位流表示的视 频数据的实例操作的流程图,所述位流包含表示与NAL单元内的经编码图片分区的偏移相 关联的语法元素的可变长度值。

【具体实施方式】
[0028] 图片包含多个树块。树块与图片内的二维像素块相关联。视频编码器将图片划 分成多个图片分区。举例来说,视频编码器可将图片划分成熵切片、瓦片或波前并行处理 (WPP)波。换句话说,本发明可使用术语"图片分区"来一股地指代熵切片、瓦片或WPP波。 图片分区与图片的树块的非重迭子集相关联。举例来说,图片的每一树块可与图片分区中 的恰好一者相关联。视频编码器可产生包含与切片相关联的一或多个经编码图片分区的经 译码切片网络抽象层(NAL)单元。
[0029] 在一些实例中,视频解码器可并行地解码切片的经编码图片分区。为了并行地解 码切片的经编码图片分区,视频编码器可在经译码切片NAL单元内用信号表示经编码图片 分区的入口点。经编码图片分区的入口点可为经编码图片分区的第一位的位置。因为视频 解码器能够确定经编码图片分区的入口点,所以视频解码器可能够将不同经编码图片分区 指派给解码器的不同处理核心以供并行解码。
[0030] 为了用信号表示瓦片的入口点,视频编码器可产生一系列偏移语法元素。偏移语 法元素中的每一者可指示瓦片中的字节的数目。另外,视频编码器可产生两个额外语法元 素。切片中的瓦片的数目可基于第一额外语法元素来确定。用于偏移语法元素中的每一者 中的位的数目可基于第二额外语法元素来确定。在现有实施方案中,额外语法元素中的每 一者在位流中始终使用5位无正负号整数来表示。
[0031] 始终将额外语法元素表示为5位无正负号整数可不必要地增加位流中的位的数 目。此外,始终将额外语法元素表示为5位无正负号整数可将偏移语法元素的数目限于32。 根据本发明的一或多种技术,视频编码器可熵编码(例如,使用无正负号整数〇阶指数哥伦 布译码语法元素 ue(v),其中左位居首)额外语法元素。因为视频编码器熵编码额外语法元 素,所以在位流中使用位的可变长度序列来表示额外语法元素。在许多状况下,位的这些可 变长度序列可使用少于5位的位无正负号整数来表示额外语法元素。另外,这些额外语法 元素的熵译码可允许视频编码器用信号表示32个以上偏移语法元素。
[0032] 在一些情况下,特定视频解码器可未经配置以并行地解码经编码图片分区。即,一 些视频解码器可在并行处理方面具有不同能力。在这些情况下,用以用信号表示经编码图 片分区的入口点的位对视频解码器无用。
[0033] 根据本发明的技术,视频编码器可产生含有视频数据的多个经编码图片分区的 VCLNAL单元。另外,视频编码器可产生补充增强信息(SEI)消息,SEI消息指示NAL单元内 的经编码图片分区的入口点。为了解释容易起见,本发明可将指示经译码切片NAL单元中 的经编码图片分区的入口点的SEI消息称为"入口点SEI消息"。可(例如)在非VCL NAL 单元(例如,具有SEI类型的非VCL NAL单元)中提供入口点SEI消息。
[0034] 媒体感知网络元件(MANE)可经配置有指示特定视频解码器的配置的数据。基于 此数据,MANE可经配置以仅在视频解码器经配置以并行地解码经编码图片分区的情况下将 入口点SEI消息发射到视频解码器。因为MANE不发射视频解码器未经配置以使用的数据, 所以可节省带宽。此外,因为入口点是在SEI消息中用信号表示,所以无论经译码切片NAL 单元是否包含指示经译码图片分区的位置的数据,皆可不需要在经译码切片NAL单元中用 信号表示。此情形帮助减少经译码切片NAL单元中的位的数目且藉此进一步节省带宽。
[0035] 附加图式说明实例。在附加图式中由参考数字指示的元件对应于以下描述中由相 似参考数字指示的元件。在本发明中,具有以序数词(例如,"第一"、"第二"、"第三"等)开 始的名称的元件未必暗示元件具有特定次序。更确切地说,这些序数词仅用以指代相同或 类似类型的不同元件。
[0036] 图1为说明可利用本发明的技术的实例视频译码系统10的框图。如本文中所描 述地使用,术语"视频译码器"一股指代视频编码器及视频解码器两者。在本发明中,术语 "视频译码"或"译码"可一股地指代视频编码或视频解码。
[0037] 如图1中所展示,视频译码系统10包含源装置12及目的地装置14。源装置12产 生经编码视频数据。因此,源装置12可被称为视频编码装置或视频编码设备。目的地装置 14可解码由源装置12产生的经编码视频数据。因此,目的地装置14可被称为视频解码装 置或视频解码设备。源装置12及目的地装置14可为视频译码装置或视频译码设备的实例。
[0038] 源装置12及目的地装置14可包括广泛范围的装置,包含桌上型计算机、行动计 算装置、笔记型(例如,膝上型)计算机、平板计算机、机顶盒、例如所谓的"智能"电话等电 话手持机、电视、摄影机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机(in-car computer)或其类似者。
[0039] 目的地装置14可经由信道16从源装置12接收经编码视频数据。信道16可包括 能够将经编码视频数据从源装置12移动到目的地装置14的类型的媒体或装置。在一个 实例中,信道16可包括使源装置12能够实时将经编码视频数据直接传输到目的地装置14 的一或多个通信媒体。在此实例中,源装置12可根据例如无线通信协定等通信标准调制经 编码视频数据,且可将经调制视频数据发射到目的地装置14。一或多个通信媒体可包含无 线及/或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。一或多个通信媒体可 形成基于包的网络(例如,局域网、广域网或全球网络(例如,因特网))的部分。一或多个 通信媒体可包含路由器、交换器、基站或促进从源装置12到目的地装置14的通信的其它装 备。
[0040] 在另一实例中,信道16可包含存储由源装置12产生的经编码视频数据的存储媒 体。在此实例中,目的地装置14可经由磁盘存取或卡存取来存取存储媒体。存储媒体可包 含多种本地存取的数据存储媒体,例如蓝光光盘、DVD、CD-ROM、快闪存储器或用于存储经编 码视频数据的其它合适数字存储媒体。
[0041] 在另一实例中,信道16可包含存储由源装置12产生的经编码视频的文件服务器 或另一中间存储装置。在此实例中,目的地装置14可经由流式传输或下载来存取存储于文 件服务器或其它中间存储装置处的经编码视频数据。文件服务器可为能够存储经编码视频 数据且将经编码视频数据发射到目的地装置14的类型的服务器。实例文件服务器包含网 络服务器(例如,用于网站)、文件传送协定(FTP)服务器、网络附接存储(NAS)装置及本地 磁盘驱动器。
[0042] 目的地装置14可经由例如因特网连接等标准数据连接来存取经编码视频数据。 数据连接的实例类型可包含适合于存取存储于文件服务器上的经编码视频数据的无线信 道(例如,Wi-Fi连接)、有线连接(例如,DSL、缆线调制解调器等)或两者的组合。经编码 视频数据从文件服务器的传输可为流式传输、下载传输或两者的组合。
[0043] 本发明的技术不必限于无线应用或设定。所述技术可应用于视频译码以支持多 种多媒体应用,例如空中电视广播、有线电视发射、卫星电视发射、流式视频传输(例如,经 由因特网)、编码视频数据以存储于数据存储媒体上、解码存储于数据存储媒体上的视频数 据,或其它应用。在一些实例中,视频译码系统10可经配置以支持单向或双向视频传输以 支持例如视频流式传输、视频回放、视频广播及/或视频电话等应用。
[0044] 在图1的实例中,源装置12包含视频源18、视频编码器20及输出接口 22。在一 些实例中,输出接口 22可包含调制器/解调制器(调制解调器)及/或发射器。视频源18 可包含视频俘获装置(例如,视频摄影机)、含有先前俘获的视频数据的视频存档、从视频 内容提供者接收视频数据的视频馈入接口及/或用于产生视频数据的计算机图形系统,或 视频数据的这些源的组合。
[0045] 视频编码器20可编码来自视频源18的视频数据。在一些实例中,源装置12可经 由输出接口 22将经编码视频数据直接发射到目的地装置14。经编码视频数据还可存储到 存储媒体或文件服务器上以供稍后由目的地装置14存取以用于解码及/或播放。
[0046] 在图1的实例中,目的地装置14包含输入接口 28、视频解码器30及显示装置32。 在一些实例中,输入接口 28可包含接收器及/或调制解调器。目的地装置14的输入接口 28可经由信道16接收经编码视频数据。显示装置32可与目的地装置14集成或可在目的 地装置14外部。一股来说,显示装置32显示经解码视频数据。显示装置32可包括多种显 示装置,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(0LED)显示器或另一类型 的显示装置。
[0047] 视频编码器20及视频解码器30可根据例如目前在开发中的高效率视频译码 (HEVC)标准等视频压缩标准操作且可遵照HEVC测试模型(腿)。被称为"HEVC工作草案 4"或"WD4"的即将到来的HEVC标准的新近草案在Bross等人的"WD4 :Working Draft4of High-Efficiency Video Coding"(ITU-T SG16WP3 及 IS0/IEC JTC1/SC29/WG11 视频译码联 合协作小组(JCT-VC)于2011年7月在意大利都灵的第6次会议)中描述,WD4可从2012 年 9 月 27 日起从 http ://phenix. int-evry. fr/jct/doc_end_user/documents/6_Torino/ wgll/JCTVC-F803-v3. zip下载,WD4的全部内容以引用的方式并入本文中。
[0048] 或者,视频编码器20及视频解码器30可根据其它专属或工业标准来操作,其 它专属或工业标准包含 ITU-T H.261、IS0/IEC MPEG-lVisual、ITU-T H.262 或 ISO/ IECMPEG-2Visual、ITU-T Η· 263、IS0/IEC MPEG-4Visual 及 ITU-T Η· 264(还称为 ISO/ IECMPEG-4AVC),包含其可调式视频译码(SVC)及多视图视频译码(MVC)扩展。然而,本发 明的技术不限于任何特定译码标准或技术。
[0049] 此外,图1仅为实例且本发明的技术可应用于未必包含编码装置与解码装置之间 的任何数据通信的视频译码设定(例如,视频编码或视频解码)。在其它实例中,数据可从 本地存储器检索、经由网络流式传输,或其类似者。编码装置可编码数据且将数据存储到存 储器,及/或解码装置可从存储器检索数据且解码数据。在许多实例中,通过并不彼此通信 而是简单地编码数据到存储器及/或从存储器检索数据且解码数据的装置执行编码及解 码。
[0050] 视频编码器20及视频解码器30各自可实施为例如以下各者的多种合适电路中的 任一者:一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门 阵列(FPGA)、离散逻辑、硬件或其任何组合。如果部分地以软件实施技术,则装置可将软件 的指令存储于合适的非暂时性计算机可读存储媒体中且可使用一或多个处理器以硬件执 行指令从而执行本发明的技术。前文中的任一者(包含硬件、软件、硬件及软件的组合等) 可被视为一或多个处理器。视频编码器20及视频解码器30中的每一者可包含于一或多个 编码器或解码器中,其中的任一者可作为组合式编码器/解码器(CODEC)的部分而集成于 相应装置中。
[0051] 本发明大体上可涉及视频编码器20将特定信息"用信号表示"到例如视频解码器 30等另一装置。然而,应理解,视频编码器20可通过将特定语法元素与视频数据的各种经 编码部分相关联来用信号表示信息。即,视频编码器20可通过将特定语法元素存储到视频 数据的各种经编码部分来"用信号表示"数据。在一些状况下,这些语法元素可在通过视频 解码器30接收及解码之前经编码及存储(例如,在存储系统中)。因此,术语"用信号表示" 大体上可指代语法元素及/或用以解码经压缩视频数据的其它数据的传达。此传达可实时 地或近实时地发生。或者,此通信可在时间跨度内发生,例如可在编码时将语法元素存储到 计算机可读存储媒体时在经编码位流中发生,语法元素接着可在存储到此媒体之后的任何 时间通过解码装置检索。
[0052] 如上文简要地提及,视频编码器20编码视频数据。视频数据可包括一或多个图 片。所述图片中的每一者可为形成视频的部分的静态图像。在一些情况下,图片可被称为 视频"帧"。视频编码器20可产生包含形成视频数据的经译码表示的位序列的位流。所述 位流可包含经译码图片及相关联的数据。经译码图片为图片的经译码表示。
[0053] 为了产生位流,视频编码器20可产生一系列经译码图片及相关联的数据。经译码 图片可为视频数据中的图片的经编码表示。相关联的数据可包含序列参数集(SPS)、图片参 数集(PPS)、调适参数集(APS)及其它语法结构。SPS可含有适用于图片的零个或零个以上 序列的参数。PPS可含有适用于零个或零个以上图片的参数。APS可含有适用于零个或零 个以上图片的参数。APS中的参数可为相比PPS中的参数更有可能改变的参数。
[0054] 为了产生图片的经编码表示,视频编码器20可将图片分割成多个树块。在一些情 况下,树块可被称为最大译码单元(LCU)或"译码树块"。HEVC的树块可广泛地类似于例如 H.264/AVC等先前标准的巨集块。然而,树块未必限于特定大小且可包含一或多个译码单元 (CU)。
[0055] 树块中的每一者可与图片内的大小相等的不同像素块相关联。每一像素可包括明 度(Y)样本、Cb色度样本及Cr色度样本。因此,每一树块可与明度(Y)样本块、图片的Cb 色度样本块及图片的Cr色度样本块相关联。出于解释容易起见,本发明可将像素的二维阵 列称为像素块且可将样本的二维阵列称为样本块。视频编码器20可使用四叉树分割来将 与树块相关联的像素块分割成与CU相关联的像素块(因此名称为"树块")。
[0056] 视频编码器20可将图片分割成多个切片。切片中的每一者可包含整数个树块。 作为编码图片的部分,视频编码器20可产生图片的每一切片的经编码表示(即,经译码切 片)。为了产生经译码切片,视频编码器20可编码切片的每一树块以产生切片的树块中的 每一者的经编码表示(即,经译码树块)。
[0057] 为了产生经译码树块,视频编码器20可对与树块相关联的像素块递归地执行四 叉树分割以将像素块划分成逐步减小的像素块。较小像素块中的每一者可与CU相关联。经 分割CU可为像素块被分割成与其它CU相关联的像素块的CU。未经分割CU可为像素块未 被分割成与其它CU相关联的像素块的CU。
[0058] 视频编码器20可针对每一未经分割⑶产生一或多个预测单元(PU)。⑶的PU中 的每一者可与⑶的像素块内的不同像素块相关联。视频编码器20可针对⑶的每一 PU产 生预测性像素块。PU的预测性像素块可为像素的块。
[0059] 视频编码器20可使用帧内预测或帧间预测来产生PU的预测性像素块。如果视频 编码器20使用帧内预测来产生PU的预测性像素块,则视频编码器20可基于与PU相关联 的图片的经解码像素产生PU的预测性像素块。如果视频编码器20使用帧间预测来产生PU 的预测性像素块,则视频编码器20可基于不同于与PU相关联的图片的一或多个图片的经 解码像素产生TO的预测性像素块。
[0060] 视频编码器20可基于⑶的PU的预测性像素块产生⑶的残余像素块。⑶的残余 像素块可指示CU的PU的预测性像素块中的样本与CU的原始像素块中的对应样本之间的 差。
[0061] 此外,作为编码未经分割⑶的部分,视频编码器20可对⑶的残余像素块执行递 归四叉树分割以将CU的残余像素块分割成与CU的变换单元(TU)相关联的一或多个较小 残余像素块。以此方式,CU的每一 TU可与明度(Y)样本的残余样本块及色度(Cr及Cb)样 本的两个残余样本块相关联。
[0062] 视频译码器20可对与TU相关联的残余样本块应用一或多个变换以产生与TU相 关联的系数块(即,系数的块)。在概念上,系数块可为系数的二维矩阵。视频编码器20可 对系数块执行量化过程。量化大体上指代对系数进行量化以可能减少用以表示系数的数据 的量从而提供进一步压缩的过程。
[0063] 视频编码器20可产生表示经量化系数块中的系数的语法元素的集合。视频编码 器20可将例如上下文自适应二进制算术译码(CABAC)操作等熵编码操作应用于这些语法 元素中的至少一些。作为执行熵编码操作的部分,视频编码器20可选择译码上下文。在 CABAC的状况下,译码上下文可指示值0及值1二进制数(bin)的概率。在上下文自适应可 变长度译码(CAVLC)的状况下,译码上下文可为可变长度码的集合。视频编码器20可使用 译码上下文来编码一或多个语法元素。
[0064] 由视频编码器20产生的位流可包含一系列网络抽象层(NAL)单元。NAL单元中 的每一者可为含有NAL单元中的数据的类型的指示及含有数据的字节的语法结构。举例来 说,NAL单元可含有表示SPS、PPS、经译码切片、补充增强信息(SEI)、存取单元定界符、填充 数据或另一类型的数据的数据。NAL单元中的数据可包含各种语法结构。经译码切片NAL 单元为包含经译码切片的NAL单元。"VCL NAL单元"为用于经分类为VCL NAL单元的具有 nal_unit_type的保留值的经译码切片NAL单元及NAL单元的子集的共同术语。
[0065] SEI NAL单元为包含SEI消息的NAL单元。SEI消息包含可用于错误恢回复、定时、 输出等的信息。然而,在解码过程中不需要SEI消息。换句话说,视频解码器可能够在不使 用SEI消息中的信息的情况下解码视频数据。因此,在例如H. 264/AVC或HEVC等视频译码 标准的情境下,SEI消息为规范的(即,非信息性的)且在顺应式视频解码器可选择简单地 舍弃存在于位流中的任何SEI消息的意义上为可选的。此外,可不必发射与视频数据相关 联的SEI消息以便视频解码器能够解码视频数据。
[0066] 视频编码器20可将图片划分成多个图片分区。图片分区可与图片的树块的非重 迭子集相关联。视频编码器20可以各种方式将图片划分成多个图片分区。如下文所描述, 视频编码器20可将图片划分成多个熵切片、多个瓦片或多个波前并行处理(WPP)波。本发 明可使用术语"图片分区"来一股地指代熵切片、瓦片及WPP波。
[0067] 如上文所提及,视频编码器20可将图片划分成多个熵切片。熵切片还可被称为轻 量切片、具有短切片标头的切片或短切片。熵切片可包含正常切片的CU的子集。在一些实 例中,视频编码器20可在熵切片当中分割CU以使得熵切片中无一包含比上限多的二进制 数(例如,经熵译码位)。在一些情况下,单个经译码切片NAL单元可包含切片的多个熵切 片。在其它实例中,在单独NAL单元中可包含每一熵切片。
[0068] 允许跨越熵切片边界的图片中预测。举例来说,如果视频译码器正对特定TO执行 帧内预测,则视频译码器可使用来自相邻PU的样本,即使相邻ro在不同于特定PU的熵切 片中也如此。在此实例中,如果相邻PU在不同于特定PU的切片中,则视频译码器可不能够 使用来自相邻PU的样本。
[0069] 然而,在视频译码器正对与特定TO相关联的数据执行熵译码时,如果特定PU及相 邻ro在同一熵切片中,则仅允许视频译码器基于与相邻PU相关联的信息选择译码上下文。 因为此限制,视频译码器可能够对切片的多个熵切片并行地执行熵译码(即,熵编码或解 码)操作。然而,视频解码器30不能够并行地重建切片的多个熵切片的像素块。
[0070] 在一些实例中,视频编码器20可将图片划分成一或多个瓦片。瓦片中的每一者可 包括图片中的整数个树块。视频编码器20可通过界定两个或两个以上垂直瓦片边界及两 个或两个以上水平瓦片边界而将图片划分成瓦片。图片的每一垂直侧可被视为垂直瓦片边 界。当前图片的每一水平侧可被视为水平瓦片边界。举例来说,如果视频编码器20界定图 片的四个垂直瓦片边界及三个水平瓦片边界,则将当前图片划分成六个瓦片。
[0071] 例如视频编码器20或视频解码器30等视频译码器可根据光栅扫描次序译码图片 的瓦片。此外,视频译码器可根据光栅扫描次序译码瓦片内的每一树块。以此方式,视频译 码器可在译码图片的另一瓦片的任何树块之前译码图片的给定瓦片的每一树块。因此,视 频译码器译码图片的树块的次序在将图片分割成多个瓦片的情况下与在不将图片分割成 多个瓦片的情况下可不同。
[0072] 在一些情况下,只要特定⑶及空间上相邻的⑶属于同一瓦片且只要特定⑶及空 间上相邻的CU属于同一切片,视频译码器即可使用与空间上相邻的CU相关联的信息来对 特定⑶执行帧内预测。空间上相邻的⑶可为与邻近于与特定⑶相关联的像素块的像素 块相关联的CU。在一些情况下,只要特定CU及空间上相邻的CU在同一瓦片内,视频译码器 即可使用与空间上相邻的CU相关联的信息来选择用于CABAC编码特定CU的语法元素的上 下文。因为这些限制,视频译码器可能够并行地译码多个瓦片的树块。
[0073] 举例来说,跨越瓦片边界的包含像素值预测、运动预测、译码模式预测及熵译码上 下文预测的图片中预测可通过旗标tile_boundary_independence_idc来控制。如果所述 旗标等于1,则不允许跨越瓦片边界的图片中预测。否则,允许跨越瓦片边界的图片中预测, 也为图片边界或切片边界的瓦片边界除外。如果不允许图片中预测,则与在图片中不存在 瓦片或等效地存在仅一个瓦片的状况相比较,瓦片的功能性可将改变树块扫描次序。如果 允许图片中预测,则除了改变树块扫描次序之外,瓦片还可提供可用于并行译码(编码及/ 或解码)的独立分割。
[0074] 不管是否允许跨越瓦片边界的图片中预测,视频编码器20皆可将单个熵切片中 的多个经编码瓦片包含于单个NAL单元中。在此状况下,即使允许跨越瓦片边界的图片中 预测,仍不允许跨越瓦片边界的熵译码上下文预测。此外,在NAL单元可含有仅单个熵切片 且熵切片仅包含单个瓦片的CU的实例中,可不需要用信号表示熵切片的每一经译码瓦片 的入口点,因为经译码瓦片在单独NAL单元中。
[0075] 在其它实例中,视频译码器可使用波前并行处理(WPP)来译码图片。如果视频译 码器使用WPP来译码图片,则视频译码器可将图片的树块划分成多个"WPP波"。WPP波中的 每一者可对应于图片中的树块的不同行。如果视频译码器使用WPP来译码图片,则视频译 码器可开始译码树块的顶行。在视频译码器已译码顶行的两个或两个以上树块之后,视频 译码器可开始与译码树块的顶行并行地译码树块的次顶行。在视频译码器已译码次顶行的 两个或两个以上树块之后,视频译码器可开始与译码树块的较高行并行地译码树块的顶部 起第三行。此模式可沿图片中的树块的行往下继续。
[0076] 如果视频译码器正使用WPP来译码图片,则只要空间上相邻的⑶在当前树块的左 方、左上方、上方或右上方,视频译码器即可使用与在当前树块之外的空间上相邻的CU相 关联的信息来对当前树块中的特定CU执行帧内预测。如果当前树块为不同于最顶行的行 中的最左树块,则视频译码器可使用与紧接的较高行的第二树块相关联的信息来选择用于 CABAC编码当前树块的语法元素的上下文。否则,如果当前树块并非行中的最左树块,则视 频译码器可使用与当前树块左方的树块相关联的信息来选择用于CABAC编码当前树块的 语法元素的上下文。以此方式,视频译码器可在编码紧接的较高行的两个或两个以上树块 之后基于紧接的较高行的CABAC状态来初始化行的CABAC状态。
[0077] 在一些实例中,如果视频译码器正使用WPP来译码图片,则图片的仅有瓦片边界 为图片的水平及垂直边缘。因此,图片的唯一瓦片的大小可与图片相同。视频译码器可将 图片及因此图片的单个瓦片划分成多个WPP波。
[0078] 如上文所提及,视频编码器20可产生包含切片的经编码表示的经译码切片NAL单 元。切片可与整数个连续经译码树块相关联。经译码切片NAL单元可包含切片标头及切片 数据。切片数据可包含与切片相关联的每一树块的经编码表示。
[0079] 视频编码器20可产生经译码切片NAL单元以使得根据树块所属于的图片分区在 切片数据内分组树块的经编码表示。举例来说,经译码切片NAL单元可包含与第一图片分 区相关联的每一经译码树块,其后接着为与第二图片分区相关联的每一经译码树块,其后 接着为与第三图片分区相关联的每一经译码树块,等等。
[0080] 出于解释容易起见,本发明可使用术语"经编码图片分区"、"经译码子切片"、"经 译码子流"来指代与单个图片分区(例如,熵切片、瓦片或WPP波)相关联的在经译码切片 NAL单元内的经译码树块的群组。然而,应了解,可存在图片分区可包含多个切片中的树块 的情形。下文所描述的图10说明瓦片包含属于多个切片的树块且切片包含属于多个瓦片 的树块的情况。
[0081] 视频解码器30可接收由视频编码器20产生的位流。位流可包含通过视频编码器 20编码的视频数据的经译码表示。视频解码器30可对位流执行剖析操作。作为执行剖析 操作的部分,视频解码器30可从位流提取语法元素。作为从位流提取语法元素的部分,视 频解码器30可对位流中的数据执行熵解码(例如,CABAC解码)操作。视频解码器30可 基于从位流提取的语法元素重建视频数据的图片。基于语法元素重建视频数据的过程可与 通过视频编码器20执行以产生语法元素的过程大体上互反。
[0082] 视频解码器30可基于与⑶相关联的语法元素产生⑶的PU的预测性像素块。另 夕卜,视频解码器30可对与CU的TU相关联的系数块进行反量化。视频解码器30可对系数 块执行反变换以重建与CU的TU相关联的残余像素块。视频解码器30可基于预测性像素 块及残余像素块重建CU的像素块。以此方式,视频解码器30可基于位流中的语法元素重 建CU的像素块。
[0083] 如上文所提及,视频解码器30的一些实施方案可能够并行地解码不同图片分区 的像素块。举例来说,如果经译码切片NAL单元包含第一经编码图片分区及第二经编码图 片分区,则视频解码器30可能够并行地解码第一经编码图片分区的像素块及第二经编码 图片分区的像素块。
[0084] 视频解码器30可将经译码切片NAL单元存储于存储器中。存储器可为字节可寻 址的。因为视频解码器30将经译码切片NAL单元存储于字节可寻址存储器中,所以如果经 编码图片分区的开始在一字节内发生,则视频解码器30可不能够指示与经编码图片分区 的开始相关联的存储器地址。因此,如果经编码图片分区中的一或多者在一字节内开始,则 视频解码器30可不能够并行地解码经编码图片分区。或者,视频解码器30可使用逐位存 储器寻址或逐字节加逐位寻址来实现并行地解码经编码图片分区,但实施及计算复杂性增 加。
[0085] 为了解决此间题,视频编码器20可以使得经译码切片NAL单元内的经编码图片分 区中的每一者字节对准的方式产生经译码切片NAL单元。即,经译码切片NAL单元内的经 编码图片分区中的每一者可在字节边界处开始。如果经编码图片分区为字节对准的,则经 编码图片分区的第一位为存储器中的可寻址字节的第一位,且经编码图片分区的最后位为 存储器中的可寻址字节的最后位。因此,对于存储器中的每一字节寻址的存储位置,存储位 置并不存储与多个经编码图片分区相关联的位。
[0086] 此外,如果视频解码器30并行地解码经编码图片分区,则视频解码器30可将不同 经编码图片分区指派给不同处理核心。处理核心可并行地解码经编码图片分区。另外,处 理核心可向存储器请求切片标头。作为响应,存储器可将切片标头发送到处理核心。以此 方式,处理核心中的每一者可能够在解码经编码图片分区时使用切片标头。然而,如果切片 标头不为字节对准的,则存储器可能只有在也发送不在切片标头中的某一信息的情况下才 能够将切片标头发送到处理核心。举例来说,如果切片标头不为字节对准的,则视频解码器 30可转码切片标头以使得切片标头为字节对准的。转码切片标头可增加视频解码器30的 复杂性,且可要求处理核心经配置以处理经转码切片标头。
[0087] 为了产生经编码图片分区中的每一者为字节对准的经译码切片NAL单元,视频编 码器20可填补经译码切片NAL单元的切片标头以使得切片标头在字节边界处结束。即,切 片标头的最后位可为存储器中的可寻址字节的最后位。填补经译码切片NAL单元的切片标 头可涉及将位附加到切片标头的末尾直到切片标头为字节对准的为止。
[0088] 以此方式,视频编码器20可产生多个经编码图片分区,经编码图片分区中的每一 者与视频数据中的图片中的译码单元的不同集合相关联。另外,视频编码器20可产生含有 切片标头及多个经编码图片分区的NAL单元,切片标头包含使切片标头与字节边界对准的 一或多个填补位。类似地,视频解码器30可接收NAL单元。NAL单元可含有切片标头及视 频数据的多个经编码图片分区。切片标头可包含使切片标头与字节边界对准的一或多个填 补位。视频解码器30可并行地解码经编码图片分区中的两者或两者以上。
[0089] 为了并行地解码经编码图片分区,视频解码器30可将经编码图片分区指派给并 行地执行的不同解码线程。解码线程可执行于不同处理核心上。为了将经编码图片分区指 派给不同解码线程,视频解码器30可需要确定与经编码图片分区的开始相关联的存储器 地址。
[0090] 为了使得视频解码器30能够确定与经编码图片分区的开始相关联的存储器地 址,经译码切片NAL单元的切片标头可包含入口点偏移。在一些实例中,入口点偏移可指示 相对于另一点的经编码图片分区的存储器地址的偏移。在一些实例中,偏移可相对于经译 码切片NAL单元的开始。举例来说,经译码切片NAL单元的切片标头中的入口点偏移可指示 特定经编码图片分区在经译码切片NAL单元的第312个字节处开始。在另一实例中,经译 码切片NAL单元中的经编码图片分区的入口点偏移可相对于经译码切片NAL单元中之前一 经编码图片分区的第一位。举例来说,入口点偏移可指示经译码切片NAL单元中的特定经 编码图片分区可在经译码切片NAL单元中之前一经编码图片分区之后124个字节处开始。 此外,在一些实例中,入口点偏移可指示经编码图片分区的以位或字节计的长度。
[0091] 除了指示入口点偏移的偏移语法元素之外,根据本发明的一或多种技术,视频编 码器20还可将两个额外语法元素包含于切片标头中。切片中的瓦片的数目可基于额外语 法元素中的第一者来确定。用于偏移语法元素中的每一者中的位的数目可基于额外语法元 素中的第二者来确定。根据本发明的技术,视频编码器20可熵编码(例如,指数哥伦布编 码)额外语法元素。因为视频编码器20熵编码额外语法元素,所以在位流中使用位的可变 长度序列来表示额外语法元素。使用位的可变长度序列来表示额外语法元素可产生包含比 在使用位的固定长度序列来表示额外语法元素时的位少的位的位流,且可使得视频编码器 20能够用信号表示比由使用(例如)5位的固定长度译码所允许的偏移语法元素多的偏移 语法元素。
[0092] 以此方式,视频编码器20可熵编码第一语法元素、第二语法元素及一系列偏移语 法元素。偏移语法元素中的每一者的长度可基于第一语法元素来确定。所述系列偏移语法 元素中的偏移语法元素的数目可基于第二语法元素来确定。多个经编码图片分区在NAL单 元内的位置可基于偏移语法元素来确定。此外,视频编码器20可产生位流,所述位流包含 表示经熵编码的第一语法元素的可变长度值、表示经熵编码的第二语法元素的可变长度值 及表示偏移语法元素的固定长度值。
[0093] 视频解码器30可接收位流,所述位流包含表示第一额外语法元素的可变长度值、 表示第二额外语法元素的经熵编码的可变长度值及一系列偏移语法元素。视频解码器30 可熵解码第一额外语法元素及第二额外语法元素。此外,视频解码器30可基于第一语法元 素确定偏移语法元素中的每一者的长度,且可基于第二语法元素确定所述系列偏移语法元 素中的偏移语法元素的数目。视频解码器30可至少部分基于偏移语法元素中的每一者的 长度及所述系列偏移语法元素中的偏移语法元素的数目剖析来自位流的偏移语法元素。视 频解码器30可接着至少部分基于偏移语法元素确定多个经编码图片分区在NAL单元内的 位置。
[0094] 此外,替代在经译码切片NAL单元的切片标头中指示入口点偏移或除了在经译码 切片NAL单元的切片标头中指示入口点偏移以外,经译码切片NAL单元的切片数据可包含 入口点标记。入口点标记可指定对入口点标记来说唯一的位模式。入口点标记可在紧接于 每一经编码图片分区之前的切片数据中出现,切片数据的第一经编码图片分区除外。视频 编码器30可通过遍及切片数据进行扫描及识别入口点标记来确定与经编码图片分区的开 始相关联的存储器地址。
[0095] 在切片标头中包含入口点偏移或在切片数据中包含入口点标记可在视频解码器 30经配置以并行地解码多个经编码图片分区的情况下为有用的。然而,一些视频解码器未 经配置以并行地解码多个经编码图片分区。由未经配置以并行地解码多个经编码图片分区 的视频解码器所要求的硬件可比由经配置以并行地解码多个经编码图片分区的视频解码 器所要求的硬件简单。更简单硬件可较不昂贵且可消耗较少能量。
[0096] 如果视频解码器30未经配置以并行地解码多个经编码图片分区,则视频解码器 30不使用入口点偏移或入口点标记。因此,如果视频解码器30未经配置以并行地解码多个 经编码图片分区,则在通过视频解码器30接收的位流中包含入口点偏移及/或入口点标记 会不必要地增加位流中的位的数目。
[0097] 根据本发明的一或多种技术,视频编码器20可经配置以使得视频编码器20不将 入口点偏移及/或入口点标记包含于经译码切片NAL单元中。更确切地说,视频编码器20 可产生指示经译码切片NAL单元中的经编码图片分区的入口点的SEI消息。举例来说,视 频编码器20可产生包含经译码切片NAL单元中的经编码图片分区的入口点偏移的SEI消 息。换句话说,SEI消息可通过指定经译码切片NAL单元内的经编码图片分区的字节偏移 来指示入口点。
[0098] 图2为说明经配置以实施本发明的技术的实例视频编码器20的框图。出于解释 目的而提供图2且不应将其视为限制如本发明中广泛地例示及描述的技术。出于解释目 的,本发明在HEVC译码的情境下描述视频编码器20。然而,本发明的技术可适用于其它译 码标准或方法。
[0099] 在图2的实例中,视频编码器20包含多个功能组件。视频编码器20的功能组件包 含预测处理单元100、残余产生单元102、变换处理单元104、量化单元106、反量化单元108、 反变换处理单元110、重建单元112、滤波器单元113、经解码图片缓冲器114及熵编码单元 116。预测处理单元100包含帧间预测处理单元121及帧内预测处理单元126。帧间预测 处理单元121包含运动估计单元122及运动补偿单元124。在其它实例中,视频编码器20 可包含更多、更少或不同功能组件。此外,运动估计单元122及运动补偿单元124可高度集 成,但出于解释目的在图2的实例中分离地表示。
[0100] 视频编码器20可接收视频数据。视频编码器20可从各种源接收视频数据。举例 来说,视频编码器20可从视频源18(图1)或另一源接收视频数据。视频数据可表示一系 列图片。为了编码视频数据,视频编码器20可编码图片中的每一者的每一切片。作为编码 切片的部分,视频编码器20可编码切片中的每一树块。
[0101] 视频编码器20可根据光栅扫描次序编码切片中的树块。换句话说,视频编码器20 可按如下次序来编码切片的树块:跨越切片中的树块的最顶行从左到右进行,接着跨越树 块的下一较低行从左到右进行,以此类推,直到视频编码器20已编码切片中的树块中的每 一者为止。
[0102] 作为根据光栅扫描次序编码树块的结果,可已编码在特定树块的上方及左方的树 块,但尚未编码在特定树块的下方及右方的树块。因此,视频编码器20可能够在编码特定 树块时存取通过编码在特定树块的上方及左方的树块而产生的信息。然而,视频编码器20 可不能够在编码特定树块时存取通过编码在特定树块的下方及右方的树块而产生的信息。
[0103] 作为编码树块的部分,预测处理单元100可对与树块相关联的像素块执行四叉树 分割以将像素块划分成逐步减小的像素块。较小像素块可与CU相关联。举例来说,预测处 理单元100可将树块的像素块中的每一者分割成四个大小相等的子块,将子块中的一或多 者分割成四个大小相等的子块,等等。
[0104] 与⑶相关联的像素块的大小的范围可为8X8像素直到与具有最大64X64样本 或更大的树块相关联的像素块的大小。在本发明中,"NXN"与"N乘N"可互换使用以指代 依据垂直及水平尺寸的像素块的像素尺寸,例如,16X 16像素或16乘16像素。一股来说, 16X16像素块在垂直方向上具有16个像素 (y = 16),且在水平方向上具有16个像素 (X =16)。同样地,NXN块一股在垂直方向上具有N个像素,且在水平方向上具有N个像素, 其中N表示非负整数值。
[0105] 视频编码器20可编码树块的⑶以产生⑶的经编码表示(即,经译码⑶)。视频 编码器20可根据z扫描次序编码树块的CU。换句话说,视频编码器20可按z扫描次序编 码左上方⑶、右上方⑶、左下方⑶及接着右下方⑶。在视频编码器20编码经分割⑶时, 视频编码器20可根据z扫描次序编码与经分割CU的像素块的子块相关联的CU。换句话 说,视频编码器20可按z扫描次序编码与左上方子块相关联的CU、与右上方子块相关联的 CU、与左下方子块相关联的CU及接着与右下方子块相关联的CU。
[0106] 作为根据z扫描次序编码树块的⑶的结果,可已编码在特定⑶的上方、左上方、 右上方、左方及左下方的⑶。尚未编码在特定⑶的下方或右方的⑶。因此,视频编码器20 可能够在编码特定CU时存取通过编码与特定CU相邻的一些CU而产生的信息。然而,视频 编码器20可不能够在编码特定CU时存取通过编码与特定CU相邻的其它CU而产生的信息。
[0107] 作为编码⑶的部分,预测处理单元100可在⑶的一或多个ro当中分割⑶的像素 块。视频编码器20及视频解码器30可支持各种PU大小。假定特定CU的大小为2NX2N, 视频编码器20及视频解码器30可支持2NX2N或NXN的PU大小以供帧内预测,且支持 2NX 2N、2NX N、NX 2N、NX N或类似大小的对称PU大小以供帧间预测。视频编码器20及视 频解码器30还可支持2NX nU、2NX nD、nLX 2N及nRX 2N的PU大小的不对称分割以供帧间 预测。
[0108] 帧间预测处理单元121可对⑶的每一 PU执行帧间预测。帧间预测可提供时间压 缩。帧间预测处理单元121可产生TO的预测性数据。PU的预测性数据可包含对应于PU的 预测性样本块及PU的运动信息。运动估计单元122可产生PU的运动信息。在一些情况下, 运动估计单元122可使用合并模式或进阶运动向量预测(AMVP)模式来用信号表示PU的运 动信息。运动补偿单元124可基于不同于与PU相关联的图片的一或多个图片(S卩,参考图 片)的像素产生TO的预测性像素块。
[0109] 切片可为I切片、P切片或B切片。运动估计单元122及运动补偿单元124可取 决于ro是在I切片中,在P切片中抑或在B切片中而对CU的PU执行不同操作。在I切片 中,对所有PU进行帧内预测。因此,如果TO在I切片中,则运动估计单元122及运动补偿 单元124不对PU执行帧间预测。
[0110] 如果TO在P切片中,则含有PU的图片与称为"列表0"的参考图片列表相关联。 在一些实例中,列表〇中所列出的每一参考图片按显示次序在图片之前出现。列表〇中的 参考图片中的每一者可用于其它图片的帧间预测。运动估计单元122可搜索列表0中的参 考图片以查找P切片中的TO的参考块。PU的参考块可为最紧密地对应于PU的像素块的像 素块。运动估计单元122可使用多种量度来确定参考图片中的像素块对应于PU的像素块 的紧密程度。举例来说,运动估计单元122可通过绝对差和(SAD)、平方差和(SSD)或其它 差量度来确定参考图片中的像素块对应于PU的像素块的紧密程度。
[0111] 运动估计单元122可产生指示含有P切片中的PU的参考块的列表0中的参考图 片的参考图片索引及指示PU与参考块之间的空间移位的运动向量。运动估计单元122可 产生变化精度的运动向量。举例来说,运动估计单元122可产生在四分之一像素精度、八分 之一像素精度或其它分数像素精度下的运动向量。在分数像素精度的状况下,可从参考图 片中的整数位置像素值内插参考块值。运动估计单元122可输出参考图片索引及运动向量 作为PU的运动信息。运动补偿单元124可基于与PU的运动信息相关联的参考块产生PU 的预测性样本块。
[0112] 如果PU在B切片中,则含有PU的图片可与称为"列表0"及"列表1"的两个参考 图片列表相关联。在一些实例中,列表1中所列出的每一参考图片按显示次序在当前图片 之后出现。此外,如果PU在B切片中,则运动估计单元122可对PU执行单向帧间预测或双 向帧间预测。为了对TO执行单向帧间预测,运动估计单元122可搜索列表0或列表1的参 考图片以查找PU的参考块。运动估计单兀122可广生指不参考图片的列表0或列表1中 含有参考块的位置的参考图片索引及指示PU与参考块之间的空间移位的运动向量。
[0113] 为了对TO执行双向帧间预测,运动估计单元122可搜索列表0中的参考图片以查 找PU的参考块,且还可搜索列表1中的参考图片以查找PU的另一参考块。运动估计单元 122可产生指示参考图片的列表0及列表1中含有参考块的位置的参考图片索引。另外,运 动估计单元122可产生指示参考块与PU之间的空间移位的运动向量。PU的运动信息可包 含PU的参考图片索引及运动向量。运动补偿单元124可基于通过PU的运动信息指示的参 考块产生PU的预测性样本块。
[0114] 作为对CU执行编码操作的部分,帧内预测处理单元126可对CU的PU执行帧内预 测。帧内预测可提供空间压缩。帧内预测处理单元126可基于与PU相同的图片中的经解 码样本产生PU的预测性数据。TO的预测性数据可包含PU的预测性样本块及各种语法元 素。帧内预测处理单元126可对I切片、P切片及B切片中的PU执行帧内预测。
[0115] 为了对PU执行帧内预测,帧内预测处理单元126可使用多个帧内预测模式来产生 PU的预测性数据的多个集合。为了使用帧内预测模式来产生PU的预测性数据的集合,帧内 预测处理单元126可使样本在与帧内预测模式相关联的方向及/或梯度上从相邻PU的样 本块跨越PU的样本块延伸。假定PU、CU及树块的左到右、上到下编码次序,相邻PU可在PU 的上方、右上方、左上方或左方。帧内预测处理单元126可使用各种数目个帧内预测模式, 例如,33个定向帧内预测模式。在一些实例中,帧内预测模式的数目可取决于PU的大小。
[0116] 预测处理单元100可从⑶的TO的通过帧间预测处理单元121产生的预测性数据 或所述PU的通过帧内预测处理单元126产生的预测性数据当中选择所述PU的预测性数 据。在一些实例中,预测处理单元100基于预测性数据的集合的位率/失真量度选择CU的 PU的预测性数据。
[0117] 预测处理单元100可执行四叉树分割以将⑶的残余像素块分割成子块。每一未 经划分的残余像素块可与CU的不同TU相关联。与CU的TU相关联的残余像素块的大小及 位置可或可不基于CU的PU的像素块的大小及位置。称为"残余四叉树"(RQT)的四叉树结 构可包含与残余像素块中的每一者相关联的节点。⑶的TU可对应于RQT的叶节点。
[0118] 因为TU的残余像素块的像素包括Y、Cb及Cr样本,所以TU中的每一者可与Y样 本的样本块、Cb样本的样本块及Cr样本的样本块相关联。残余产生单元102可通过从⑶ 的样本块的对应样本减去CU的PU的预测性样本块而产生CU的残余样本块。
[0119] 变换处理单元104可通过将一或多个变换应用于与TU相关联的残余样本块而产 生⑶的每一 TU的系数块。系数块中的每一者可为系数的2D矩阵。变换处理单元104可 将各种变换应用于与TU相关联的残余样本块。举例来说,变换处理单元104可将离散余弦 变换(DCT)、定向变换或概念上类似的变换应用于与TU相关联的残余样本块。
[0120] 量化单元106可对与TU相关联的系数块中的系数进行量化。量化过程可减少与 系数中的一些或全部相关联的位深度。举例来说,可在量化期间将η位系数降值舍位到m 位系数,其中η大于m。量化单元106可基于与CU相关联的量化参数(QP)值对与CU的TU 相关联的系数块进行量化。视频编码器20可通过调整与CU相关联的QP值来调整应用于 与CU相关联的系数块的量化的程度。
[0121] 视频编码器20可以各种方式将QP值与⑶相关联。举例来说,视频编码器20可 对与CU相关联的树块执行位率-失真分析。在位率-失真分析中,视频编码器20可通过 以不同QP值来多次编码树块而产生树块的多个经译码表示。视频编码器20可在特定QP 值与树块的经译码表示中具有最低位速率及失真量度的CU相关联时用信号通知特定QP值 与⑶相关联。
[0122] 反量化单元108及反变换处理单元110可分别将反量化及反变换应用于系数块以 从系数块重建残余样本块。重建单元112可将经重建残余样本块与来自由预测处理单元 100产生的一或多个预测性样本块的对应样本相加以产生与TU相关联的经重建样本块。通 过以此方式重建⑶的每一 TU的样本块,视频编码器20可重建⑶的样本块。
[0123] 滤波器单元113可执行解块操作以减少与CU相关联的样本块中的成块假影。经 解码图片缓冲器114可在滤波器单元113对经重建样本块执行一或多个解块操作之后存储 经重建样本块。运动估计单元122及运动补偿单元124可使用含有经重建样本块的参考图 片来对后续图片的PU执行帧间预测。另外,帧内预测处理单元126可使用经解码图片缓冲 器114中的经重建样本块来对与CU相同的图片中的其它PU执行帧内预测。
[0124] 熵编码单元116可从视频编码器20的其它功能组件接收数据。举例来说,熵编码 单元116可从量化单元106接收系数块且可从预测处理单元100接收语法元素。熵编码 单元116可对数据执行一或多个熵编码操作以产生经熵编码数据。举例来说,视频编码器 20可对数据执行上下文自适应可变长度译码(CAVLC)操作、CABAC操作、可变到可变(V2V) 长度译码操作、基于语法的上下文自适应二进制算术译码(SBAC)操作、概率区间分割熵 (PIPE)译码操作、指数哥伦布译码或另一类型的熵编码操作。熵编码单元116可输出包含 经熵编码数据的位流。
[0125] 作为对数据执行熵编码操作的部分,熵编码单元116可选择上下文模型。如果熵 编码单元116正执行CABAC操作,则上下文模型可指示对特定二进制数具有特定值的概率 的估计。在CABAC的上下文中,术语"二进制数"可用以指代语法元素的二进制化版本的位。
[0126] 如上文所论述,视频编码器20可产生包含视频数据的经编码表示的位流。视频数 据的经编码表示可包含多个NAL单元。NAL单元可包含经译码切片NAL单元,经译码切片 NAL单元包含切片的经译码表示。因为切片可包含与多个图片分区(例如,熵切片、瓦片或 WPP波)相关联的树块,所以经译码切片NAL单元可包含多个经编码图片分区。如上文所指 示,经编码图片分区可为经译码切片NAL单元内的与单个图片分区相关联的经译码树块的 群组。
[0127] 经译码切片NAL单元中的每一者可包含切片标头及切片数据。经译码切片NAL单 元的切片数据可包含切片中的每一树块的经译码表示。在一些情况下,切片的树块可与不 同图片分区相关联。因此,单个经译码切片NAL单元的切片数据可包含与多个图片分区相 关联的经编码树块。如上文所指示,术语"经编码图片分区"及"经译码子切片"可用以指 代经译码切片NAL单元内的与单个图片分区相关联的经译码树块的群组。
[0128] 视频解码器30可经配置以并行地剖析或解码多个经编码图片分区。为了促进多 个经编码图片分区的同时剖析或解码,经编码图片分区中的每一者可为字节对准的。即,经 编码图片分区的第一位为存储器中的可寻址字节的第一位,且经编码图片分区的最后位为 存储器中的可寻址字节的最后位。
[0129] 为了确保经译码切片NAL单元的切片数据中的经编码图片分区为字节对准的,经 译码切片NAL单元的切片标头可根据本发明的技术在字节边界处终止。在一些情况下,切 片标头的开始及末尾两者可为字节对准的。举例来说,视频编码器20可产生具有切片的 字节对准的切片标头的经译码切片NAL单元,所述切片包含多个经编码的字节对准的熵切 片、瓦片或WPP波(S卩,经编码图片分区)中的树块。
[0130] 在一些实例中,视频编码器20可将旗标(例如,slice_header_byte_aligned_ flag)包含于例如SPS、PPS或APS等参数集中。如果所述旗标等于1,则参考所述参数集的 每一经译码切片NAL单元的切片标头为字节对准的。在这些实例中,如果所述旗标等于0, 则参考所述参数集的每一经译码切片NAL单元的切片标头可或可不为字节对准的。在其它 实例中,可使旗标的语义相反。在其它实例中,经译码切片NAL单元的切片标头始终为字节 对准的。此情形可等效于上文所提及的旗标不存在,及旗标的值始终推断为等于1。
[0131] 以此方式,视频编码器20可产生包含参数集的NAL单元,且视频解码器30可接收 所述NAL单元。在不同实例中,参数集可为SPS、PPS或APS。参数集可包含指示参考所述 参数集的切片标头是否为字节对准的语法元素。
[0132] 在视频编码器20产生字节对准的切片标头的实例中,切片标头可遵照各种语法。 举例来说,视频编码器20可产生遵照下文表1中所指示的实例语法的切片标头。
[0133] 表1:切片标头语法
[0134]

【权利要求】
1. 一种用于编码视频数据的方法,所述方法包括: 熵编码第一语法元素、第二语法元素及一系列偏移语法元素,其中所述偏移语法元素 中的每一者的长度可基于所述第一语法元素来确定,所述系列偏移语法元素中的偏移语法 元素的数目可基于所述第二语法元素来确定,且NAL单元内的多个经编码图片分区的位置 可基于所述偏移语法元素来确定;以及 产生位流,所述位流包含表示所述经熵编码的第一语法元素的可变长度值、表示所述 经熵编码的第二语法元素的可变长度值及表示所述偏移语法元素的固定长度值。
2. 根据权利要求1所述的方法,其中所述经编码图片分区中的每一者包含在所述NAL 单元内的与单个熵切片、瓦片或波前并行处理WPP波相关联的经译码树块的群组。
3. 根据权利要求1所述的方法,其中所述系列偏移语法元素指示所述经编码图片分区 相对于所述NAL单元内的先前经编码图片分区的字节偏移。
4. 根据权利要求1所述的方法,其进一步包括产生补充增强信息SEI消息,所述SEI消 息包含所述第一语法元素、所述第二语法元素及所述系列偏移语法元素。
5. 根据权利要求4所述的方法,其中所述SEI消息包含语法元素,所述语法元素指示 所述SEI消息属于指示经译码切片NAL单元中的经编码图片分区的入口点的类型的SEI消 肩、。
6. 根据权利要求5所述的方法,其进一步包括产生含有所述SEI消息的SEI NAL单元。
7. 根据权利要求1所述的方法,其中所述偏移语法元素中的每一者的所述长度等于所 述第一语法元素加上10的值。
8. -种计算装置,其包括经配置以执行以下步骤的一或多个处理器: 熵编码第一语法元素、第二语法元素及一系列偏移语法元素,其中所述偏移语法元素 中的每一者的长度可基于所述第一语法元素来确定,所述系列偏移语法元素中的偏移语法 元素的数目可基于所述第二语法元素来确定,且NAL单元内的多个经编码图片分区的位置 可基于所述偏移语法元素来确定;以及 产生位流,所述位流包含表示所述经熵编码的第一语法元素的可变长度值、表示所述 经熵编码的第二语法元素的可变长度值及表示所述偏移语法元素的固定长度值。
9. 根据权利要求8所述的计算装置,其中所述经编码图片分区中的每一者包含在所述 NAL单元内的与单个熵切片、瓦片或波前并行处理WPP波相关联的经译码树块的群组。
10. 根据权利要求8所述的计算装置,其中所述系列偏移语法元素指示所述经编码图 片分区相对于所述NAL单元内的先前经编码图片分区的字节偏移。
11. 根据权利要求8所述的计算装置,其中所述一或多个处理器经配置以产生补充增 强信息SEI消息,所述SEI消息包含所述第一语法元素、所述第二语法元素及所述系列偏移 语法元素。
12. 根据权利要求11所述的计算装置,其中所述SEI消息包含语法元素,所述语法元 素指示所述SEI消息属于指示经译码切片NAL单元中的经编码图片分区的入口点的类型的 SEI消息。
13. 根据权利要求8所述的计算装置,其进一步包括产生含有所述SEI消息的SEI NAL 单元。
14. 根据权利要求8所述的计算装置,其中所述偏移语法元素中的每一者的所述长度 等于所述第一语法元素加上10的值。
15. 根据权利要求8所述的计算装置,其中所述计算装置包括视频编码器。
16. -种计算装置,其包括: 用于熵编码第一语法元素、第二语法元素及一系列偏移语法元素的装置,其中所述偏 移语法元素中的每一者的长度可基于所述第一语法元素来确定,所述系列偏移语法元素中 的偏移语法元素的数目可基于所述第二语法元素来确定,且NAL单元内的多个经编码图片 分区的位置可基于所述偏移语法元素来确定;以及 用于产生位流的装置,所述位流包含表示所述经熵编码的第一语法元素的可变长度 值、表示所述经熵编码的第二语法元素的可变长度值及表示所述偏移语法元素的固定长度 值。
17. -种计算机可读存储媒体,其存储在由计算装置的一或多个处理器执行时配置所 述计算装置以执行以下步骤的指令: 熵编码第一语法元素、第二语法元素及一系列偏移语法元素,其中所述偏移语法元素 中的每一者的长度可基于所述第一语法元素来确定,所述系列偏移语法元素中的偏移语法 元素的数目可基于所述第二语法元素来确定,且NAL单元内的多个经编码图片分区的位置 可基于所述偏移语法元素来确定;以及 产生位流,所述位流包含表示所述经熵编码的第一语法元素的可变长度值、表示所述 经熵编码的第二语法元素的可变长度值及表示所述偏移语法元素的固定长度值。
18. -种用于解码视频数据的方法,所述方法包括: 接收位流,所述位流包含表示第一语法元素的经熵编码的可变长度值、表示第二语法 元素的经熵编码的可变长度值及一系列固定长度偏移语法元素; 熵解码所述第一语法元素及所述第二语法元素; 基于所述第一语法元素确定所述偏移语法元素中的每一者的长度; 基于所述第二语法元素确定所述系列偏移语法元素中的偏移语法元素的数目; 至少部分基于所述偏移语法元素中的每一者的所述长度及所述系列偏移语法元素中 的偏移语法元素的所述数目剖析所述偏移语法元素; 基于所述偏移语法元素确定网络抽象层NAL单元内的多个经编码图片分区的位置;以 及 解码所述经编码图片分区。
19. 根据权利要求18所述的方法,其中所述经编码图片分区中的每一者包含在所述 NAL单元内的与单个熵切片、瓦片或波前并行处理WPP波相关联的经译码树块的群组。
20. 根据权利要求18所述的方法,其中所述系列偏移语法元素指示所述经编码图片分 区相对于所述NAL单元内的先前经编码图片分区的字节偏移。
21. 根据权利要求18所述的方法,其中所述位流包含SEI消息,所述SEI消息包含所述 第一语法元素、所述第二语法元素及所述系列偏移语法元素。
22. 根据权利要求21所述的方法,其中所述SEI消息包含语法元素,所述语法元素指 示所述SEI消息属于指示经译码切片NAL单元中的经编码图片分区的入口点的类型的SEI 消息。
23. 根据权利要求18所述的方法,其中所述位流包含SEI NAL单元,所述SEI NAL单元 包含所述SEI消息。
24. 根据权利要求23所述的方法, 其中所述SEI NAL单元在所述位流中紧接在含有所述多个经编码图片分区的所述NAL 单元之前;且 其中所述方法进一步包括至少部分基于在所述位流中紧接在含有所述多个经编码图 片分区的所述NAL单元之前的所述SEI NAL单元来确定所述SEI消息适用于含有所述多个 经编码图片分区的所述NAL单元。
25. 根据权利要求18所述的方法,其进一步包括将所述经编码图片分区提供到不同处 理核心以用于并行解码所述经编码图片分区,及在所述处理核心中解码所述相应经编码图 片分区。
26. 根据权利要求18所述的方法,其中所述偏移语法元素中的每一者的所述长度等于 所述第一语法元素加上10的值。
27. -种计算装置,其包括经配置以执行以下步骤的一或多个处理器: 接收位流,所述位流包含表示第一语法元素的经熵编码的可变长度值、表示第二语法 元素的经熵编码的可变长度值及一系列偏移语法元素; 熵解码所述第一语法元素及所述第二语法元素; 基于所述第一语法元素确定所述偏移语法元素中的每一者的长度; 基于所述第二语法元素确定所述系列偏移语法元素中的偏移语法元素的数目; 至少部分基于所述偏移语法元素中的每一者的所述长度及所述系列偏移语法元素中 的偏移语法元素的所述数目剖析所述偏移语法元素; 基于所述偏移语法元素确定网络抽象层NAL单元内的多个经编码图片分区的位置;以 及 解码所述经编码图片分区。
28. 根据权利要求27所述的计算装置,其中所述经编码图片分区中的每一者包含在所 述NAL单元内的与单个熵切片、瓦片或波前并行处理WPP波相关联的经译码树块的群组。
29. 根据权利要求27所述的计算装置,其中所述系列偏移语法元素指示所述经编码图 片分区相对于所述NAL单元内的先前经编码图片分区的字节偏移。
30. 根据权利要求27所述的计算装置,其中所述位流包含SEI消息,所述SEI消息包含 所述第一语法元素、所述第二语法元素及所述系列偏移语法元素。
31. 根据权利要求30所述的计算装置,其中所述SEI消息包含语法元素,所述语法元 素指示所述SEI消息属于指示经译码切片NAL单元中的经编码图片分区的入口点的类型的 SEI消息。
32. 根据权利要求27所述的计算装置,其中所述位流包含SEI NAL单元,所述SEI NAL 单元包含所述SEI消息。
33. 根据权利要求32所述的计算装置, 其中所述SEI NAL单元在所述位流中紧接在含有所述多个经编码图片分区的所述NAL 单元之前;且 其中所述一或多个处理器经配置以至少部分基于在所述位流中紧接在含有所述多个 经编码图片分区的所述NAL单元之前的所述SEI NAL单元来确定所述SEI消息适用于含有 所述多个经编码图片分区的所述NAL单元。
34. 根据权利要求27所述的计算装置,其中所述一或多个处理器经配置以将所述经编 码图片分区提供到不同处理核心以用于并行解码所述经编码图片分区。
35. 根据权利要求27所述的计算装置,其中所述计算装置包括视频解码器。
36. 根据权利要求27所述的计算装置,其中所述第一语法元素加上10的值等于所述系 列偏移语法元素的以位为单位的所述长度。
37. -种计算装置,其包括: 用于接收位流的装置,所述位流包含表示第一语法元素的经熵编码的可变长度值、表 示第二语法元素的经熵编码的可变长度值及一系列偏移语法元素; 用于熵解码所述第一语法元素及所述第二语法元素的装置; 用于基于所述第一语法元素确定所述偏移语法元素中的每一者的长度的装置; 用于基于所述第二语法元素确定所述系列偏移语法元素中的偏移语法元素的数目的 装置; 用于至少部分基于所述偏移语法元素中的每一者的所述长度及所述系列偏移语法元 素中的偏移语法元素的所述数目剖析所述偏移语法元素的装置; 用于基于所述偏移语法元素确定网络抽象层NAL单元内的多个经编码图片分区的位 置的装置;以及 用于解码所述经编码图片分区的装置。
38. -种计算机可读存储媒体,其存储在由计算装置的一或多个处理器执行时配置所 述计算装置以执行以下步骤的指令: 接收位流,所述位流包含表示第一语法元素的经熵编码的可变长度值、表示第二语法 元素的经熵编码的可变长度值及一系列偏移语法元素; 熵解码所述第一语法元素及所述第二语法元素; 基于所述第一语法元素确定所述偏移语法元素中的每一者的长度; 基于所述第二语法元素确定所述系列偏移语法元素中的偏移语法元素的数目; 至少部分基于所述偏移语法元素中的每一者的所述长度及所述系列偏移语法元素中 的偏移语法元素的所述数目剖析所述偏移语法元素; 基于所述偏移语法元素来确定网络抽象层NAL单元内的多个经编码图片分区的位置; 以及 解码所述经编码图片分区。
【文档编号】H04N19/176GK104160702SQ201280053859
【公开日】2014年11月19日 申请日期:2012年11月2日 优先权日:2011年11月4日
【发明者】王益魁 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1