填补经译码切片nal单元中的片段的制作方法

文档序号:7992980阅读:165来源:国知局
填补经译码切片nal单元中的片段的制作方法
【专利摘要】视频编码器将图片划分成例如瓦片或波前并行处理WPP波等多个图片分区。所述图片分区与所述图片的树块的非重叠子集相关联。所述视频编码器产生经译码切片网络抽象层NAL单元,所述经译码切片NAL单元包含与所述图片的切片相关联的所述树块的经编码表示。所述经译码树块在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段。所述视频编码器填补所述片段中的一或多者,使得所述片段中的每一者在字节边界上开始。
【专利说明】填补经译码切片NAL单元中的片段
[0001]本申请案主张2011年11月8日申请的第61/557,259号美国临时申请案的权益,所述申请案的全文以引用的方式并入本文中。本申请案还主张2011年11月4日申请的第61/555,932号美国临时申请案的权益。
【技术领域】
[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]一般来说,本发明描述用于编码及解码视频数据的技术。视频编码器可将一图片划分成多个图片分区。所述图片分区包含所述图片的树块的非重叠子集。实例类型的图片分区包含瓦片及波前并行处理(WPP)波。视频编码器可产生经译码切片网络抽象层(NAL)单元,所述经译码切片网络抽象层(NAL)单元包含与所述图片的切片相关联的树块的经编码表示。所述视频编码器产生所述经译码切片NAL单元,使得所述经译码树块依据所述树块所属于的图片分区而分组在经译码切片NAL单元内。所述视频编码器可填补所述片段中的一或多者以使得所述片段中的每一者在字节边界处开始。视频解码器可解码经译码切片NAL单元的经译码树块。
[0006]在一个方面中,本发明描述一种用于编码视频数据的方法。所述方法包括将图片划分成多个图片分区。所述图片具有多个树块。所述图片分区与所述图片的树块的非重叠子集相关联。所述方法还包括产生经译码切片NAL单元,所述经译码切片NAL单元包含与所述图片的切片相关联的树块的经编码表示,所述树块的所述经编码表示在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段,其中所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始。
[0007]在另一方面中,本发明描述一种解码视频数据的方法。所述方法包括存储经译码切片NAL单元,所述经译码切片NAL单元包含与图片的切片相关联的树块的经编码表示。所述图片被分割成多个图片分区。所述树块的所述经编码表示分组成与所述图片分区中的不同者相关联的片段。所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界处开始。所述方法还包括解码所述树块的所述经编码表示。
[0008]在另一方面中,本发明描述一种编码视频数据的视频编码装置。所述视频编码装置包括经配置以将图片划分成多个图片分区的一或多个处理器。所述图片具有多个树块。所述图片分区与所述图片的树块的非重叠子集相关联。所述一或多个处理器还经配置以产生经译码切片NAL单元,所述经译码切片NAL单元包含与所述图片的切片相关联的树块的经编码表示。所述树块的所述经编码表示在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段。所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始。
[0009]在另一方面中,本发明描述一种解码视频数据的视频解码装置。所述视频解码装置包括存储经译码切片NAL单元的存储器,所述经译码切片NAL单元包含与图片的切片相关联的树块的经编码表示。所述图片被划分成多个图片分区。所述树块的所述经编码表示分组成与所述图片分区中的不同者相关联的片段。所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界处开始。所述视频解码装置还包括一或多个处理器,所述一或多个处理器经配置以解码所述树块的所述经编码表示。
[0010]在另一方面中,本发明描述一种包括一或多个计算机可读存储媒体的计算机程序产品,所述计算机可读存储媒体存储在由一或多个处理器执行时配置视频编码装置以将图片划分成多个图片分区的指令。所述图片具有多个树块。所述图片分区与所述图片的树块的非重叠子集相关联。所述指令还配置所述视频编码装置以产生经译码切片NAL单元,所述经译码切片NAL单元包含与所述图片的切片相关联的树块的经编码表示。所述树块的所述经编码表示在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段。所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始。
[0011]在另一方面中,本发明描述一种包括一或多个计算机可读存储媒体的计算机程序产品,所述计算机可读存储媒体存储在由一或多个处理器执行时配置视频解码装置以存储经译码切片NAL单元的指令,所述经译码切片NAL单元包含与图片的切片相关联的树块的经编码表示。所述图片被划分成多个图片分区。所述树块的所述经编码表示分组成与所述图片分区中的不同者相关联的片段。所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界处开始。所述指令还配置所述视频解码装置以解码所述树块的所述经编码表不。
[0012]在另一方面中,本发明描述一种编码视频数据的视频编码装置。所述视频编码装置包括用于将图片划分成多个图片分区的装置。所述图片具有多个树块。所述图片分区与所述图片的树块的非重叠子集相关联。所述视频编码装置还包括用于产生经译码切片NAL单元的装置,所述经译码切片NAL单元包含与所述图片的切片相关联的树块的经编码表示。所述树块的所述经编码表示在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段。所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始。
[0013]在另一方面中,本发明描述一种解码视频数据的视频解码装置。所述视频解码装置包括用于存储经译码切片NAL单元的装置,所述经译码切片NAL单元包含与图片的切片相关联的树块的经编码表示。所述图片被划分成多个图片分区。所述树块的所述经编码表示分组成与所述图片分区中的不同者相关联的片段。所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界处开始。所述视频解码装置包括用于解码所述树块的所述经编码表示的装置。
[0014]一或多个实例的细节陈述于附图及以下描述中。其它特征、目标及优势将从描述及图式且从权利要求书中显而易见。
【专利附图】

【附图说明】
[0015]图1是说明可利用本发明的技术的实例视频译码系统的框图。
[0016]图2是说明经配置以实施本发明的技术的实例视频编码器。
[0017]图3是说明经配置以实施本发明的技术的实例视频解码器的框图。
[0018]图4是说明产生用于图片的切片的切片数据的实例操作的流程图。
[0019]图5是说明解码经译码切片NAL单元的实例操作的流程图。
[0020]图6是说明波前并行处理的概念图。
[0021]图7是说明当将图片分割成多个瓦片时的实例译码次序的概念图。
[0022]图8是说明实例经译码切片NAL单元的概念图。
【具体实施方式】
[0023]一图片包含多个树块。树块与所述图片内的二维视频块相关联。视频编码器将图片划分成多个图片分区。举例来说,所述视频编码器可将所述图片划分成瓦片或波前并行处理(WPP)波。换句话说,本发明可使用术语“图片分区”来大体指代瓦片或WPP波。所述图片分区与所述图片的树块的非重叠子集相关联。举例来说,所述图片的每一树块可与所述图片分区中的恰好一者相关联。
[0024]视频编码器可产生经译码切片网络抽象层(NAL)单元。所述经译码切片NAL单元可包含与图片的切片相关联的每一树块的经编码表示。本发明可将树块的经编码表示称为经译码树块。经译码树块可包含表示与树块相关联的视频块的位序列。经译码树块中的所述位序列可表示语法元素序列。
[0025]视频编码器可在经译码切片NAL单元内将经译码树块分组成片段。所述片段与图片分区中的不同者相关联。所述片段中的每一者可为一系列相连位,例如表示一系列一或多个经译码树块及相关联数据的位。因此,经译码切片NAL单元可包含与第一图片分区相关联的每一经译码树块继之以与第二图片分区相关联的每一经译码树块,随后为与第三图片分区相关联的每一经译码树块,以此类推。
[0026]根据本发明的技术,视频编码器可填补所述片段中的一或多者,使得所述片段中的每一者在字节边界上开始。当视频编码器填补一片段时,所述视频编码器可将填补位附加到所述片段。所述填补位可不具有任何语义含义,但可用以确保下一片段在字节边界处开始。以此方式,视频编码器可在瓦片或WPP波包含在一个经译码切片NAL单元中以用于并行处理目的时提供所述瓦片或WPP波的字节对准。
[0027]视频解码器可将所述经译码切片NAL单元存储在字节寻址存储器中。视频解码器可接着将所述片段中的两者或两者以上指派到并行操作的不同解码线程。每一解码线程解码指派给所述解码线程的片段的经译码树块。因为所述片段中的每一者在字节边界处开始,所述视频解码器可在将片段指派到解码线程时将所述片段的存储器地址提供到所述解码线程。以此方式,确保片段中的每一者在字节边界处开始可使得视频解码器能够以比片段可在非字节边界位置处开始时简单的方式并行地解码所述片段。
[0028]此可与并不确保片段在字节边界处开始的常规视频编码器及常规视频解码器形成对比。因为片段可能不在字节边界处开始,因此使用逐字节存储器寻址的常规视频解码器可能不能够并行地解码片段中的经译码树块。常规视频解码器可使用逐位存储器寻址或逐字节加逐位寻址来使得能够并行地解码片段中的经译码树块,但实施与计算复杂性增大。
[0029]【专利附图】
附图
【附图说明】若干实例。由附图中的参考数字指示的元件对应于在以下描述中由相同参考数字指示的元件。在本发明中,名称以序数词(例如,“第一”、“第二”、“第三”,等)开始的元件未必暗示所述元件具有特定次序。确切地说,此些序数词仅用于指代相同或类似类型的不同元件。此外,在以下描述中,“当前图片”可指当前正被编码或解码的图片。
[0030]图1是说明可利用本发明的技术的实例视频译码系统10的框图。如本文中所描述地使用,术语“视频译码器” 一般指代视频编码器及视频解码器两者。在本发明中,术语“视频译码”或“译码”可一般地指代视频编码及视频解码。
[0031]如图1中所示,视频译码系统10包含源装置12及目的地装置14。源装置12产生经编码视频数据。因此,源装置12可被称为视频编码装置。目的地装置14可解码由源装置12产生的经编码视频数据。因此,目的地装置14可被称为视频解码装置。源装置12及目的地装置14可为视频译码装置的实例。
[0032]源装置12及目的地装置14可包括广泛范围的装置,包含桌上型计算机、行动计算装置、笔记型(例如,膝上型)计算机、平板计算机、机顶盒、例如所谓的“智能”电话等电话手持机、电视、摄影机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机(in-carcomputer)或其类似者。在一些实例中,源装置12及目的地装置14可经装备以用于无线通信。
[0033]目的地装置14可经由信道16从源装置12接收经编码视频数据。信道16可包括能够将经编码视频数据从源装置12移动到目的地装置14的类型的媒体或装置。在一个实例中,信道16可包括使源装置12能够实时将经编码视频数据直接传输到目的地装置14的通信媒体。在此实例中,源装置12可根据例如无线通信协定等通信标准调制经编码视频数据,且可将经调制视频数据发射到目的地装置14。所述通信媒体可包括无线或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。通信媒体可能形成分组网络(例如局域网、广域网或全球网络,例如因特网)的部分。通信媒体可包含路由器、交换器、基站或促进从源装置12到目的地装置14的通信的其它装备。
[0034]在另一实例中,信道16可对应于存储由源装置12产生的经编码视频数据的存储媒体。在此实例中,目的地装置14可经由磁盘存取或卡存取来存取存储媒体。存储媒体可包含多种本地存取的数据存储媒体,例如蓝光光盘、DVD、⑶-ROM、快闪存储器或用于存储经编码视频数据的其它合适数字存储媒体。在另一实例中,信道16可包含存储由源装置12产生的经编码视频的文件服务器或另一中间存储装置。在此实例中,目的地装置14可经由流式传输或下载来存取存储于文件服务器或其它中间存储装置处的经编码视频数据。文件服务器可为能够存储经编码视频数据且将经编码视频数据发射到目的地装置14的类型的服务器。实例文件服务器包含网络服务器(例如,用于网站)、文件传送协定(FTP)服务器、网络附接存储(NAS)装置及本地磁盘驱动器。目的地装置14可通过标准数据连接(包含因特网连接)来存取经编码视频数据。数据连接的实例类型可包含适合于存取存储于文件服务器上的经编码视频数据的无线信道(例如,W1-Fi连接)、有线连接(例如,DSL、缆线调制解调器等)或两者的组合。经编码视频数据从文件服务器的传输可为流式传输、下载传输或两者的组合。
[0035]本发明的技术不限于无线应用或设定。所述技术可应用于视频译码以支持多种多媒体应用,例如空中电视广播、有线电视发射、卫星电视发射、流式视频传输(例如,经由因特网)、编码视频数据以存储于数据存储媒体上、解码存储于数据存储媒体上的视频数据,或其它应用。在一些实例中,视频译码系统10可经配置以支持单向或双向视频传输以支持例如视频流式传输、视频回放、视频广播及/或视频电话等应用。
[0036]在图1的实例中,源装置12包含视频源18、视频编码器20及输出接口 22。在一些情况下,输出接口 22可包含调制器/解调制器(调制解调器)及/或发射器。在源装置12中,视频源18可包含例如视频俘获装置(例如,视频摄影机)、含有先前俘获的视频数据的视频存档、从视频内容提供者接收视频数据的视频馈入接口及/或用于产生视频数据的计算机图形系统等源,或这些源的组合。
[0037]视频编码器20可编码所俘获、预先俘获或计算机产生的视频数据。经编码视频数据可经由源装置12的输出接口 22直接发射到目的地装置14。经编码视频数据还可存储到存储媒体或文件服务器上以供稍后由目的地装置14存取以用于解码及/或回放。
[0038]在图1的实例中,目的地装置14包含输入接口 28、视频解码器30及显示装置32。在一些情况下,输入接口 28可包含接收器及/或调制解调器。目的地装置14的输入接口28经由信道16接收经编码视频数据。经编码视频数据可包含由视频编码器20产生的表示所述视频数据的多种语法元素。此些语法元素可与在通信媒体上发射、存储在存储媒体上或存储在文件服务器中的经编码视频数据包含在一起。
[0039]显示装置32可与目的地装置14集成或可在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还可经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置32向用户显示经解码视频数据。显示装置32可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
[0040]视频编码器20及视频解码器30可根据例如目前在开发中的高效率视频译码(HEVC)标准等视频压缩标准操作且可遵照HEVC测试模型(HM)。被称为“ HEVC工作草案6”或“WD6”的即将到来的HEVC标准的新近草案在文档JCTVC-H1003,Bross等人的“高效率视频译码(HEVC)文本规范草案 6 (High efficiency video coding(HEVC) textspecification draft6) ”(ITU-T SG16WP3 及 IS0/IEC JTC1/SC29/WG11 视频译码联合协作小组(JCT-VC)于2012年2月在美国加利福尼亚州圣何塞的第8次会议)中描述,其可从 2012 年 5 月 I 日起从 http://phenix.1nt-evry.fr/jet/doc_end_user/documents/8_San% 20Jose/Wgll/JCTVC-H1003-v22.zip下载,其全部内容以引用的方式并入本文中。或者,当包含如瓦片或波前并行处理的图片分割技术时,视频编码器20及视频解码器30可根据其它专属或工业标准来操作,其它专属或工业标准例如ITU-T H.264标准(替代地称为MPEG-4第10部分高级视频译码(AVC),或此些标准的扩展。然而,本发明的技术不限于任何特定译码标准或技术。当包含如瓦片或波前并行处理的图片分割技术时,视频压缩标准及技术的其它实例包含MPEG-2、ITU-T H.263及专属或开源压缩格式,例如VP8及相关格式。
[0041]尽管图1的实例中未展示,但视频编码器20及视频解码器30可各自与音频编码器及解码器集成,且可包含适当多路复用器-多路分用器单元或其它硬件及软件以处置对共同数据流或单独数据流中的音频及视频两者的编码。在一些实例中,如果适用,多路复用器-多路分用器单元可符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。
[0042]再次,图1仅为实例,且本发明的技术可适用于未必包含编码装置与解码装置之间的任何数据通信的视频译码设定(例如,视频编码或视频解码)。在其它实例中,数据可从本地存储器检索、经由网络流式传输,或其类似者。编码装置可编码数据且将数据存储到存储器,及/或解码装置可从存储器检索数据且解码数据。在许多实例中,通过并不彼此通信而是简单地编码数据到存储器及/或从存储器检索数据且解码数据的装置执行编码及解码。
[0043]视频编码器20及视频解码器30各自可实施为例如以下各者的多种合适电路中的任一者:一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、硬件或其任何组合。当部分地以软件实施技术时,装置可将软件的指令存储于合适的非暂时性计算机可读存储媒体中且可使用一或多个处理器以硬件执行指令从而执行本发明的技术。视频编码器20及视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装置中的组合编码器/解码器(编解码器)的部分。
[0044]如上文简要提及,视频编码器20编码视频数据。视频数据可包括一或多个图片。所述图片中的每一者可为形成视频的部分的静态图像。在一些情况下,图片可被称为视频“帧”或视频“字段”。当视频编码器20编码视频数据时,视频编码器20可产生位流。所述位流可包含形成视频数据的经译码表示的位序列。所述位流可包含经译码图片及相关联数据。经译码图片为图片的经译码表示。
[0045]为了产生位流,视频编码器20可对视频数据中的每一图片执行编码操作。当视频编码器20对图片执行编码操作时,视频编码器20可产生一系列经译码图片及相关联数据。所述相关联数据可包含序列参数集、图片参数集、调适参数集,及其它语法结构。序列参数集(SPS)可含有适用于零个或零个以上图片序列的参数。图片序列也可被称为经译码视频序列,如在H.264/AVC及HEVC中。图片参数集(PPS)可含有适用于零个或零个以上图片的参数。调适参数集(APS)可含有适用于零或更多个图片的参数。APS中参数可为比PPS中的参数更可能改变的参数。
[0046]为产生经译码图片,视频编码器20可将图片分割成大小相等的视频块。视频块可为样本的二维阵列。视频块中的每一者与一树块相关联。在一些情况下,树块可被称为最大译码单元(LCU)或译码树块。HEVC的树块可广泛地类似于例如H.264/AVC等先前标准的宏块。然而,树块不必限于特定大小,且可包含一或多个译码单元(CU)。视频编码器20可使用四叉树分割来将树块的视频块分割成与CU相关联的像素块(因此名称为“树块”)。
[0047]在一些实例中,视频编码器20可将图片分割成多个切片。切片中的每一者可包含整数数目个连续经译码树块。在一些情况下,所述切片中的每一者可包含整数数目个连续经译码CU。作为对图片执行编码操作的部分,视频编码器20可对图片的每一切片执行编码操作。当视频编码器20对切片执行编码操作时,视频编码器20可产生与切片相关联的经编码数据。与切片相关联的经编码数据可被称为“经译码切片”。
[0048]为产生经译码切片,视频编码器20可对切片中的每一树块执行编码操作。当视频编码器20对树块执行编码操作时,视频编码器20可产生经译码树块。经译码树块可包括表示树块的经编码版本的数据。
[0049]当视频编码器20产生经译码切片时,视频编码器20可根据光栅扫描次序对切片中的树块执行编码操作(即,编码)。换句话说,视频编码器20可按如下次序来编码切片的树块:跨越切片中的树块的最顶行从左到右进行,接着跨越树块的下一较低行从左到右进行,以此类推,直到视频编码器20己编码切片中的树块中的每一者为止。
[0050]作为根据光栅扫描次序编码树块的结果,可己编码在特定树块的上方及左方的树块,但尚未编码在给定树块的下方及右方的树块。因此,视频编码器20可能够在编码给定树块时存取通过编码在给定树块的上方及左方的树块而产生的信息。然而,视频编码器20可不能够在编码给定树块时存取通过编码在给定树块的下方及右方的树块而产生的信息。
[0051]为了产生经译码树块,视频编码器20可对树块的视频块递归地执行四叉树分割以将所述视频块划分成逐步减小的像素块。较小视频块中的每一者可与不同CU相关联。举例来说,视频编码器20将树块的视频块分割成四个大小相等的子块,将所述子块中的一或多者分割成四个大小相等的子子块,以此类推。经分割CU可为其视频块被分割成与其它CU相关联的视频块的CU。未经分割CU可为其视频块未被分割成与其它CU相关联的视频块的CU。
[0052]位流中的一或多个语法元素可指示视频编码器20可分割树块的视频块的最大次数。CU的视频块在形状上可为正方形。CU的视频块的大小(即,CU的大小)范围可在8x8像素直到具有64x64个像素或更大的最大值的树块的视频块的大小(即,树块的大小)。
[0053]视频编码器20可根据z扫描次序对树块的每一 CU执行编码操作(即,编码)。换句话说,视频编码器20可按z扫描次序编码左上⑶、右上⑶、左下⑶,且接着编码右下⑶。当视频编码器20对经分割CU执行编码操作时,视频编码器20根据z扫描次序编码与所述经分割CU的视频块的子块相关联的CU。换句话说,视频编码器20可按z扫描次序编码与左上子块相关联的CU、与右上子块相关联的CU、与左下子块相关联的CU,且接着编码与右下子块相关联的CU。
[0054]由于根据z扫描次序编码树块的⑶,可能己编码在给定⑶上方、左上方、右上方、左方及左下方的CU。尚未编码在给定CU下方及右方的CU。因此,视频编码器20在编码给定CU时可能能够存取通过编码邻近所述给定CU的一些CU而产生的信息。然而,视频编码器20在编码给定CU时可能不能够存取通过编码邻近所述给定CU的其它CU而产生的信息。
[0055]当视频编码器20编码未经分割⑶时,视频编码器20可产生用于所述⑶的一或多个预测单元(PU)。所述CU的PU中的每一者可与所述CU的视频块内的不同视频块相关联。视频编码器20可产生用于CU的每一 PU的预测视频块。的所述预测视频块可为样本块。视频编码器20可使用帧内预测或帧间预测来产生用于的预测视频块。
[0056]当视频编码器20使用帧内预测来产生PU的预测视频块时,视频编码器20可基于与所述PU相关联的图片的经解码样本而产生所述的预测视频块。如果视频编码器20使用帧内预测来产生CU的PU的预测视频块,则所述CU为经帧内预测CU。当视频编码器20使用帧间预测来产生PU的预测视频块时,视频编码器20可基于不同于与所述相关联的图片的一或多个图片的经解码样本产生所述PU的预测视频块。如果视频编码器20使用帧间预测来产生CU的PU的预测视频块,则所述CU为经帧间预测CU。
[0057]此外,当视频编码器20使用帧间预测来产生的预测视频块时,视频编码器20可产生所述PU的运动信息。的运动信息可指示所述的一或多个参考块。的每一参考块可为参考图片内的视频块。参考图片可为不同于与PU相关联的图片的图片。在一些情况下,PU的参考块还可被称作PU的“参考样本”。视频编码器20可基于PU的参考块产生所述PU的预测视频块。
[0058]在视频编码器20产生用于⑶的一或多个的预测视频块之后,视频编码器20可基于用于CU的所述PU的预测视频块产生所述CU的残余数据。CU的残余数据可指示用于CU的PU的预测视频块中的样本与CU的原始视频块之间的差。
[0059]此外,作为对未经分割CU执行编码操作的部分,视频编码器20可对CU的残余数据执行递归四叉树分割以将CU的残余数据分割成与CU的变换单元(TU)相关联的一或多个残余数据块(即,残余视频块)。CU的每一 TU可与不同残余视频块相关联。
[0060]视频译码器20可对与TU相关联的残余视频块应用一或多个变换以产生与TU相关联的变换系数块(即,变换系数的块)。在概念上,变换系数块可为变换系数的二维(2D)矩阵。
[0061]在产生变换系数块之后,视频编码器20可对所述变换系数块执行量化处理。量化大体上指代对变换系数进行量化以可能减少用以表示变换系数的数据的量从而提供进一步压缩的过程。量化过程可减少与变换系数中的一些或全部相关联的位深度。举例来说,可在量化期间将η位变换系数降值舍位到m位变换系数,其中η大于m。
[0062]视频编码器20可使每一⑶与量化参数(QP)值相关联。与⑶相关联的QP值可确定视频编码器20如何量化与所述CU相关联的变换系数块。视频编码器20可通过调整与CU相关联的QP值来调整应用于与CU相关联的变换系数块的量化的程度。
[0063]在视频编码器20量化变换系数块之后,视频编码器20可产生表示经量化变换系数块中的变换系数的语法元素的集合。视频编码器20可将例如上下文自适应性二进制算术译码(CABAC)操作等熵编码操作应用于这些语法元素中的一些。
[0064]由视频编码器20产生的位流可包含一系列网络抽象层(NAL)单元。所述NAL单元中的每一者可为含有NAL单元中的数据类型的指示及含有数据的字节的语法结构。举例来说,NAL单元可含有表示序列参数集、图片参数集、经译码切片、一或多个补充增强信息(SEI)消息、存取单元定界符、填充数据或另一类型的数据的数据。NAL单元中的数据可包含各种语法结构。
[0065]视频解码器30可接收由视频编码器20产生的位流。所述位流可包含由视频编码器20编码的视频数据的经译码表示。当视频解码器30接收到位流时,视频解码器30可对所述位流执行剖析操作。当视频解码器30执行剖析操作时,视频解码器30可从所述位流提取语法元素。视频解码器30可基于从位流提取的语法元素重建视频数据的图片。基于语法元素重建视频数据的过程可与通过视频编码器20执行以产生语法元素的过程大体上互反。
[0066]在视频解码器30提取与CU相关联的语法元素之后,视频解码器30可基于所述语法元素产生用于CU的PU的预测视频块。另外,视频解码器30可反量化与CU的TU相关联的变换系数块。视频解码器30可对变换系数块执行反变换以重建与CU的TU相关联的残余视频块。在产生预测视频块且重建残余视频块之后,视频解码器30可基于所述预测视频块及所述残余视频块重建CU的视频块。以此方式,视频解码器30可基于位流中的语法元素重建⑶的视频块。
[0067]视频编码器20可将当前图片划分成多个图片分区。所述图片分区可与当前图片的树块的非重叠子集相关联。视频编码器20可以各种方式将当前图片划分成多个图片分区。如下文所描述,视频编码器20可将当前图片划分成多个瓦片或多个波前并行处理(WPP)波。本发明可使用术语“图片分区”来一般地指代瓦片及WPP波两者。将当前图片划分成图片分区的过程可被称为将当前图片“分割”成图片分区。
[0068]如上文所提及,视频编码器20可将当前图片划分成一或多个瓦片。瓦片中的每一者可包括当前图片中的整数数目的树块。视频编码器20可通过界定两个或两个以上垂直块边界及两个或两个以上水平块边界而将当前图片划分成瓦片。可认为当前图片的每一垂直侧是垂直瓦片边界。可认为当前图片的每一水平侧为水平瓦片边界。举例来说,如果视频编码器20界定当前图片的四个垂直瓦片边界及三个水平瓦片边界,则将当前图片划分成六个瓦片。
[0069]例如视频编码器20或视频解码器30等视频译码器可根据光栅扫描次序译码当前图片的瓦片。此外,当视频译码器译码瓦片时,视频译码器可根据光栅扫描次序译码瓦片内的每一树块。以此方式,视频译码器可在译码当前图片的另一瓦片的任何树块之前译码当前图片的给定瓦片的每一树块。因此,视频译码器译码当前图片的树块的次序在视频译码器将当前图片分割成多个瓦片时与在视频译码器不将当前图片分割成多个瓦片时可不同。
[0070]此外,在一些情况下,只要给定⑶及空间上相邻的⑶属于同一瓦片,视频译码器即可使用与空间上相邻的CU相关联的信息来对当前图片中的给定CU执行帧内预测。空间上相邻的CU为属于当前图片的当前切片的CU。在一些例子中,只要给定CU及空间上相邻的CU在同一瓦片内,视频译码器即可使用与空间上相邻的CU相关联的信息来选择用于CABAC编码所述给定CU的语法元素的上下文。因为这些限制,视频译码器可能够并行地译码多个瓦片的树块。
[0071]在其它实例中,视频译码器可使用波前并行处理(WPP)来译码当前图片。在视频译码器使用WPP来译码当前图片时,视频译码器可将当前图片的树块划分成多个“WPP波”。WPP波中的每一者可对应于当前图片中的树块的不同行。当视频译码器使用WPP来译码当前图片时,视频译码器可开始译码树块的顶行。当视频译码器己译码顶行的两个或两个以上树块时,视频译码器可开始与译码树块的顶行并行地译码树块的次顶行。在视频译码器己译码次顶行的两个或两个以上树块之后,视频译码器可开始与译码树块的较高行并行地译码树块的顶部起第三行。此模式可沿当前图片中的树块的行往下继续。
[0072]当视频译码器正使用WPP来译码当前图片时,只要空间上相邻的CU在当前树块的左方、左上方、上方或右上方,视频译码器即可使用与在当前树块之外的空间上相邻的CU相关联的信息来对当前树块中的给定CU执行帧内预测。如果当前树块为不同于最顶行的行中的最左树块,则视频译码器可使用与紧接的较高行的第二树块相关联的信息来选择用于CABAC编码当前树块的语法元素的上下文。否则,如果当前树块并非行中的最左树块,则视频译码器可使用与当前树块左方的树块相关联的信息来选择用于CABAC编码当前树块的语法元素的上下文。以此方式,视频译码器可在编码紧接的较高行的两个或两个以上树块之后基于紧接的较高行的CABAC状态来初始化行的CABAC状态。
[0073]在一些实例中,当视频译码器正使用WPP来译码当前图片时,当前图片的唯一瓦片的边界为当前图片的水平及垂直边界。因此,当前图片的唯一瓦片的大小可与当前图片相同。视频译码器可将当前图片及因此当前图片的单个瓦片划分成多个WPP波。
[0074]如上文所提及,视频编码器20可产生包含切片的经编码表示的经译码切片NAL单元。切片可与整数数目的连续经译码树块相关联。经译码切片NAL单元可包含切片标头及切片数据。切片数据可包含与切片相关联的每一树块的经编码表示。视频编码器20可产生经译码切片NAL单元以使得根据树块所属于的图片分区在切片数据内将树块的此些经编码表示分组为片段。举例来说,经译码切片NAL单元可包含与第一图片分区相关联的每一经译码树块继之以与第二图片分区相关联的每一经译码树块,随后为与第三图片分区相关联的每一经译码树块,以此类推。
[0075]根据本发明的技术,视频编码器20可填补所述片段中的一或多者,使得所述片段中的每一者在字节边界上开始。经译码切片NAL单元可划分成一系列字节。当片段的第一位为经译码切片NAL单元的字节中的一者的第一位时,所述片段可在字节边界上开始。此夕卜,如果片段的第一位为经译码切片NAL单元的字节中的一者的第一位,则所述片段可为字节对准的。当视频编码器20填补一片段时,视频编码器20可将填补位附加到所述片段。举例来说,视频编码器20可将一或多个填补位添加到一片段,使得所述片段中的位的数目可由八除尽而不留下余数。所述填补位可不具有任何语义含义,但可用以确保下一片段在字节边界处开始。
[0076]当视频解码器30接收到经译码切片NAL单元时,视频编码器30可将经译码切片NAL单元存储在存储器中。为了并行地解码图片分区,视频解码器30可将所述片段指派到并行运行的不同解码线程。为了将所述片段指派到不同解码线程,视频解码器30可能需要向存储器指示与所述片段的开始相关联的地址。视频解码器30可使用逐字节存储器寻址。因此,如果所述片段的开始出现在字节内,则视频解码器30可能不能够向存储器指示与片段的开始相关联的地址。因此,如果片段中的一或多者在字节内开始,则视频解码器30可能不能够并行地解码所述片段中的经译码树块。或者,视频解码器30可使用逐位存储器寻址或逐字节加逐位寻址来使得能够并行地解码片段中的经译码树块,但实施与计算复杂性增大。
[0077]以此方式,视频编码器20可将一图片划分成多个图片分区。所述图片具有多个树块。所述图片分区与所述图片的树块的非重叠子集相关联。视频编码器20可产生经译码切片NAL单元,所述经译码切片NAL单元包含与所述图片的切片相关联的树块的经编码表示。所述树块的所述经编码表示在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段。所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始。
[0078]此外,视频解码器30可存储经译码切片NAL单元,所述经译码切片NAL单元包含与图片的切片相关联的树块的经编码表示。所述图片可划分成多个图片分区。所述树块的所述经编码表示可分组成与所述图片分区中的不同者相关联的片段。所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界处开始。视频解码器30可解码树块的经编码表示。在一些情况下,视频解码器30可并行地解码所述片段中的两者或两者以上中的树块的经编码表示。
[0079]图2是说明经配置以实施本发明的技术的实例视频编码器20的框图。图2是出于解释的目的而提供,且不应被视为将技术限制为本发明中所大致例示及描述者。出于解释的目的,本发明在HEVC译码的上下文中描述视频编码器20。然而,本发明的技术可适用于其它译码标准或方法。
[0080]在图2的实例中,视频编码器20包含多个功能组件。视频编码器20的功能组件包含预测模块100、残余产生模块102、变换模块104、量化模块106、反量化模块108、反变换模块110、重建模块112、滤波器模块113、经解码图片缓冲器114及熵编码模块116。预测模块100包含帧间预测模块121、运动估计模块122、运动补偿模块124,及帧内预测模块126。在其它实例中,视频编码器20可包含更多、更少或不同功能组件。此外,运动估计模块122与运动补偿模块124可高度集成,但出于解释的目的而在图2的实例中分离地表示。
[0081]视频编码器20可接收视频数据。视频编码器20可从各种源接收视频数据。举例来说,视频编码器20可从视频源18(图1)或另一源接收视频数据。视频数据可表示一系列图片。为编码视频数据,视频编码器20可对图片中的每一者执行编码操作。作为对图片执行编码操作的部分,视频编码器20可对图片的每一切片执行编码操作。作为对切片执行编码操作的部分,视频编码器20可对切片中的树块执行编码操作。
[0082]作为对树块执行编码操作的部分,预测模块100可对树块的视频块执行四叉树分割以将所述视频块划分成逐渐变小的视频块。较小视频块中的每一者可与不同CU相关联。举例来说,预测模块100可将树块的视频块分割成四个大小相等的子块、将所述子块中的一者或一者以上分割成四个大小相等的子子块,以此类推。
[0083]与⑶相关联的视频块的大小范围可从8x8样本高达最大64x64像素或更大的树块大小。在本发明中,“NxN”及“N乘N”可互换使用来指代在垂直及水平尺寸方面的视频块的像素尺寸,例如,16x16样本或16乘16样本。一般来说,16x16视频块在垂直方向上具有16个样本(y = 16),且在水平方向上具有16个样本(x = 16)。同样,NxN块一般在垂直方向上具有N个样本,且在水平方向上具有N个样本,其中N表示非负整数值。
[0084]此外,作为对树块执行编码操作的部分,预测模块100可产生用于所述树块的阶层式四叉树数据结构。举例来说,树块可对应于四叉树数据结构的根节点。如果预测模块100将树块的视频块分割成四个子块,则所述根节点在所述四叉树数据结构中具有四个子级节点。所述子级节点中的每一者对应于与子块中的一者相关联的CU。如果预测模块100将子块中的一者分割成四个子子块,则对应于与子块相关联的CU的节点可具有四个子级节点,其中的每一者对应于与所述子子块相关联的CU。[0085]四叉树数据结构的每一节点可含有用于对应树块或CU的语法数据(例如,语法元素)。举例来说,四叉树中的节点可包含分裂旗标,其指示对应于所述节点的CU的视频块是否被分割(即,分裂)成四个子块。可取决于所述CU的视频块是否分裂成子块来递归地界定用于CU的语法元素。其视频块未被分割的CU可对应于四叉树数据结构中的叶节点。经译码树块可包含基于用于对应树块的四叉树数据结构的数据。
[0086]视频编码器20可对树块中的每一未经分割⑶执行编码操作。当视频编码器20对未经分割CU执行编码操作时,视频编码器20产生表示未经分割CU的经编码表示的数据。
[0087]作为对CU执行编码操作的部分,预测模块100可将CU的一或多个之间分割CU的视频块。视频编码器20及视频解码器30可支持各种PU大小。假定特定CU的大小为2Nx2N,视频编码器20及视频解码器30可支持2Nx2N或NxN的PU大小,及2Nx2N、2NxN、Nx2N、NxN、2NxnU、nLx2N、nRx2N或类似的对称I3U大小的帧间预测。视频编码器20及视频解码器30还可支持用于2NxnU、2NxnD、nLx2N及nRx2N的PU大小的不对称分割。在一些实例中,预测模块100可执行几何分割以沿并不按直角与CU的视频块的侧相交的边界来在CU的PU之间分割CU的视频块。
[0088]帧间预测模块121可对⑶的每一 PU执行帧间预测。帧间预测可提供时间压缩。为了对PU执行帧间预测,运动估计模块122可产生用于所述的运动信息。运动补偿模块124可基于不同于与所述CU相关联的图片(即,参考图片)的图片的运动信息及经解码样本来产生用于所述PU的预测视频块。在本发明中,由运动补偿模块124产生的预测视频块可被称为经帧间预测视频块。
[0089]切片可为I切片、P切片,或B切片。运动估计模块122及运动补偿模块124可取决于I3U处于I切片、P切片还是B切片中而对CU的PU执行不同操作。在I切片中,所有PU是经帧内预测。因此,如果在I切片中,则运动估计模块122及运动补偿模块124不对PU执行帧间预测。
[0090]如果PU在P切片中,则含有所述的图片与称为“列表O”的参考图片列表相关联。列表O中的参考图片中的每一者含有可用于其它图片的帧间预测的样本。当运动估计模块122关于P切片中的I3U执行运动估计操作时,运动估计模块122可搜索列表O中的参考图片以找出用于PU的参考块。的参考块可为最接近对应于的视频块中的样本的一组样本,例如样本块。运动估计模块122可使用多种量度来确定参考图片中的一组样本对应于PU的视频块中的样本的接近程度。举例来说,运动估计模块122可通过绝对差和(SAD)、平方差和(SSD)或其它差量度来确定参考图片中的一组样本对应于视频块中的样本的接近程度。
[0091]在识别出P切片中的的参考块之后,运动估计模块122可产生指示列表O中的参考图片含有参考块及指不PU与参考块之间的空间位移的运动向量的参考索引。在各种实例中,运动估计模组122可以变化的精确度产生运动向量。举例来说,运动估计模块122可以四分之一样本精度、八分之一样本精度或其它分数样本精度产生运动向量。在分数样本精度的情况下,参考块值可从整数位置样本值内插在参考图片中。运动估计模块122可将参考索引及运动向量输出为PU的运动信息。运动补偿模块124可基于由的运动信息识别的参考块而产生PU的预测视频块。
[0092]如果PU位于B切片中,则含有的图片可与称为“列表O”及“清单I”的两个参考图片列表相关联。在一些实例中,含有B切片的图片可与列表组合(即列表O与列表I的组合)相关联。
[0093]此外,如果PU在B切片中,则运动估计模块122可对PU执行单向预测或双向预测。当运动估计模块122对PU执行单向预测时,运动估计模块122可搜索列表O或列表I中的参考图片以找出用于所述PU的参考块。运动估计模块122可接着产生指示列表O或列表I中的含有参考块的参考图片的参考索引及指不PU与所述参考块之间的空间位移的运动向量。运动估计模块122可输出参考索引、预测方向指示符及运动向量作为用于所述PU的运动信息。预测方向指示符可指示参考索引指示列表O还是列表I中的参考图片。运动补偿模块124可基于由的运动信息指示的参考块来产生的预测视频块。
[0094]当运动估计模块122对PU执行双向预测时,运动估计模块122可搜索列表O中的参考图片以找出用于所述PU的参考块,且还可搜索列表I中的参考图片以找出用于所述的另一参考块。运动估计模块122可接着产生指示列表O或列表I中的含有参考块的参考图片的参考索引及指示所述参考块与PU之间的空间位移的运动向量。运动估计模块122可将PU的参考索引及运动向量输出为的运动信息。运动补偿模块124可基于由的运动信息指示的参考块而产生PU的预测视频块。
[0095]在一些情况下,运动估计模块122不将PU的运动信息的完整集合输出到熵编码模块116。确切地说,运动估计模块122可参考另一 PU的运动信息来用信号表示I3U的运动信息。举例来说,运动估计模块122可确定PU的运动信息足够类似于相邻的运动信息。在此实例中,运动估计模块122可在与PU相关联的语法结构中指示一值,所述值向视频解码器30指示PU具有与相邻PU相同的运动信息。在另一实例中,运动估计模块122可在与PU相关联的语法结构中识别相邻PU及运动向量差(MVD)。运动向量差指示PU的运动向量与所指示的相邻PU的运动向量之间的差。视频解码器30可使用所指示的相邻的运动向量及运动向量差来确定PU的运动向量。通过在用信号表示第二 PU的运动信息时参考第一 PU的运动信息,视频编码器20可能够使用较少位用信号表示第二 的运动信息。
[0096]作为对⑶执行编码操作的部分,帧内预测模组126可对⑶的PU执行帧内预测。帧内预测可提供空间压缩。当帧内预测模块126对PU执行帧内预测时,帧内预测模块126可基于同一图片中的其它PU的经解码样本来产生用于的预测数据。用于的预测数据可包含预测视频块及各种语法元素。帧内预测模块126可对I切片、P切片及B切片中的I3U执行帧内预测。
[0097]为对PU执行帧内预测,帧内预测模块126可使用多个帧内预测模式来产生用于的多组预测数据。当帧内预测模块126使用帧内预测模式来产生用于的一组预测数据时,帧内预测模块126可在与帧内预测模式相关联的方向及/或梯度上将样本从相邻PU的视频块跨越PU的视频块进行扩展。假定对于PU、CU及树块采用从左到右、从上到下的编码次序,相邻I3U可在所述PU的上方、右上方、左上方或左方。帧内预测模组126可取决于PU的大小而使用各种数目的帧内预测模式,例如33方向帧内预测模式。
[0098]预测模块100可从由运动补偿模块124针对PU产生的预测数据或由帧内预测模块126针对PU产生的预测数据当中选择用于的预测数据。在一些实例中,模式选择模块100基于预测数据组的速率/失真量度来选择用于PU的预测数据。
[0099]如果预测模块100选择由帧内预测模块126产生的预测数据,则预测模块100可用信号表示用以产生用于PU的预测数据的帧内预测模式,即所选帧内预测模式。预测模块100可以各种方式用信号表示所选帧内预测模式。举例来说,有可能所选帧内预测模式与相邻PU的帧内预测模式相同。换句话说,相邻PU的帧内预测模式可为用于当前的最可能模式。因此,预测模块100可产生语法元素以指示所选帧内预测模式与相邻的帧内预测模式相同。
[0100]在预测模块100选择用于⑶的的预测数据之后,残余产生模块102可通过从CU的视频块减去CU的PU的预测视频块来产生用于CU的残余数据。CU的残余数据可包含对应于CU的视频块中的样本的不同样本分量的2D残余视频块。举例来说,残余数据可包含对应于CU的PU的预测视频块中的样本的明度分量与CU的原始视频块中的样本的明度分量之间的差。此外,CU的残余数据可包含对应于CU的PU的预测视频块中的样本的色度分量与CU的原始视频块中的样本的色度分量之间的差的残余视频块。
[0101]预测模块100可执行四叉树分割以将CU的残余视频块分割成子块。每一未划分残余视频块可与CU的不同TU相关联。与CU的TU相关联的残余视频块的大小及位置可或可不基于与CU的PU相关联的视频块的大小及位置。被称为“残余四叉树”(RQT)的四叉树结构可包含与残余视频块中的每一者相关联的节点。CU的TU可对应于RQT的叶节点。
[0102]变换模块104可通过将一或多个变换应用到与CU的每一 TU相关联的残余视频块而产生用于所述TU的一或多个变换系数块。所述变换系数块中的每一者可为变换系数的2D矩阵。变换模块104可将各种变换应用到与TU相关联的残余视频块。举例来说,变换模块104向与TU相关联的残余视频块应用离散余弦变换(DCT)、定向变换或概念上类似的变换。
[0103]在变换模块104产生与TU相关联的变换系数块之后,量化模块106可量化所述变换系数块中的变换系数。量化模块106可基于与CU相关联的QP值而量化与CU的TU相关联的变换系数块。
[0104]视频编码器20可以各种方式使QP值与CU相关联。举例来说,视频编码器20可对与CU相关联的树块执行速率-失真分析。在速率-失真分析中,视频编码器20可通过对树块执行多次编码操作而产生所述树块的多个经译码表示。在视频编码器20产生树块的不同经编码表示时,视频编码器20可使不同QP值与CU相关联。当给定QP值与具有最低位速率及失真量度的树块的经译码表示中的CU相关联时,视频编码器20可用信号表示所述给定QP值与CU相关联。
[0105]反量化模块108及反变换模块110可分别对变换系数块应用反量化及反变换以从变换系数块重建残余视频块。重建模块112可将经重建残余视频块添加到来自由预测模块100产生的一或多个预测视频块的对应样本以产生与TU相关联的经重建视频块。通过以此方式重建⑶的每一 TU的视频块,视频编码器20可重建⑶的视频块。
[0106]在重建模块112重建⑶的视频块之后,滤波器模块113可执行解块操作以减小与所述CU相关联的视频块中的成块假影。在执行一或多个解块操作之后,滤波器模块113可将⑶的经重建视频块存储在经解码图片缓冲器114中。运动估计模块122及运动补偿模块124可使用含有所述经重建视频块的参考图片来对后续图片的PU执行帧间预测。另外,帧内预测模块126可使用经解码图片缓冲器114中的经重建视频块来对处于与CU相同的图片中的其它PU执行帧内预测。[0107]熵编码模块116可从视频编码器20的其它功能组件接收数据。举例来说,熵编码模块116可从量化模块106接收变换系数块,且可从预测模块100接收语法元素。当熵编码模块116接收到数据时,熵编码模块116可执行一或多个熵编码操作以产生经熵编码的数据。举例来说,视频编码器20可对所述数据执行上下文自适应可变长度译码(CAVLC)操作、CABAC操作、可变到可变(V2V)长度译码操作、基于语法的上下文自适应二进制算术译码(SBAC)操作、概率区间分割熵(PIPE)译码操作,或另一类型的熵编码操作。熵编码模块116可输出包含所述经熵编码数据的位流。
[0108]作为对数据执行熵编码操作的部分,熵编码模块116可选择上下文模型。如果熵编码模块116正执行CABAC操作,则上下文模型可指示特定二进制数具有特定值的概率估计。在CABAC的上下文中,术语“二进制数”用于指语法元素的二进制化版本的位。
[0109]视频编码器20可对于当前图片的每一切片产生经译码切片NAL单元。用于切片的经译码切片NAL单元可包含切片标头及切片数据。切片数据可包含多个片段。所述片段中的每一者包含与不同图片分区相关联的经译码树块。视频编码器20可填补所述片段以使得所述片段中的每一者在切片数据内的字节边界处开始。举例来说,经译码切片NAL单元中的片段可包含给定片段。在此实例中,视频编码器20可至少部分通过在下一树块在当前切片内部且与不同于给定片段的图片分区相关联的情况下执行填补操作而产生经译码切片NAL单元,所述填补操作将位附加到所述给定片段。
[0110]在一些实例中,视频编码器20可产生经译码切片NAL单元的切片标头,使得切片标头指示用于经译码切片NAL单元的切片数据中的片段的入口点。入口点可指示片段在切片数据内的位置。举例来说,入口点可指示片段的字节偏移。在此实例中,字节偏移可相对于经译码切片NAL单元的第一位、切片数据的第一位,或经译码切片NAL单元中的另一位。在另一实例中,入口点可指示片段中的每一者内的位或字节的数目。在一些实例中,切片标头不指示切片数据中第一片段的入口点。
[0111]在一些实例中,视频编码器20可确定旗标是否具有第一值(例如,I)。如果旗标具有第一值,则视频编码器20可填补所述片段中的一或多者以使得每一片段在字节边界处开始。当旗标具有第二值(例如,O)时,视频编码器20不填补所述片段。结果,所述片段可能或可能不在字节对准的位置开始。在此些实例中,序列参数集、图片参数集、调适参数集或切片标头可包含旗标。因此,在一些实例中,视频编码器20可产生与当前图片相关联的参数集,所述参数集包含旗标。当所述旗标具有第一值时,所述片段中的一或多者经填补而使得所述片段在字节边界处开始。当旗标具有第二值时,所述片段可能或可能不在字节边界处开始。
[0112]此外,在一些实例中,视频编码器20可将当前图片分割成多个瓦片。如果视频编码器20允许跨越瓦片边界的图片中预测(即,当瓦片中的两者或两者以上取决于彼此时),视频编码器20不填补所述片段。结果,所述片段可能或可能不在字节对准的位置开始。然而,如果视频编码器20不允许跨越瓦片边界的图片中预测,则视频编码器20可填补片段中的一或多者,使得所述片段中的每一者在字节边界处开始。因此,视频编码器20可至少部分通过仅在确定瓦片独立于彼此之后才执行填补操作而产生经译码切片NAL单元,所述填补操作确保片段在字节边界处开始。
[0113]图3是说明经配置以实施本发明的技术的实例视频解码器30的框图。图3是出于解释的目的而提供,且并不将技术限制为本发明中所大致例示及描述者。出于解释的目的,本发明在HEVC译码的上下文中描述视频解码器30。然而,本发明的技术可适用于其它译码标准或方法。
[0114]在图3的实例中,视频解码器30包含多个功能组件。视频解码器30的功能组件包含熵解码模块150、预测模块152、反量化模块154、反变换模块156、重建模块158、滤波器模块159及经解码图片缓冲器160。预测模块152包含运动补偿模块162及帧内预测模块164。在一些实例中,视频解码器30可执行与相对于图2的视频编码器20所描述的编码遍次大体互反的解码遍次。在其它实例中,视频解码器30可包含更多、更少或不同功能组件。
[0115]视频解码器30可接收包括经编码的视频数据的位流。所述位流可包含多个语法元素。当视频解码器30接收到位流时,熵解码模块150可对所述位流执行剖析操作。作为对位流执行解析操作的结果,熵解码模块150可从所述位流提取语法元素。作为执行剖析操作的部分,熵解码模块150可对位流中的熵编码语法元素进行熵解码。预测模块152、反量化模块154、反变换模块156、重建模块158及滤波器模块159可执行重建操作,其基于从位流提取的语法元素产生经解码视频数据。
[0116]如上文所论述,位流可包括一系列NAL单元。位流的NAL单元可包含序列参数集NAL单元、图片参数集NAL单元、SEI NAL单元,等。作为对位流执行剖析操作的部分,熵解码模块150可执行剖析操作,所述剖析操作从序列参数集NAL单元提取且熵解码序列参数集、从图片参数集NAL单元提取且熵解码图片参数集、从SEI NAL单元提取且熵解码SEI数据,等。
[0117]此外,位流的NAL单元可包含经译码切片NAL单元。作为对位流执行剖析操作的部分,视频解码器30可执行剖析操作,所述剖析操作从经译码切片NAL单元提取且熵解码经译码切片。经译码切片中之每一者可包括切片标头及切片数据。切片标头可含有关于切片的语法元素。切片标头中的语法元素可包含识别与含有所述切片的图片相关联的图片参数集的语法元素。
[0118]经译码切片NAL单元的切片数据可包含多个片段。所述片段中的每一者可包含与不同图片分区相关联的经译码树块(例如,瓦片或WPP波)。切片数据中的片段中的一或多者可经填补而使得所述片段中的每一者在字节边界处开始。经译码切片NAL单元的切片标头可指示片段的入口点。在此情况下,因为片段始终在字节边界处开始,因此视频解码器30可能够通过使用逐字节存储器寻址而以简单方式将片段中的不同者指派到不同解码线程。不同解码线程可剖析所述片段的经译码树块,且并行地重建与对应树块相关联的视频数据。
[0119]作为从经译码切片NAL单元提取切片数据的部分,熵解码模块150可执行从经译码CU提取语法元素的剖析操作。所提取的语法元素可包含与变换系数块相关联的语法元素。熵解码模块150可接着对语法元素中的一些执行CABAC解码操作。
[0120]在熵解码模块150对未经分割⑶执行剖析操作之后,视频解码器30可对未经分割⑶执行重建操作。为对未经分割⑶执行重建操作,视频解码器30可对⑶的每一 TU执行重建操作。通过对CU的每一 TU执行重建操作,视频解码器30可重建与CU相关联的残余视频块。
[0121]作为对TU执行重建操作的部分,反量化模块154可反量化(S卩,解量化)与TU相关联的变换系数块。反量化模块154可以类似于针对HEVC所提议的反量化过程或由H.264解码标准界定的反量化过程的方式来对变换系数块进行反量化。反量化模块154可使用由视频编码器20针对变换系数块的CU所计算的量化参数QP来确定量化程度,且同样地确定反量化程度来供反量化模块154应用。
[0122]在反量化模块154对变换系数块进行反量化之后,反变换模块156可产生用于与变换系数块相关联的TU的残余视频块。反变换模块156可将反变换应用到变换系数块以便产生用于TU的残余视频块。举例来说,反变换模块156可将反DCT、反整数变换、反Karhunen-Loeve变换(KLT)、反旋转变换、反定向变换或另一反变换应用到变换系数块。
[0123]在一些实例中,反变换模块156可基于来自视频编码器20的发信而确定适用于变换系数块的反变换。在此些实例中,反变换模块156可基于在四叉树的根节点处用信号表示的变换确定用于与变换系数块相关联的树块的反变换。在其它实例中,反变换模块156可从一或多个译码特性(例如块大小、译码模式,或其类似者)推断反变换。在一些实例中,反变换模块156可应用级联的反变换。
[0124]在一些实例中,运动补偿模块162可通过基于内插滤波器执行内插而改进PU的预测视频块。用于将用于以子样本精度进行运动补偿的内插滤波器的识别符可包含在语法元素中。运动补偿模块162可使用由视频编码器20在产生PU的预测视频块期间使用的相同内插滤波器来计算参考块的子整数样本的内插值。运动补偿模块162可根据所接收的语法信息而确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生预测视频块。
[0125]如果PU是使用帧内预测进行编码,则帧内预测模块164可执行帧内预测以产生用于PU的预测视频块。举例来说,帧内预测模块164可基于位流中的语法元素确定用于PU的帧内预测模式。位流可包含帧内预测模块164可用以确定PU的帧内预测模式的语法元素。
[0126]在一些情况下,语法元素可指示帧内预测模块164将使用另一 PU的帧内预测模式来确定当前PU的帧内预测模式。举例来说,可能有可能当前PU的帧内预测模式与相邻
的帧内预测模式相同。换句话说,相邻PU的帧内预测模式可为用于当前PU的最可能模式。因此,在此实例中,位流可包含小语法元素,所述小语法元素指示PU的帧内预测模式与相邻PU的帧内预测模式相同。帧内预测模块164可接着使用所述帧内预测模式来基于空间相邻PU的视频块产生所述的预测数据(例如,预测样本)。
[0127]重建模块158可使用与CU的TU相关联的残余视频块及CU的PU的预测视频块(即,帧内预测数据或帧间预测数据,如果适用)来重建⑶的视频块。因此,视频解码器30可基于位流中的语法元素产生预测视频块及残余视频块,且可基于所述预测视频块及所述残余视频块产生视频块。
[0128]在重建模块158重建⑶的视频块之后,滤波器模块159可执行解块操作以减小与所述CU相关联的成块假影。在滤波器模块159执行解块操作以减小与CU相关联的成块假影之后,视频解码器30可将所述CU的视频块存储在经解码图片缓冲器160中。经解码图片缓冲器160可提供参考图片用于后续运动补偿、帧内预测及在显示装置(例如图1的显示装置32)上的呈现。举例来说,视频解码器30可基于经解码图片缓冲器160中的视频块对其它CU的PU执行帧内预测或帧间预测操作。[0129]图4是说明产生用于切片的切片数据的实例操作200的流程图。例如视频编码器20(图1及2)等视频编码器可执行操作200。图4的实例仅为一个实例。其它实例操作可以其它方式产生切片数据。
[0130]在视频编码器开始操作200之后,视频编码器可初始化树块地址,使得所述树块地址识别当前切片的初始树块(202)。当前切片可为视频编码器当前正编码的切片。当前切片的初始树块可为根据用于当前图片的树块译码次序的与当前切片相关联的第一树块。为易于解释,本发明可将通过树块地址识别的树块称为当前树块。
[0131]视频编码器可将用于当前树块的语法元素附加到用于当前切片的经译码切片NAL单元的切片数据(204)。用于当前树块的语法元素可包含在当前树块的四叉树中的语法元素。当前树块的四叉树中的语法元素可包含指示帧内预测模式、运动信息的语法元素、指示变换系数层级的语法元素,等。
[0132]此外,视频编码器可确定当前切片中是否存在更多数据(206)。如果由树块地址指示的树块在当前切片内,则当前切片中可能存在更多数据。响应于确定当前切片中不存在更多数据(206的“否”),视频编码器可结束操作200,因为视频编码器己将所有必要语法元素添加到切片数据。
[0133]视频编码器可以各种方式确定当前切片中是否存在更多数据。举例来说,视频编码器可调用函数“c0ding_tree()”来输出用于树块的语法元素。在此实例中,函数“coding_tree() ”可返回“moreDataFlag”,其指示当前切片中是否存在更多数据。
[0134]响应于确定存在与当前切片相关联的更多数据(206的“是”),视频编码器可确定当前图片的瓦片是否独立 以及当前切片的下一树块是否在与当前切片的当前树块不同的瓦片中(208)。如上文所描述,如果禁止图片中预测(例如,帧内预测、使用当前图片中的数据的帧间预测,及基于来自当前图片的其它瓦片的数据的CABAC上下文选择),则图片的瓦片可为独立的。视频编码器可以各种方式确定当前图片的瓦片是否独立。举例来说,与当前图片相关联的序列参数集可包含语法元素“tile_boundary_independence_idc”。在此实例中,如果“tile_boundary_independence_idc”等于O,则当前图片的瓦片不独立,且允许跨越瓦片边界的图片中预测。如果“tile_boundary_independence_idc”等于O,则可仍禁止跨越切片边界的图片中预测。如果“tile_boundary_independence_idc”等于I,则当前图片的瓦片独立,且不允许跨越瓦片边界的图片中预测。
[0135]视频编码器可以各种方式确定当前切片的下一树块是否在与当前切片的当前树块不同的瓦片中。举例来说,视频编码器可确定当前切片的下一树块的树块地址。在此实例中,视频编码器可调用函数“NewTile (…)”,所述函数采用下一树块的树块地址作为参数且返回指示下一树块是否在与当前树块不同的瓦片中的值“newTileFlag”。
[0136]如果当前图片的瓦片不独立或下一树块不在与当前树块不同的瓦片中(208的“否”),则视频编码器可确定当前图片是否正使用WPP进行编码以及当前切片的下一树块是否在与当前切片的当前树块不同的WPP波中(210)。视频编码器可以各种方式确定当前切片的下一树块是否在与当前切片的当前树块不同的WPP波中。举例来说,视频编码器可确定当前切片的下一树块的树块地址。在此实例中,视频编码器可调用函数“NewWaVe(...) ”,所述函数采用下一树块的树块地址作为参数且返回指示下一树块是否在与当前树块不同的 WPP 波中的值 “newWaveFlag”。[0137]响应于确定当前图片正使用WPP进行编码且下一树块在与当前树块不同的WPP波中(210的“是”)或响应于确定当前图片的瓦片独立且下一树块在与当前树块不同的瓦片中(208的“是”),视频编码器可确定当前片段是否字节对准(212)。换句话说,视频编码器可确定当前片段是否在字节边界上结束。当前片段为与当前树块与之相关联的图片分区(例如,瓦片或WPP波)相关联的片段。响应于确定当前片段并不字节对准(212的“否”),视频编码器可将填补位附加到当前片段的末端(214)。填补位可具有各种值。举例来说,填补位可始终具有等于I的值。在其它实例中,填补位可始终具有等于O的值。
[0138]在将填补位附加到当前片段的末端之后,视频编码器可再次确定当前片段是否字节对准(212)。以此方式,视频编码器可继续将填补位附加到切片数据的末端,直到当前片段字节对准为止。
[0139]响应于确定切片数据字节对准(212的“是”),视频编码器可更新树块地址(216)。视频编码器可更新树块地址,使得树块地址指示根据当前图片的树块译码次序的下一树块。举例来说,当视频编码器更新树块地址时,树块地址可识别在先前由树块地址指示的树块右方的树块。下文详细描述的图7是说明用于分割成多个瓦片的图片的实例树块译码次序的概念图。
[0140]在更新树块地址之后,视频编码器可确定当前切片中是否存在更多数据(218)。响应于确定当前切片中存在更多数据(218的“是”)或响应于确定当前图片不在使用WPP进行编码且下一树块不在与当前树块不同的瓦片中(210的“否”),视频编码器可将用于当前树块的语法元素附加到切片数据(204)。以此方式,视频编码器可将用于当前切片的每一树块的语法元素附加到切片数据,且可确保与不同图片分区相关联的片段经填补而使得所述片段在字节边界处开始。
[0141]响应于确定当前切片中不存在更多数据(218的“否”),视频编码器可结束操作200,因为视频编码器可能己将当前切片的所有语法元素添加到切片数据。
[0142]图5是说明解码经译码切片NAL单元的实例操作250的流程图。例如视频解码器30(图1及3)的视频解码器可执行操作250。图5的实例仅为一个实例。其它实例操作可执行其它操作以解码经译码切片NAL单元。
[0143]在图5的实例中,视频解码器可将经译码切片NAL单元存储在字节寻址存储器中(252)。经译码切片NAL单元可包含切片标头及切片数据。切片数据可包含多个片段。所述片段中的一或多者可经填补而使得每一片段在字节边界处开始。
[0144]在将经译码切片NAL单元存储在存储器中之后,视频解码器可识别片段在经译码切片NAL单元的切片数据内的位置(254)。视频解码器可以各种方式识别片段的位置。举例来说,视频解码器可基于经译码切片NAL单元的切片标头中的语法元素(其指示片段的字节偏移)来识别所述片段的位置。在此实例中,切片标头可不包含用于切片数据的第一片段的字节偏移,因为第一片段的位置可紧接在切片标头的末端之后。在另一实例中,视频解码器可基于切片数据中的入口点标记而识别片段的位置。所述入口点标记可为安置在所述片段之间的值。
[0145]在识别出所述片段在切片数据内的位置之后,视频解码器可将所述片段中的两者或两者以上指派到两个或两个以上不同解码线程(256)。所述解码线程中的每一者可剖析指派给所述解码线程的片段中的经译码树块的语法元素,且重建用于对应树块的视频块,如上文所描述。
[0146]图6是说明波前并行处理的概念图。如上文所描述,图片可分割成视频块,所述视频块中的每一者与树块相关联。图6将与树块相关联的视频块说明为白色正方形的栅格。图片包含树块行300A到300E (统称为“树块行300”)。
[0147]第一线程可译码树块行300A中的树块。同时,其它线程可译码树块行300B、300C及300D中的树块。在图6的实例中,第一线程当前正译码树块302A,第二线程当前正译码树块302B,第三线程当前正译码树块302C,且第四线程当前正译码树块302D。本发明可将树块302A、302B、302C及302D通称为“当前树块302”。因为视频译码器可在己译码紧接的较高行的两个以上树块之后开始译码树块行,所以当前树块302彼此水平地移位两个树块的宽度。
[0148]在图6的实例中,线程可在对当前树块302中的CU执行帧内预测或帧间预测时使用来自通过粗灰色箭头指示的树块的数据。(当线程对CU执行帧间预测时,所述线程还可使用来自一或多个参考帧的数据)。当线程译码给定树块时,所述线程可基于与先前经译码树块相关联的信息选择一或多个CABAC上下文。线程可使用一或多个CABAC上下文来对与给定树块的第一 CU相关联的语法元素执行CABAC译码。如果给定树块不为一行的最左树块,则线程可基于与在给定树块左方的树块的最后CU相关联的信息选择一或多个CABAC上下文。如果给定树块为一行的最左树块,则线程可基于与在给定树块上方及右方两个树块处的树块的最后CU相关联的信息选择一或多个CABAC上下文。线程可使用来自通过细黑色箭头指示的树块的最后CU的数据来选择用于当前树块302的第一 CU的CABAC上下文。
[0149]图7是说明用于经分割成多个瓦片352A、352B及352C的图片350的实例树块译码次序的概念图。图片350中的每一正方形白色块表示与树块相关联的视频块。粗的垂直虚线指示实例垂直瓦片边界。粗灰色线指示实例切片边界。
[0150]视频块中的编号指示按图片350的树块译码次序的对应树块(LCU)的位置。如图7的实例中所说明,最左边瓦片352A中的树块中的每一者在树块译码次序上出现于中间瓦片352B中的任何树块之前。中间瓦片352B中的树块中的每一者在树块译码次序上出现于最右瓦片352C中的任何树块之前。在瓦片352A、352B及352C中的每一者内,树块根据光栅扫描次序进行译码。
[0151]视频编码器可为图片350产生两个经译码切片NAL单元。第一经译码切片NAL单元可与图片350的左方切片相关联。第一经译码切片NAL单元可包含树块I到23的经编码表示。第一经译码切片NAL单元的切片数据可包含两个片段。第一片段可包含树块I到15的经编码表示。第二片段可包含树块16到30的经编码表示。根据本发明的技术,第一片段可经填补而使得第二片段在字节边界处开始。
[0152]第二经译码切片NAL单元可与图片350的右方切片相关联。第二经译码切片NAL单元可包含树块24到45的经编码表示。第二经译码切片NAL单元的切片数据可包含两个片段。第一片段可包含树块24到30的经编码表示。第二片段可包含树块31到45的经编码表示。第一片段可经填补而使得第二片段在字节边界处开始。
[0153]图8是说明实例经译码切片NAL单元400的概念图。如图8的实例中所说明,经译码切片NAL单元400包含切片标头402及切片数据404。切片数据404包含第一片段406及第二片段408。片段406包含经译码树块410A到410N以及填补数据412。片段408包含经译码树块414A到414N。
[0154]在一或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件来实施,则所述功能可作为一或多个指令或程序代码而存储于计算机可读媒体上或经由计算机可读媒体来传输,且通过基于硬件的处理单元来执行。计算机可读媒体可包含计算机可读存储媒体或通信媒体,计算机可读存储媒体对应于例如数据存储媒体等有形媒体,通信媒体包含促进计算机程序(例如)根据通信协定从一处传送到另一处的任何媒体。以此方式,计算机可读媒体大体上可对应于(I)非暂时性的有形计算机可读存储媒体或(2)例如信号或载波等通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中所描述的技术的指令、程序代码及/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
[0155]作为实例而非限制,此计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储器、磁盘存储器或其它磁性存储装置、快闪存储器,或可用于存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。而且,任何连接可适当地称为计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字用户线(DSL),或例如红外线、无线电及微波等无线技术而从网站、服务器或其它远程源传输指令,则同轴缆线、光纤缆线、双绞线、DSL,或例如红外线、无线电及微波等无线技术包含于媒体的界定中。然而,应理解,计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而替代地针对非暂时性有形存储媒体。如本文中所使用,磁盘及光盘包含紧密光盘(CD)、激光光盘、光盘、数字影音光盘(DVD)、软盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘通过激光以光学方式再现数据。以上各物的组合也应包含于计算机可读媒体的范围内。
[0156]可通过例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路等一或多个处理器来执行指令。因此,如本文中所使用,术语“处理器”可指代前述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,可将本文所描述的功能性提供于经配置以用于编码及解码的专用硬件及/或软件模块内,或并入于组合式编码解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
[0157]本发明的技术可实施于广泛多种装置或设备中,包含无线手持机、集成电路(IC)或IC的集合(例如,芯片组)。本发明中描述各种组件、模块或单元以强调经配置以执行所揭示的技术的装置的功能方面,但未必需要通过不同硬件单元实现。更确切地说,如上文所描述,各种单元可组合于编码解码器硬件单元中或由交互操作的硬件单元的集合(包含如上文所描述的一或多个处理器)结合合适软件及/或固件来提供。
[0158]己描述各种实例。这些及其它实例在所附权利要求书的范围内。
【权利要求】
1.一种用于编码视频数据的方法,所述方法包括: 将图片划分成多个图片分区,所述图片具有多个树块,所述图片分区与所述图片的所述树块的非重叠子集相关联;以及 产生经译码切片网络抽象层NAL单元,所述经译码切片NAL单元包含与所述图片的切片相关联的所述树块的经编码表示,所述树块的所述经编码表示在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段,其中所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始。
2.根据权利要求1所述的方法,其中产生所述经译码切片NAL单元包括产生切片标头,所述切片标头指示用于所述片段中的一或多者的入口点。
3.根据权利要求2所述的方法,其中用于所述片段的所述入口点指示所述片段的字节偏移。
4.根据权利要求1所述的方法,其中所述图片分区为瓦片或波前并行处理WPP波。
5.根据权利要求1所述的方法,其进一步包括产生与所述图片相关联的参数集,所述参数集包含具有第一值的旗标,所述第一值指示所述片段中的所述一或多者经填补而使得所述片段中的每一者在字节边界处开始,且 其中当旗标具有第二值时,所述片段可在或可不在字节边界处开始。
6.根据权利 要求 1所述的方法, 其中所述片段包含给定片段;且 其中产生所述经译码切片NAL单元包括在下一树块在所述切片内部且与不同于所述给定片段的图片分区相关联的情况下执行填补操作,所述填补操作将位附加到所述给定片段。
7.根据权利要求1所述的方法, 其中所述图片分区为瓦片;且 其中产生所述经译码切片NAL单元包括仅在确定所述瓦片独立于彼此之后才执行填补操作,所述填补操作确保所述片段在字节边界处开始。
8.一种解码视频数据的方法,所述方法包括: 存储经译码切片网络抽象层NAL单元,所述经译码切片NAL单元包含与图片的切片相关联的树块的经编码表示,所述图片分割成多个图片分区,所述树块的所述经编码表示分组成与所述图片分区中的不同者相关联的片段,其中所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始;以及 解码所述树块的所述经编码表示。
9.根据权利要求8所述的方法,其中所述经译码切片NAL单元包括切片标头,所述切片标头指示用于所述片段中的一或多者的入口点。
10.根据权利要求9所述的方法,其中用于所述片段的所述入口点指示所述片段的字节偏移。
11.根据权利要求8所述的方法,其中所述图片分区为瓦片或波前并行处理WPP波。
12.根据权利要求8述的方法,其进一步包括存储与所述图片相关联的参数集,所述参数集包含具有第一值的旗标,所述第一值指示所述片段中的所述一或多者经填补而使得所述片段中的每一者在字节边界处开始,且其中当旗标具有第二值时,所述片段可在或可不在字节边界处开始。
13.根据权利要求8所述的方法, 其中所述图片分区为瓦片;且 其中当所述瓦片独立于彼此时,所述片段中的一或多者经填补而使得所述片段在字节边界处开始。
14.根据权利要求8所述的方法,其中解码所述树块的所述经编码表示包括并行地解码所述片段中的两者或两者以上中的所述树块的所述经编码表示。
15.一种编码视频数据的视频编码装置,所述视频编码装置包括经配置以进行以下操作的一或多个处理器: 将图片划分成多个图片分区,所述图片具有多个树块,所述图片分区与所述图片的所述树块的非重叠子集相关联;以及 产生经译码切片网络抽象层NAL单元,所述经译码切片NAL单元包含与所述图片的切片相关联的所述树块的经编码表示,所述树块的所述经编码表示在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段,其中所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始。
16.根据权利要求15所述的视频编码装置,其中所述一或多个处理器经配置以产生所述经译码切片NAL单元,使得所述经译码切片NAL单元包含指示用于所述片段中的一或多者的入口点的切片标头。
17.根据权利要求16所述的视频编码装置,其中用于所述片段的所述入口点指示所述片段的字节偏移。
18.根据权利要求15所述的视频编码装置,其中所述图片分区为瓦片或波前并行处理WPP 波。
19.根据权利要求15所述的视频编码装置,其中所述一或多个处理器经配置以产生与所述图片相关联的参数集,所述参数集包含具有第一值的旗标,所述第一值指示所述片段中的所述一或多者经填补而使得所述片段中的每一者在字节边界处开始,且 其中当旗标具有第二值时,所述片段可在或可不在字节边界处开始。
20.根据权利要求15所述的视频编码装置, 其中所述片段包含给定片段;且 其中所述一或多个处理器经配置以在下一树块在所述切片内部且与不同于所述给定片段的图片分区相关联的情况下执行填补操作,所述填补操作将位附加到所述给定片段。
21.根据权利要求15所述的视频编码装置, 其中所述图片分区为瓦片;且 其中一或多个处理器经配置以仅在确定所述瓦片独立于彼此之后才执行填补操作,所述填补操作确保所述片段在字节边界处开始。
22.根据权利要求15所述的视频编码装置,其中所述视频编码装置为移动计算装置。
23.一种解码视频数据的视频解码装置,所述视频解码装置包括: 存储器,其存储经译码切片网络抽象层NAL单元,所述经译码切片NAL单元包含与图片的切片相关联的树块的经编码表示,所述图片划分成多个图片分区,所述树块的所述经编码表示分组成与所述图片分区中的不同者相关联的片段,其中所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始;以及 一或多个处理器,其经配置以解码所述树块的所述经编码表示。
24.根据权利要求23所述的视频解码装置,其中所述经译码切片NAL单元包括切片标头,所述切片标头指示用于所述片段中的一或多者的入口点。
25.根据权利要求24所述的视频解码装置,其中用于所述片段的所述入口点指示所述片段的字节偏移。
26.根据权利要求23所述的视频解码装置,其中所述图片分区为瓦片或波前并行处理WPP 波。
27.根据权利要求23所述的视频解码装置,其中所述存储器存储与所述图片相关联的参数集,所述参数集包含具有第一值的旗标,所述第一值指示所述片段中的所述一或多者经填补而使得所述片段中的每一者在字节边界处开始,且 其中当旗标具有第二值时,所述片段可在或可不在字节边界处开始。
28.根据权利 要求23所述的视频解码装置,其中所述视频解码装置为移动计算装置。
29.根据权利要求23所述的视频解码装置,其中所述一或多个处理器经配置以并行地解码所述片段中的两者或两者以上中的所述树块的所述经编码表示。
30.一种包括存储指令的一或多个计算机可读存储媒体的计算机程序产品,所述指令在由一个或一个以上处理器执行时配置视频编码装置以进行以下操作: 将图片划分成多个图片分区,所述图片具有多个树块,所述图片分区与所述图片的所述树块的非重叠子集相关联;以及 产生经译码切片网络抽象层NAL单元,所述经译码切片NAL单元包含与所述图片的切片相关联的所述树块的经编码表示,所述树块的所述经编码表示在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段,其中所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始。
31.一种包括存储指令的一或多个计算机可读存储媒体的计算机程序产品,所述指令在由一个或一个以上处理器执行时配置视频解码装置以进行以下操作: 存储经译码切片网络抽象层NAL单元,所述经译码切片NAL单元包含与图片的切片相关联的树块的经编码表示,所述图片划分成多个图片分区,所述树块的所述经编码表示分组成与所述图片分区中的不同者相关联的片段,其中所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始;以及 解码所述树块的所述经编码表示。
32.—种编码视频数据的视频编码装置,所述视频编码装置包括: 用于将图片划分成多个图片分区的装置,所述图片具有多个树块,所述图片分区与所述图片的所述树块的非重叠子集相关联;以及 用于产生经译码切片网络抽象层NAL单元的装置,所述经译码切片NAL单元包含与所述图片的切片相关联的所述树块的经编码表示,所述树块的所述经编码表示在所述经译码切片NAL单元内分组成与所述图片分区中的不同者相关联的片段,其中所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始。
33.一种解码视频数据的视频解码装置,所述视频解码装置包括: 用于存储经译码切片网络抽象层NAL单元的装置,所述经译码切片NAL单元包含与图片的切片相关联的树块的经编码表示,所述图片划分成多个图片分区,所述树块的所述经编码表示分组成与所述图片分区中的不同者相关联的片段,其中所述片段中的一或多者经填补而使得所述片段中的每一者在字节边界上开始;以及用 于解码所述树块的所述经编码表示的装置。
【文档编号】H04N19/174GK103959781SQ201280054197
【公开日】2014年7月30日 申请日期:2012年11月1日 优先权日:2011年11月4日
【发明者】王益魁, 穆罕默德·蔡德·科班, 马尔塔·卡切维奇 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1