用于视频译码的波前并行处理的利记博彩app

文档序号:7792412阅读:317来源:国知局
用于视频译码的波前并行处理的利记博彩app
【专利摘要】在一个实例中,视频译码器可经配置以确定视频数据的图片的切片在所述图片中的译码树单元CTU行中开始于不同于所述行的开始的位置处。基于所述确定,所述视频译码器可进一步经配置以确定所述切片在所述CTU行内结束。所述视频译码器可进一步经配置以基于所述切片在所述CTU行内结束的所述确定而译码所述切片。
【专利说明】用于视频译码的波前并行处理
[0001] 本申请案主张2012年4月11日申请的第61/622, 974号美国临时申请案及2012 年4月30日申请的第61/640, 529号美国临时申请案的权利,所述两个美国临时申请案中 的每一者的全部内容特此以引用的方式并入。

【技术领域】
[0002] 本发明涉及视频译码。

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


【发明内容】

[0006] 大体来说,本发明描述用于图片的波前的并行处理的技术。明确地说,根据本发明 的某些技术,视频译码器可经配置以译码具有一或多个波前的图片的视频数据,所述波前 中的每一者包含一或多个完整切片。作为另一实例,根据本发明的某些技术,视频译码器可 经配置以译码具有一或多个切片的图片的视频数据,所述切片中的每一者包含一或多个波 前。在任一情况下,多个波前中的每一波前可包含足够信息以允许对所述波前的并行处理。 因而,波前可能始终以切片标头开始,或如果波前不以切片标头开始,那么所述波前属于与 所述波前上方的一行块相同的切片。
[0007] 在一个实例中,一种方法包含:确定视频数据的图片的切片在所述图片中的译码 树单元(CTU)行中开始于不同于所述行的开始的位置处;基于所述确定,确定所述切片在 所述CTU行内结束;以及基于所述切片在所述CTU行内结束的所述确定而译码所述切片。
[0008] 在另一实例中,一种用于译码视频数据的装置包含视频译码器,所述视频译码器 经配置以进行以下操作:确定视频数据的图片的切片在所述图片中的译码树单元(CTU)行 中开始于不同于所述行的开始的位置处;基于所述确定,确定所述切片在所述CTU行内结 束;以及基于所述切片在所述CTU行内结束的所述确定而译码所述切片。
[0009] 在另一实例中,一种用于译码视频数据的装置包含:用于确定视频数据的图片的 切片在所述图片中的译码树单元(CTU)行中开始于不同于所述行的开始的位置处的装置; 用于基于所述确定而确定所述切片在所述CTU行内结束的装置;以及用于基于所述切片在 所述CTU行内结束的所述确定而译码所述切片的装置。
[0010] 在另一实例中,一种计算机可读存储媒体具有存储于其上的指令,所述指令在执 行时致使计算装置的可编程处理器进行以下操作:确定视频数据的图片的切片在所述图片 中的译码树单元(CTU)行中开始于不同于所述行的开始的位置处;基于所述确定,确定所 述切片在所述CTU行内结束;基于所述切片在所述CTU行内结束的所述确定而译码所述切 片。
[0011] -或多个实例的细节阐述于附图及以下描述中。其它特征、目标及优势将从所述 描述及图式且从权利要求书中显而易见。

【专利附图】

【附图说明】
[0012] 图1是说明可利用用于并行地译码波前的技术的实例视频编码及解码系统的框 图。
[0013] 图2是说明可实施用于并行地译码波前的技术的视频编码器的实例的框图。
[0014] 图3是说明可实施用于并行地译码波前的技术的视频解码器的实例的框图。
[0015] 图4是说明划分成波前的实例图片的概念图。
[0016] 图5是说明视频译码器可借以实施用于并行地译码波前的本发明的技术的实例 过程的流程图。
[0017] 图6是说明视频译码器可借以实施用于并行地译码波前的本发明的技术的另一 实例过程的流程图。

【具体实施方式】
[0018] 大体来说,本发明描述用于图片的波前的并行处理的技术。图片可分割成多个波 前,其中每一波前可对应于图片的一行块。在诸实例中,所述块可对应于图片的译码树单元 (CTU),其还称为最大译码单元(LCU)。例如视频编码器或视频解码器等视频译码器可实质 上并行地译码波前。举例来说,视频译码器可与图片的第二波前的块并行地译码图片的第 一波前的块。视频译码器可基于上方波前的前两个块的数据以及包含当前波前的第一块的 切片的切片标头的一或多个元素而初始化用于当前波前的用于执行当前波前的上下文自 适应二进制算术译码(CABAC)的上下文。
[0019] 图片可划分成多个译码树单元(CTU)行。每一 CTU行可对应于相应波前。波前并 行处理提供以波前方式并行地处理多个CTU行的能力,其中在邻近波前的开始之间可能存 在两个CTU的延迟。视频译码器可使用在译码在后续CTU行上方的CTU行的2个CTU之后 的上下文状态执行后续波前(或CTU行)的CABAC初始化。换句话说,在开始当前波前的 译码之前,视频译码器可译码在当前波前上方的波前的至少两个块(假定当前波前不是图 片的顶部CTU行)。此外,视频译码器可在译码在当前波前上方的波前的至少两个块之后初 始化用于当前波前的CABAC上下文。
[0020] CABAC概率可与右上CTU同步。因为视频译码器可并行地处理波前,所以视频译 码器可能需要来自顶部CTU行的结束处的信息来解码第二CTU行的开始。此种信息的实例 可包含切片信息、量化参数(QP),及其类似者。举例来说,如果新切片朝向顶部CTU行(波 前)的结束处开始,那么视频译码器在译码紧接下方的CTU行(波前)之前可能需要顶部 CTU行的某些信息。更具体来说,来自顶部CTU行的信息可能影响下方的CTU行的解码过 程。
[0021] 大体来说,本发明的技术是针对减轻由在波前的第一 CTU之后的位置开始且延续 到后续波前中的切片造成的潜在问题。明确地说,如果切片开始于在波前的第一 CTU之后 的位置且包含一或多个后续波前的CTU,那么视频译码器可能需要译码当前波前的每一切 片的相应切片标头以便获得译码当前波前所需的信息。在此种情形中,可能要求视频解码 器基于由视频编码器编码的切片标头检查图片中的每一切片标头以确定解码图片的各个 波前所必要的信息。此种信息的实例包含波前的进入点、波前的量化参数,等。在一些情况 下,可能要求视频译码器根据在图片中的位置来映射切片,例如映射图片内的每一切片的 开始及结束点。另一方面,如果视频译码器具有来自从上方行到当前CTU右方2个CTU以 内的用于当前波前的信息,那么视频译码器可在没有由切片溢出造成的延迟的情况下译码 每一波前。举例来说,如果经配置以执行解码的视频解码器或视频编码器能从自上方行到 当前CTU右方2个CTU以内存取用于当前波前的信息,那么视频解码器可在没有由切片溢 出造成的延迟的情况下解码每一波前。
[0022] 为减轻或防止由切片溢出造成的译码延迟,视频译码器可实施本发明的一或多个 技术以限制波前-切片交互,使得如果切片开始于CTU行的不同于所述CTU行的开始的位 置(例如,切片开始于CTU行的中间),那么所述切片在所述CTU行内(例如,在所述行的最 末CTU处,或在所述行的最末CTU之前的CTU处)结束。相反,视频译码器可实施所述技术 以确定切片开始于CTU行的开始(例如,所述行的形成切片的第一 CTU的第一 CTU),且所 述切片包含当前行的所有CTU及一或多个后续CTU行的一或多个CTU。在此情形中,视频 译码器可准许切片溢出,即,视频译码器可确定切片包含一或多个后续CTU行的一或多个 CTU。本发明的技术所提供的潜在优点是可能并不要求视频解码器在以波前并行处理次序 解码图片时依赖于后续切片标头。替代地,解码器可在以波前并行处理次序处理CTU时处 理视频解码器所遇到的每一切片标头。
[0023] 在一些实例中,视频译码器可检测切片开始于波前的中间或结束处(例如,在波 前的第一块之后的块处),且穿过与后续波前的边界。在此情况下,视频译码器可配置切片 以在所述切片开始于的波前内终止(例如,在所述波前的最末块处)。使用上文所描述的切 片-波前配置,视频译码器可确保波前以切片标头开始,或替代地,如果波前不是以切片标 头开始,那么波前属于与紧接上方定位的波前相同的切片。
[0024] 在一些实例中,视频译码器可实施所述技术以要求如果切片开始于波前的开始处 且延续到后续波前中,那么所述切片必须在波前的中间(或波前内的其它位置)结束。结 合上文所描述的限制,视频译码器可确保第一切片于其中结束的波前的其余部分包含一或 多个完整切片。通过根据这些要求配置切片及波前,视频译码器可例如通过减轻由在波前 的第一块之后开始的切片的溢出造成的延迟而更有效地实施执行图像的波前并行处理的 技术。
[0025] 图1是说明可利用用于并行地译码波前的技术的实例视频编码及解码系统10的 框图。如图1中所示,系统10包含源装置12,其提供稍后将由目的地装置14解码的经编 码视频数据。明确地说,源装置12经由计算机可读媒体16将视频数据提供到目的地装置 14。源装置12及目的地装置14可包括多种多样的装置中的任一者,包含桌上型计算机、笔 记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如所谓的"智能"电话)、 所谓的"智能"平板电脑、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、视频 流式传输装置或其类似者。在一些情况下,源装置12及目的地装置14可能经装备以用于 无线通信。
[0026] 目的地装置14可经由计算机可读媒体16接收待解码的经编码视频数据。计算机 可读媒体16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型 的媒体或装置。在一个实例中,计算机可读媒体16可包括使得源装置12能够实时将经编码 视频数据直接发射到目的地装置14的通信媒体。经编码视频数据可根据通信标准(例如 无线通信协议)进行调制,且被发射到目的地装置14。通信媒体可包括任何无线或有线通 信媒体,例如射频(RF)频谱或一或多个物理传输线。通信媒体可能形成基于包的网络(例 如局域网、广域网或全球网络(例如因特网))的一部分。通信媒体可包含路由器、交换器、 基站或可用于促进从源装置12到目的地装置14的通信的任何其它设备。
[0027] 在一些实例中,经编码数据可从输出接口 22输出到存储装置。类似地,可通过输 入接口从存储装置存取经编码数据。存储装置可包含多种分布式或本地存取的数据存储 媒体中的任一者,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性 存储器或任何其它用于存储经编码视频数据的合适的数字存储媒体。在另一实例中,存储 装置可对应于文件服务器或可存储由源装置12产生的经编码视频的另一中间存储装置。 目的地装置14可经由流式传输或下载从存储装置存取经存储的视频数据。文件服务器可 为任何类型的能够存储经编码视频数据且将经编码视频数据发射到目的地装置14的服务 器。实例文件服务器包含网络服务器(例如,用于网站)、FTP服务器、网络附接存储(NAS) 装置或本地磁盘驱动器。目的地装置14可通过任何标准数据连接(包含因特网连接)来 存取经编码视频数据。这可包含无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆 调制解调器等)或适合于存取存储于文件服务器上的经编码视频数据的以上两者的组合。 经编码视频数据从存储装置的发射可能是流式传输、下载传输或以上两者的组合。
[0028] 本发明的技术不一定限于无线应用或环境。所述技术可应用于视频译码以支持多 种多媒体应用中的任一者,例如空中电视广播、有线电视传输、卫星电视传输、因特网串流 视频传输(例如动态自适应HTTP流式传输(DASH))、经编码到数据存储媒体上的数字视频, 存储在数据存储媒体上的数字视频的解码,或其它应用。在一些实例中,系统10可经配置 以支持单向或双向视频发射,以支持例如视频流式传输、视频回放、视频广播及/或视频电 话等应用。
[0029] 在图1的实例中,源装置12包含视频源18、视频编码器20及输出接口 22。目的 地装置14包含输入接口 28、视频解码器30及显示装置32。根据本发明,源装置12的视频 编码器20可经配置以并行地应用用于译码波前的技术。在其它实例中,源装置及目的地装 置可包含其它组件或布置。举例来说,源装置12可从外部视频源18 (例如外部相机)接收 视频数据。同样,目的地装置14可与外部显示装置介接,而非包含集成式显示装置。
[0030] 图1所说明的系统10只是一个实例。可由任何数字视频编码及/或解码装置来 执行用于并行地译码波前的技术。尽管本发明的技术一般是由视频编码装置来执行,但是 所述技术还可由视频编码器/解码器(通常被称作"编解码器")执行。此外,本发明的技 术还可由视频预处理器执行。源装置12及目的地装置14仅是这些译码装置的实例,其中 源装置12产生用于发射到目的地装置14的经译码的视频数据。在一些实例中,装置12、 14可以大体上对称的方式操作以使得装置12、14中的每一者包含视频编码及解码组件。因 此,系统10可支持视频装置12、14之间的单向或双向视频发射,例如用于视频流式传输、视 频回放、视频广播或视频电话。
[0031] 源装置12的视频源18可包含视频俘获装置,例如摄像机、含有先前所俘获视频的 视频档案及/或用于从视频内容提供者接收视频的视频馈送接口。作为另一替代方案,视 频源18可产生基于计算机图形的数据作为源视频,或直播视频(live video)、存档视频与 计算机产生的视频的组合。在一些情况下,如果视频源18是摄像机,那么源装置12及目的 地装置14可形成所谓的相机电话或视频电话。然而,如上文所提及,本发明中所描述的技 术可大体上适用于视频译码,且可应用于无线及/或有线应用。在每一情况下,可由视频编 码器20来编码经俘获的、经预先俘获的或计算机产生的视频。经编码视频信息可接着通过 输出接口 22输出到计算机可读媒体16上。
[0032] 计算机可读媒体16可包含瞬时媒体,例如无线广播或有线网络发射,或存储媒体 (也就是说,非暂时性存储媒体),例如硬盘、快闪驱动器、压缩光盘、数字视频光盘、蓝光光 盘或其它计算机可读媒体。在一些实例中,网络服务器(未图示)可从源装置12接收经编 码视频数据,且例如经由网络发射将经编码视频数据提供到目的地装置14。类似地,媒体生 产设施(例如光盘冲压设施)的计算装置可从源装置12接收经编码视频数据且生产容纳 经编码视频数据的光盘。因此,在各种实例中,计算机可读媒体16可理解为各种形式的一 或多个计算机可读媒体。
[0033] 目的地装置14的输入接口 28从计算机可读媒体16接收信息。计算机可读媒体 16的信息可包含通过视频编码器20定义的语法信息,所述语法信息还由视频解码器30使 用,所述语法信息包含描述块及其它经译码单元(例如G0P)的特性及/或处理的语法元 素。显示装置32向用户显示经解码视频数据,且可包括多种显示装置中的任一者,例如阴 极射线管(CRT)、液晶显示器(LCD)、等离子体显示器、有机发光二极管(0LED)显示器或另 一类型的显示装置。
[0034] 视频编码器20及视频解码器30可根据一种视频译码标准(例如目前正在开发的 高效率视频译码(HEVC)标准)来操作,且可符合HEVC测试模型(HM)。或者,视频编码器20 及视频解码器30可根据其它专有或业界标准来操作,所述标准例如是ITU-T H. 264标准, 也被称为MPEG-4,第10部分,高级视频译码(AVC),或此类标准的扩展。然而,本发明的技 术不限于任何特定译码标准。视频译码标准的其它实例包含MPEG-2及ITU-T H.263。尽管 图1中未展示,但在一些方面中,视频编码器20及视频解码器30可各自与音频编码器及解 码器集成,且可包含适当的MUX-DEMUX单元或其它硬件及软件,以处置对共同数据流或单 独数据流中的音频与视频两者的编码。如果适用,MUX-DEMUX单元可符合ITU H. 223多路 复用器协议或例如用户数据报协议(UDP)等其它协议。
[0035] ITU-T H. 264/MPEG-4(AVC)标准是由 ITU-T 视频译码专家组(VCEG)连同 IS0/IEC 运动图片专家组(MPEG)制定以作为被称为联合视频小组(JVT)的集体伙伴关系的产品。在 一些方面中,本发明中所描述的技术可应用于通常符合H. 264标准的装置。ITU-T研究组 在2005年3月在ITU-T推荐H. 264 "用于通用视听服务的高级视频译码(Advanced Video Coding for generic audiovisual services)"中描述了 Η· 264 标准,其在本文中可被称作 Η. 264标准或Η. 264规范或H. 264/AVC标准或规范。联合视频组(JVT)不断致力于Η. 264/ MPEG-4AVC 的扩展。
[0036] 视频编码器20及视频解码器30各自可实施为例如一或多个微处理器、数字信号 处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固 件或其任何组合等多种合适编码器电路中的任一者。当部分地用软件实施所述技术时,装 置可将用于所述软件的指令存储于合适的非暂时性计算机可读媒体中且使用一或多个处 理器用硬件执行所述指令以执行本发明的技术。视频编码器20及视频解码器30中的每一 者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装 置中的组合式编码器/解码器(编解码器)的部分。
[0037] JCT-VC正在努力开发HEVC标准。所述HEVC标准化工作是基于被称作HEVC测试 模型(HM)的视频译码装置的演进模型。HM根据例如ITU-T H.264/AVC假设视频译码装置 相对于现存装置的若干额外能力。举例来说,虽然H. 264提供了九种帧内预测编码模式,但 是HM可提供多达三十三种帧内预测编码模式。
[0038] 大体来说,HM的工作模型描述视频帧或图片可被划分为包含明度及色度样本两者 的一连串树块或译码树单元(CTU)。位流内的语法数据可定义CTU (其是在像素数目方面的 最大译码单元)的大小。切片包含在译码次序中的多个连续树块。视频帧或图片可被分割 成一或多个切片。每一树块可根据四叉树分裂成译码单元(CU)。总的来说,四叉树数据结 构包含每个CU -个节点,其中根节点对应于所述树块。如果一个CU分裂成四个子CU,那么 对应于CU的节点包含四个叶节点,其中的每一者对应于所述子CU中的一者。
[0039] 四叉树数据结构的每一节点可提供对应CU的语法数据。举例来说,四叉树中的节 点可包含分裂旗标,分裂旗标指示对应于所述节点的所述CU是否分裂成子CU。可递归地定 义CU的语法元素,且其可取决于所述CU是否分裂成子CU。如果CU不进一步分裂,那么将 其称为叶CU。在本发明中,叶CU的四个子CU也将被称作叶CU,即使不存在原始叶CU的明 确分裂时也是如此。举例来说,如果16X16大小的⑶不进一步分裂,那么四个8X8子⑶ 将也被称作叶⑶,虽然所述16 X 16⑶从未分裂。
[0040] ⑶具有类似于H. 264标准的宏块的目的,但是⑶并不具有大小区别。举例来说, 树块可分裂成四个子节点(还称为子cu),且每一子节点又可为父节点且可分裂成另外四 个子节点。最终的未分裂子节点(被称作四叉树的叶节点)包括译码节点,还称为叶CU。 与经译码位流相关联的语法数据可定义树块可分裂的最大次数,被称作最大CU深度,且还 可定义译码节点的最小大小。所以,位流还可定义最小译码单元(SCU)。本发明使用术语 "块"来指代HEVC的上下文中的CU、PU或TU中的任一者,或者其它标准的上下文中的类似 数据结构(例如,其在H. 264/AVC中的宏块及子块)。
[0041] CU包含译码节点及与所述译码节点相关联的预测单元(PU)及变换单元(TU)。CU 的大小对应于译码节点的大小且形状必须是正方形。CU的大小的范围可从8X8像素到具 有最大64X64像素或更大的树块的大小。每一⑶可含有一或多个PU及一或多个TU。举 例来说,与CU相关联的语法数据可描述将CU分割成一或多个PU。分割模式可在CU是被跳 过还是经直接模式编码、经帧内预测模式编码还是经帧间预测模式编码之间不同。PU可被 分割成非正方形形状。举例来说,与CU相关联的语法数据还可描述根据四叉树将CU分割 成一或多个TU。TU可为正方形或非正方形(例如,矩形)形状。
[0042] HEVC标准允许根据TU的变换,TU可针对不同CU而有所不同。TU的大小通常是基 于针对经分割CTU定义的给定CU内的PU的大小而确定,但是情况可能并不总是如此。TU 通常与PU大小相同或小于PU。在一些实例中,可使用一种被称为"残余四叉树"(RQT)的四 叉树结构将对应于CU残余样本细分成更小的单元。RQT的叶节点可被称为变换单元(TU)。 可变换与TU相关联的像素差值以产生变换系数,所述变换系数可经量化。
[0043] 叶⑶可包含一或多个预测单元(PU)。总的来说,PU表示对应于对应⑶的全部或 一部分的空间区域,且可包含用于检索PU的参考样本的数据。此外,PU包含与预测有关的 数据。举例来说,当PU经帧内模式编码时,用于ro的数据可包含在残余四叉树(RQT)中, 残余四叉树可包含描述用于对应于PU的TU的帧内预测模式的数据。作为另一实例,当PU 经帧间模式编码时,PU可包含定义TO的一或多个运动向量的数据。举例来说,定义PU的运 动向量的数据可描述运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例 如,四分之一像素精度或八分之一像素精度)、运动向量指向的参考图片及/或运动向量的 参考图片列表(例如,列表〇、列表1或列表C)。
[0044] 具有一或多个TO的叶⑶还可包含一或多个变换单元(TU)。变换单元可使用 RQT (还称为TU四叉树结构)来指定,如上文所论述。举例来说,分裂旗标可指示叶CU是否 分裂成四个变换单元。接着,每一变换单元可进一步分裂成进一步的子TU。当TU不进一步 分裂时,其可被称为叶TU。一般来说,对于帧内译码,所有属于一个叶CU的叶TU共享相同 的帧内预测模式。也就是说,一般应用相同的帧内预测模式来计算叶CU的所有TU的预测 值。对于帧内译码,视频编码器可使用帧内预测模式针对每一叶TU计算残差值,以作为CU 的对应于TU的部分与原始块之间的差。TU不必限于PU的大小。因而,TU可比PU大或小。 对于帧内译码,PU可与相同⑶的对应叶TU并置。在一些实例中,叶TU的最大大小可对应 于对应叶CU的大小。
[0045] 此外,叶⑶的TU还可与相应四叉树数据结构(被称作残余四叉树(RQT))相关联。 也就是说,叶⑶可包含指示叶⑶如何被分割成TU的四叉树。TU四叉树的根节点一般对 应于叶CU,而CU四叉树的根节点一般对应于树块(或CTU)。未分裂的RQT的TU被称作叶 TU。总的来说,本发明分别使用术语CU及TU来指代叶CU及叶TU,除非另有注释。
[0046] 视频序列通常包含一系列视频帧或图片。图片群组(GOP) -般包括一系列一或多 个视频图片。G0P可包含G0P的标头、图片中的一或多者的标头或其它地方中的语法数据, 所述语法数据描述G0P中包含的图片的数目。图片的每一切片可包含切片语法数据,所述 切片语法数据描述用于相应切片的编码模式。视频编码器20通常对个别视频切片内的视 频块进行操作以便编码视频数据。视频块可对应于CU内的译码节点。视频块可具有固定 或不同的大小,且根据指定的译码标准可以有不同大小。
[0047] 作为一实例,HM支持各种TO大小的预测。假定特定⑶的大小是2NX2N,那么HM 支持2NX 2N或NX N的PU大小的帧内预测,及2NX 2N、2NX N、NX 2N或NX N的对称PU大 小的帧间预测。HM还支持用于2N X nU、2N X nD、nL X 2N及nR X 2N的PU大小的帧间预测 的不对称分割。在不对称分割中,CU的一个方向被不分割,但是另一方向被分割成25%及 75%。⑶的对应于25%分区的部分通过"η"及紧接的"上方"、"下方"、"左"或"右"来指 示。因而,举例来说,"2NXnU"是指水平地分割的2NX2NCU,其中2ΝΧ0. 5Ν PU在顶部,且 2NX1. 5N PU 在底部。
[0048] 在本发明中,"NXN"及"N乘N"可互换地使用来指代在垂直及水平尺寸方面的视 频块的像素尺寸,例如,16X16像素或16乘16像素。总的来说,16X16块将在垂直方向上 具有16个像素 (y = 16),且在水平方向上具有16个像素 (X = 16)。同样,NXN块一般在 垂直方向上具有N个像素,且在水平方向上具有N个像素,其中N表示非负整数值。一块中 的像素可布置在若干行及若干列中。此外,块不一定需要在水平方向与垂直方向上具有相 同数目的像素。举例来说,块可包括NXM像素,其中Μ不一定等于N。
[0049] 在使用CU的PU的帧内预测性或帧间预测性译码之后,视频编码器20可计算CU的 TU的残余数据。PU可包括描述在空间域(还称为像素域)中产生预测性像素数据的方法 或模式的语法数据,且TU可包括在对残余视频数据应用了变换(例如离散余弦变换(DCT)、 整数变换、小波变换或概念上类似的变换)之后在变换域中的系数。所述残余数据可对应 于未编码图片的像素与对应于PU的预测值之间的像素差。视频编码器20可形成包含用于 ⑶的残余数据的TU,且接着变换TU以产生用于⑶的变换系数。
[0050] 在用于产生变换系数的任何变换之后,视频编码器20可执行变换系数的量化。量 化一般是指其中变换系数经量化以可能减少用于表示系数的数据量从而提供进一步压缩 的过程。量化过程可减少与系数中的一些或全部相关联的位深度。举例来说,η位值可在 量化期间被下舍入成m位值,其中η大于m。
[0051] 在量化之后,视频编码器可扫描变换系数,从包含经量化变换系数的二维矩阵产 生一维向量。扫描可经过设计以将较高能量(且因此较低频率)的系数放置在阵列正面,且 将较低能量(且因此较高频率)的系数放置在阵列的背面。在一些实例中,视频编码器20 可利用预定义扫描次序来扫描经量化变换系数以产生可被熵编码的串行化向量。在其它实 例中,视频编码器20可执行自适应扫描。在扫描经量化变换系数以形成一维向量之后,视 频编码器20可例如根据上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译 码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译 码或另一熵编码方法对一维向量进行熵编码。视频编码器还20可对与经编码视频数据相 关联的语法元素进行熵编码以供视频解码器30在对视频数据解码的过程中使用。
[0052] 为了执行CABAC,视频编码器20可向待发射的符号指派上下文模型内的上下文。 举例来说,所述上下文可涉及符号的相邻值是否为非零。为了执行CAVLC,视频编码器20可 选择用于待发射的符号的可变长度码。VLC中的码字可经建构而使得相对短的代码对应于 更有可能的符号,而较长的代码对应于不太可能的符号。以此方式,使用VLC可实现例如优 于对待发射的每一符号使用等长码字的位节省。概率确定可基于指派给符号的上下文。
[0053] 视频编码器20及视频解码器30可分别使用波前并行处理(WPP)来编码及解码图 片。为使用WPP译码图片,例如视频编码器20及视频解码器30等视频译码器可将图片的 译码树单元(CTU)划分成多个波前。每一波前可对应于图片中的不同CTU行。视频译码器 可开始例如使用第一译码器核心或线程来译码顶部波前。在视频译码器已译码顶部波前的 两个或两个以上CTU之后,视频译码器可开始例如使用第二并行译码器核心或线程来与译 码顶部波前并行地译码从顶部起的第二波前。在视频译码器已译码从顶部起的第二波前的 两个或两个以上CTU之后,视频译码器可开始例如使用第三并行译码器核心或线程来与译 码较高波前并行地译码从顶部起的第三波前。此模式可沿图片中的波前向下继续。
[0054] 本发明将视频译码器正使用WPP同时译码的CTU集合称为"CTU群组"。因而,当 视频译码器正使用WPP译码图片时,CTU群组中的CTU中的每一者可能处于图片的不同波 前中,且CTU群组中的CTU中的每一者可从相应上方波前中的CTU垂直偏移图片的CTU的 至少两列。
[0055] 此外,当使用WPP译码图片时,视频译码器可使用与特定CTU外部的一或多个空间 相邻CU相关联的信息来对所述特定CTU中的特定CU执行帧内或帧间预测,只要所述空间 相邻⑶在所述特定CTU的左方、左上方、上方或右上方即可。当一或多个空间相邻⑶在所 述特定CTU的右上方时,还假定所述一或多个空间相邻CU先前经译码。如果所述特定CTU 为不同于最顶部波前的波前中的最左边CTU,那么视频译码器可使用与邻近波前(例如,紧 接上方定位的波前)的第一及/或第二CTU相关联的信息来选择用于对所述特定CTU的语 法元素进行熵译码的译码上下文。如果所述特定CTU不是波前中的最左边CTU,那么视频译 码器可从与定位在所述特定CTU的左方、左上方、上方及/或右上方的空间相邻CU相关联 的信息进行选择以选择用于对所述特定CTU的语法元素进行熵编码的译码上下文。以此方 式,视频译码器可在编码紧接上方定位的波前的两个或两个以上CTU之后基于紧接上方定 位的波前的熵译码状态而初始化一波前的熵译码(例如,CABAC)状态。
[0056] 此外,视频译码器可将图像分割成切片。一般来说,每一切片经个别地熵译码,使 得上下文在译码新切片的开始处复位。视频编码器20,或源装置12的后处理单元(例如 囊封单元,图1中未展示)可将切片囊封为相应网络抽象层(NAL)单元。举例来说,NAL单 元可包含NAL标头及表示一或多个经编码切片的有效负载。为对经编码切片彼此划界,视 频编码器20可在NAL单元有效负载内包含切片标头以指示切片的开始。此外,视频编码器 20可在NAL单元有效负载内包含一或多个切片结束符号以指示相异经编码切片的结束。 [0057] 视频编码器20可将给定图像分割成具有不同长度的切片。换句话说,特定图像的 不同切片可包含或以其它方式对应于不同数目个CTU。结果,视频编码器20可产生不同NAL 单元以包含不同数目个经编码切片。
[0058] 相应地,视频解码器30可逐切片地对图像进行熵解码。更具体来说,源装置22可 使用输出接口 22来将NAL单元发射到目的地装置14的输入接口 28。或者,输出接口 22可 将NAL单元输出到例如光盘或计算机可读存储器(例如磁性存储器或快闪存储器)等计算 机可读媒体上。视频解码器30可经由输入接口 28接收NAL单元,且使用所包含的切片分 割信息(例如,切片标头及/或切片结束符号)来提取每一经编码切片。视频解码器30依 次地对每一所提取切片进行熵解码,且逐切片地重建所述图像。
[0059] 在WPP的上下文中,在一些情形下,视频译码器可能不能够跨越切片边界选择译 码上下文。举例来说,如果特定CTU的上下文信息属于与定位在所述特定CTU右上方的CTU 不同的切片,那么视频译码器可能不能存取译码所述特定CTU所必要的信息。更具体来说, 根据在波前内的定位,在视频译码器到达特定CTU时,所述特定CTU的切片标头可能未被译 码。举例来说,切片标头可能定位在紧接CTU的波前上方的波前中,且切片标头可能定位在 与特定CTU相比靠右两个以上块处。在此实例中,视频译码器可存取视频译码器可从其抽 取用于译码特定CTU的上下文的空间相邻CU。然而,视频译码器可能尚未译码与特定CTU 相对应的切片标头,且因而可能不能够译码所述特定CTU,直到切片标头被译码。结果,可能 要求视频译码器在开始译码所述特定CTU之前译码先前波前的额外块(即,直到切片标头 被译码)。在此情形中,视频译码器不能够利用WPP的优点,例如与定位在右上方的CTU并 行地译码特定CTU。
[0060] 并非在切片于波前的中间开始时允许切片穿过波前边界,视频译码器可实施本发 明的技术以限制译码过程,使得当切片在波前的开始(即,第一 CTU)之后的任何点处开始 时,所述切片在那一波前内结束。仅为易于论述的目的,在波前的开始之后的任何点通常在 本文中大体称为波前的"中间"。即,波前的"中间"在本文中使用时未必是中点,而为波前 的不同于波前的顺序上的第一块的任何CTU (或任何块)。此类切片也可称为在波前"内" 开始。
[0061] 举例来说,视频编码器20可确定切片标头出现在波前的中间内,且切片包含所述 波前的所有剩余CTU以及紧接下方定位的波前的至少一个CTU。作为响应,视频编码器20 可在完成对CTU的熵编码(直到或包含波前的最末CTU)之后即刻插入切片结束符号。艮p, 视频编码器20可确保此类切片在切片于其中开始的波前内结束,使得切片不会在所述切 片开始于不同于波前的顺序上的第一块的块时穿过波前边界。此外,视频编码器20可在切 片结束符号之后插入切片标头,由此指示下一波前(例如,紧接下方定位的波前)对应于新 经编码切片的开始。类似地,当根据WPP对图像进行熵解码时,视频解码器30可读取所接 收NAL单元的切片标头及/或切片结束符号以确定经编码切片在波前的中间开始,且所述 切片还在切片于其中开始的同一波前内结束。在一些实例中,视频编码器20可确定两个或 两个以上切片在单个波前的中间开始。在此些实例中,视频编码器20可确定最末的此种切 片是否溢出到后续波前中,且对于所述最末的此种波前实施本文所述的限制。
[0062] 以此方式,可外加如下限制:开始于不同于波前的顺序上的第一 CTU的CTU或其它 块处的任何切片,所述切片将在所述波前内结束。通过实施这些限制,例如视频编码器20 及/或视频解码器30等视频译码器可改善实施WPP的效率。更具体来说,视频译码器可实 施所述限制以确保在译码当前波前的CTU的同时,视频译码器能存取先前波前的对于译码 当前CTU可能必要的任何数据。即,在对当前CTU的一或多个语法元素进行熵译码时可保 证包含当前CTU的切片的切片标头数据可用,使得视频译码器可正确地确定用于对所述语 法元素进行熵译码的上下文。
[0063] 在一些实例中,切片可能开始于第一波前的第一 CTU处,且穿过边界到紧接第一 波前下方定位的第二波前中。在此些实例中,切片可包含第二波前的多个CTU,但可在第二 波前内终止。换句话说,第二波前可包含属于不同的第二切片的额外CTU。
[0064] 在此实例中,在译码定位于第二波前中的切片的CTU的同时,视频译码器可能能 够存取来自第一波前的对于译码过程所必要的所有数据。即,视频译码器在先前波前的译 码期间可能已经译码切片标头数据,且因此,仍可能准许开始于波前的顺序上的第一 CTU 处的切片穿过与后续波前的波前边界。此外,使用本文所述的限制,视频译码器可确保第二 切片在第二波前内终止。举例来说,如果视频译码器确定第二切片在第二波前的中间开始 且因而以第二波前的最末CTU结束,那么视频译码器可与完成译码第二切片同步地完成译 码第二波前。结果,根据定义,第三波前的开始将与第三切片的开始重合。更具体来说,第 三波前的第一(最左边)CTU将表示第三切片的第一 CTU。如果第三切片穿过边界到第四 (或更大)波前中,那么视频译码器可能一贯地能存取来自第三切片的定位于先前波前中 的部分的译码关键数据,由此改善视频译码器执行WPP的能力。以此方式,视频译码器可实 施本发明的技术以译码当前切片,使得在实施WPP的同时,后续切片得以根据WPP而有效地 译码。
[0065] 例如视频编码器20及/或视频解码器30等视频译码器可基于视频译码器当前是 否正实施WPP而激活所述限制。作为一个实例,视频解码器30可使用位流的指示是否启用 WPP的语法数据来确定当前是否启用了 WPP。类似地,视频编码器20可编码表示是否启用 WPP的语法数据。此种语法数据可译码于视频参数集(VPS)、序列参数集(SPS)、图片参数集 (PPS)、辅助增强信息(SEI)消息或其类似者中。在此实例中,响应于确定启用了 WPP,视频 编码器20可使用WPP对图片进行熵编码,且视频解码器30可使用WPP对图片进行熵解码, 同时观察上文所描述的切片-波前限制。在一些实施方案中,视频译码器可例如响应于确 定WPP当前被停用而启用WPP。
[0066] 视频编码器20可例如在帧标头、块标头、切片标头或G0P标头中进一步将例如基 于块的语法数据、基于帧的语法数据及基于G0P的语法数据等语法数据发送到视频解码器 30。G0P语法数据可描述相应G0P中的帧的数目,且帧语法数据可指示用以编码对应帧的编 码/预测模式。
[0067] 在适用时,视频编码器20及视频解码器30各自可实施为多种合适的编码器或 解码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路 (ASIC)、现场可编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固件或其任何组合。视频编 码器20及视频解码器30中的每一者可包含在一或多个编码器或解码器中,其任一者均可 集成为组合式视频编码器/解码器(编解码器)的一部分。包含视频编码器20及/或视 频解码器30的装置可包括集成电路、微处理器及/或无线通信装置,例如蜂窝式电话。
[0068] 图2是说明可实施用于并行地译码波前的技术的视频编码器20的实例的框图。视 频编码器20可对视频切片内的视频块执行帧内及帧间译码。帧内译码依赖于空间预测来 减少或移除给定视频帧或图片内的视频中的空间冗余。帧间译码依赖于时间预测来减少或 移除视频序列的邻接帧或图片内的视频中的时间冗余。帧内模式(I模式)可指若干基于 空间的译码模式中的任一者。例如单向预测(P模式)或双向预测(B模式)等帧间模式可 指代若干基于时间的译码模式中的任一者。
[0069] 如图2中所示,视频编码器20接收待编码的视频帧内的当前视频块。在图2的实 例中,视频编码器20包含模式选择单元40、参考图片存储器64、求和器50、变换处理单元 52、量化单元54,及熵编码单元56。模式选择单元40又包含运动补偿单元44、运动估计单 元42、帧内预测单元46及分割单元48。对于视频块重建,视频编码器20还包含逆量化单 元58、逆变换单元60及求和器62。还可包含解块滤波器(图2中未图示)以对块边界进 行滤波,以从经重建视频移除成块假影。在需要时,解块滤波器通常将对求和器62的输出 进行滤波。除了解块滤波器之外,还可使用额外滤波器(环路内或环路后)。为简洁起见未 展示此些滤波器,但在需要时,此些滤波器可对求和器50的输出进行滤波(作为环路内滤 波器)。
[0070] 在编码过程期间,视频编码器20接收待译码的视频帧或切片。所述帧或切片可被 划分成多个视频块。运动估计单元42及运动补偿单元44相对于一或多个参考帧中的一或 多个块执行对所接收的视频块的帧间预测译码以提供时间预测。帧内预测单元46可替代 地相对于与待译码块相同的帧或切片中的一或多个相邻块执行对所接收的视频块的帧内 预测译码以提供空间预测。视频编码器20可执行多个译码回合,例如,从而为每一视频数 据块选择一种适当的译码模式。
[0071] 此外,分割单元48可基于先前的译码回合中的先前分割方案的评估而将视频数 据块分割成子块。举例来说,分割单元48可起初将帧或切片分割成CTU,且基于速率失真分 析(例如,速率失真优化)将CTU中的每一者分割成子CU。模式选择单元40可进一步产生 指示将CTU分割成子CU的四叉树数据结构。四叉树的叶节点CU可包含一或多个PU及一 或多个TU。
[0072] 模式选择单元40可基于错误结果选择译码模式中的一者(帧内或帧间),且将所 得的经帧内译码或经帧间译码块提供到求和器50以产生残余块数据,且提供到求和器62 以重建经编码块以用于用作参考帧。模式选择单元40还将语法元素(例如运动向量、帧内 模式指示符、分割信息及其它此类语法信息)提供到熵编码单元56。
[0073] 运动估计单元42及运动补偿单元44可高度集成,但出于概念目的分开进行图解 说明。运动估计单元42执行的运动估计是产生运动向量的过程,所述过程估计视频块的运 动。举例来说,运动向量可指示当前视频帧或图片内的视频块的PU相对于参考帧(或其它 经译码单元)内的相对于当前帧(或其它经译码单元)内正被译码的当前块的预测块的 移位。预测块是被发现在像素差异方面密切地匹配待译码的块的块,其可通过绝对差总和 (SAD)、平方差总和(SSD)或其它差异量度来确定。在一些实例中,视频编码器20可计算存 储在参考图片存储器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20 可内插四分之一像素位置、八分之一像素位置或参考图片的其它分数像素位置的值。因此, 运动估计单元42可相对于全像素位置及分数像素位置执行运动搜索且输出具有分数像素 精确度的运动向量。
[0074] 运动估计单元42通过比较PU的位置与参考图片的预测块的位置来计算用于经帧 间译码切片中的视频块的PU的运动向量。参考图片可选自第一参考图片列表(列表0)或 第二参考图片列表(列表1),其中的每一者识别存储在参考图片存储器64中的一或多个参 考图片。运动估计单元42将计算出的运动向量发送到熵编码单元56及运动补偿单元44。
[0075] 运动补偿单元44执行的运动补偿可包括基于运动估计单元42确定的运动向量来 获取或产生预测块。同样,在一些实例中,运动估计单元42与运动补偿单元44可在功能上 集成。在接收到当前视频块的PU的运动向量后,运动补偿单元44可即刻在参考图片列表 中的一者中定位所述运动向量指向的预测块。求和器50通过从正被译码的当前视频块的 像素值减去预测块的像素值从而形成像素差值来形成残余视频块,如下文所论述。总的来 说,运动估计单元42相对于明度分量执行运动估计,且运动补偿单元44针对色度分量及明 度分量两者使用基于明度分量计算的运动向量。模式选择单元40还可产生与视频块及视 频切片相关联的语法元素以供视频解码器30在解码视频切片的视频块的过程中使用。
[0076] 作为如上文所描述由运动估计单元42及运动补偿单元44执行的帧间预测的替代 方案,帧内预测单元46可对当前块进行帧内预测。明确地说,帧内预测单元46可确定用来 编码当前块的帧内预测模式。在一些实例中,帧内预测单元46可例如在单独的编码回合期 间使用各种帧内预测模式来编码当前块,且帧内预测单元46(或在一些实例中为模式选择 单元40)可从所述测试模式中选择适当的帧内预测模式来使用。
[0077] 举例来说,帧内预测单元46可使用速率失真分析计算用于各种经测试帧内预测 模式的速率失真值,且从所述经测试模式当中选择具有最佳速率失真特性的帧内预测模 式。速率失真分析一般确定经编码块与经编码以产生所述经编码块的原始未编码块之间的 失真(或误差)的量,以及用于产生经编码块的位速率(也就是说,位数目)。帧内预测单 元46可根据用于各种经编码块的失真及速率来计算比率,以确定哪个帧内预测模式对于 所述块展现最佳速率失真值。
[0078] 在针对一块选择帧内预测模式之后,帧内预测单元46可将指示用于所述块的所 选帧内预测模式的信息提供到熵编码单元56。熵编码单元56可编码指示所选帧内预测模 式的信息。视频编码器20在发射的位流中可包含配置数据,其可包含多个帧内预测模式索 引表及多个经修改的帧内预测模式索引表(还称为码字映射表),对用于各种块的编码上 下文的定义,及对将用于所述上下文中的每一者中的最可能帧内预测模式、帧内预测模式 索引表及经修改的帧内预测模式索引表的指示。
[0079] 视频编码器20通过从经译码原始视频块减去来自模式选择单元40的预测数据而 形成残余视频块。求和器50表示执行此减法运算的组件。变换处理单元52将例如离散余 弦变换(DCT)或概念上类似的变换等变换应用于残余块,从而产生包括残余变换系数值的 视频块。变换处理单元52可执行概念上类似于DCT的其它变换。还可使用小波变换、整数 变换、子带变换或其它类型的变换。在任何情况下,变换处理单元52向残余块应用所述变 换,从而产生残余变换系数的块。所述变换可将残余信息从像素值域转换到变换域(例如, 频域)。变换处理单元52可将所得的变换系数发送到量化单元54。量化单元54对变换系 数进行量化以进一步降低位速率。量化过程可减少与系数中的一些或全部相关联的位深 度。可通过调整量化参数来修改量化程度。在一些实例中,量化单元54可接着执行对包含 经量化变换系数的矩阵的扫描。或者,熵编码单元56可执行所述扫描。
[0080] 在量化之后,熵编码单元56对经量化变换系数进行熵编码。举例来说,熵编码单 元56可执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、 基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵 译码技术。在基于上下文的熵编码的情况下,上下文可基于相邻块。在熵编码单元56进行 的熵译码之后,可将经编码位流发射到另一装置(例如视频解码器30),或者将所述视频存 档以用于以后发射或检索。
[0081] 在诸实例中,熵编码单元56可使用波前并行处理(WPP)对经量化变换系数进行熵 编码。如关于图1所描述,WPP可包含并行地对经量化变换系数进行熵编码。举例来说,熵 编码单元56可将经量化变换系数布置成多个行或波前。熵编码单元56可使用从模式选择 单元40接收的语法元素(例如与相邻系数相关联的一或多个运动向量)依次编码每一系 数。就使用WPP进行编码而言,对于处于不同于波前的开始或结束的任何位置处的系数,熵 编码单元56可使用与定位在待编码系数的左方、左上方、上方及右上方的系数相关联的运 动向量。
[0082] 为改善基于WPP的熵编码的效率,熵编码单元56可实施本发明的技术以限制对于 经量化变换系数的传统的切片-波前交互。如所描述,例如视频编码器20等视频译码器可 将图像或表示图像的数据划分成多个切片。根据图2,经量化变换系数流可划分成多个切 片。切片又可涵盖由熵编码单元56划界的一或多个波前的不同部分。举例来说,第一切片 可涵盖第一波前的全部及第二波前的不完整部分。第二切片可涵盖第二波前的未由第一切 片涵盖的剩余部分及第三波前的不完整部分。以此方式,如由WPP提供的传统的切片-波 前交互可能不使切片的开始/结束点与波前的开始/结束点相关。
[0083] 为改善根据WPP进行熵编码的效率,熵编码单元56可实施本发明的一或多个技 术。举例来说,熵编码单元56可基于从量化单元54接收的经量化变换系数确定视频数据 的图片的切片在所述图片中的波前(即,译码树单元(CTU)行)中开始于不同于波前的开 始的位置处。基于所述确定,熵编码单元56可确定所述切片在所述波前内结束,且基于所 述确定译码所述切片。更具体来说,熵编码单元56可例如通过在编码波前的最末系数之后 即刻在NAL单元中插入切片结束符号而使切片终止于波前的最末系数处。以此方式,熵编 码单元56可确保在译码特定CTU的同时,熵编码单元56能存取用于根据WPP译码特定CTU 的所有信息,且用于所述特定CTU的切片标头数据已经熵编码。
[0084] 此外,熵编码单元56可在编码下一波前的第一系数之前在NAL单元中插入切片标 头。在此情况下,熵编码单元56可编码经量化变换系数流,使得下一波前的开始与单独切 片的开始重合。如果新切片涵盖整个第二波前且溢出到第三波前,那么熵编码单元56可存 取根据WPP有效地译码第三波前所必要的所有数据。更具体来说,熵编码单元56可确保用 于第三波前的所有CTU的切片标头已在对第三波前的任何CTU进行熵编码之前进行了熵编 码。
[0085] 在特定实例中,在译码第三波前的第二系数的同时,熵编码单元56可从模式选择 单元40所发送的语法元素存取识别以下系数的运动向量:第二及第三波前中的每一者的 第一系数(即,当前系数的左方及左上方系数)、第二波前的第二系数(即,紧接当前系数上 方定位的系数),及第二波前的第三系数(即,定位在当前系数右上方的系数)。此外,用于 第二系数的切片标头已经熵编码,因为所述切片标头与第二波前的第一系数重合。以此方 式,熵编码单元56可实施本发明的技术以编码当前切片,使得使用WPP编码后续切片更为 有效。
[0086] 逆量化单元58及逆变换单元60分别应用逆量化及逆变换,以重建像素域中的残 余块,(例如)以用于稍后用作参考块。运动补偿单元44可通过将残余块添加到参考图片 存储器64的帧中的一者的预测块来计算参考块。运动补偿单元44还可将一或多个内插滤 波器应用于经重建残余块以计算子整数像素值来用于运动估计。求和器62将经重建残余 块添加到由运动补偿单元44产生的运动补偿预测块以产生经重建视频块,以供存储在参 考图片存储器64中。经重建视频块可由运动估计单元42及运动补偿单元44用作用于对 后续视频帧中的块进行帧间译码的参考块。
[0087] 如上文所描述,视频编码器20表示经配置以进行以下操作的视频译码器的实例: 确定视频数据的图片的切片在所述图片中的译码树单元(CTU)行中开始于不同于所述行 的开始的位置处;基于所述确定,确定所述切片在所述CTU行内结束;以及基于所述切片在 所述CTU行内结束的所述确定而译码所述切片。在诸实例中,视频编码器20可包含于用于 译码视频数据的装置中,所述装置例如桌上型计算机、笔记型(即,膝上型)计算机、平板计 算机、机顶盒、电话手持机(例如所谓的"智能"电话、所谓的"智能"板)、电视、相机、显示 装置、数字媒体播放器、视频游戏控制台、视频流式传输装置,或其类似者。在诸实例中,用 于译码视频数据的此种装置可包含集成电路、微处理器及包含视频编码器20的通信装置 中的一或多者。
[0088] 图3是说明可实施用于并行地译码波前的技术的视频解码器30的实例的框图。在 图3的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测单元74、逆量 化单元76、逆变换单元78、参考图片存储器82及求和器80。视频解码器30在一些实例中 可执行大体与关于视频编码器20 (图2)所描述的编码遍次互逆的解码遍次。运动补偿单 元72可基于从熵解码单元70接收的运动向量产生预测数据,而帧内预测单元74可基于从 熵解码单元70接收的帧内预测模式指示符产生预测数据。
[0089] 在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视 频块及相关联语法元素的经编码视频位流。视频解码器30的熵解码单元70对位流进行熵 解码以产生经量化系数、运动向量或帧内预测模式指示符及其它语法元素。熵解码单元70 将运动向量及其它语法元素转发到运动补偿单元72。视频解码器30可在视频切片层级及 /或视频块层级接收语法元素。
[0090] 熵解码单元70可实施本发明的技术以限制切片-波前交互,从而使用波前并行处 理(WPP)更有效地对图像进行熵解码。举例来说,熵解码单元70可例如通过确定所接收 NAL单元中的切片标头与不是其相应波前的第一 CTU的CTU重合而确定切片在波前的中间 开始。基于所述确定,熵解码单元70可例如通过确定所接收的NAL单元在当前波前的最末 CTU的结束处包含切片结束符号而确定所述切片在同一波前内结束。
[0091] 通过以此方式限制切片-波前交互,熵解码单元70可使用WPP更有效地对图像进 行熵解码。举例来说,熵解码单元70可确保在解码特定CTU的同时,熵解码单元70能存取 使用WPP解码所述特定CTU所必要的所有信息,且用于所述特定CTU的切片标头在熵解码 单元70准备好解码所述特定CTU时已经熵解码。以此方式,熵解码单元70可实施本发明 的技术以更有效地根据WPP解码图像。
[0092] 当视频切片经译码为经帧内译码(I)切片时,帧内预测单元74可基于发信号通知 的帧内预测模式及来自当前帧或图片的先前经解码块的数据而产生用于当前视频切片的 视频块的预测数据。当视频帧经译码为经帧间译码(即,B、P或GPB)切片时,运动补偿单 元72基于从熵解码单元70接收到的运动向量及其它语法元素而产生用于当前视频切片的 视频块的预测块。预测块可从参考图片列表中的一者内的参考图片中的一者产生。视频解 码器30可基于存储在参考图片存储器82中的参考图片使用默认建构技术建构参考帧列 表一列表0及列表1。运动补偿单元72通过解析运动向量及其它语法元素来确定用于 当前视频切片的视频块的预测信息,且使用所述预测信息产生用于正被解码的当前视频块 的预测块。举例来说,运动补偿单元72使用一些接收到的语法元素来确定用于译码视频切 片的视频块的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,Β切片、 Ρ切片或GPB切片)、切片的参考图片列表中的一或多者的建构信息、切片的每一经帧间编 码的视频块的运动向量、切片的每一经帧间译码的视频块的帧间预测状态及用以解码当前 视频切片中的视频块的其它信息。
[0093] 运动补偿单元72还可基于内插滤波器执行内插。运动补偿单元72可使用由视频 编码器20在视频块的编码期间使用的内插滤波器来计算参考块的子整数像素的内插值。 在这种情况下,运动补偿单元72可根据所接收的语法信息元素而确定由视频编码器20使 用的内插滤波器且使用所述内插滤波器来产生预测块。
[0094] 逆量化单元76将在位流中提供且由熵解码单元80解码的经量化变换系数逆量 化,即解量化。逆量化过程可包含使用量化参数QP Y,所述量化参数QPY由视频解码器30针 对视频切片中的每一视频块进行计算以确定应应用的量化程度及同样的逆量化程度。
[0095] 逆变换单元78对变换系数应用逆变换,例如逆DCT、逆整数变换或概念上类似的 逆变换过程,以便产生像素域中的残余块。
[0096] 在运动补偿单元72基于运动向量及其它语法元素产生了当前视频块的预测块之 后,视频解码器30通过将来自逆变换单元78的残余块与由运动补偿单元72产生的对应预 测块求和来形成经解码视频块。求和器80表示执行此求和运算的组件。如果需要的话,还 可应用解块滤波器以对经解码块进行滤波,以便移除成块假影。其它环路过滤器(在译码 环路中或在译码环路之后)也可用于使像素转变平滑或者以其它方式改善视频质量。接着 将给定帧或图片中的经解码视频块存储在参考图片存储器82中,参考图片存储器82存储 参考图片以用于后续运动补偿。参考图片存储器82还存储经解码视频以用于以后在显示 装置(例如图1的显示装置32)上呈现。
[0097] 以此方式,视频解码器30表示经配置以进行以下操作的视频译码器的实例:确定 视频数据的图片的切片在所述图片中的译码树单元(CTU)行中开始于不同于所述行的开 始的位置处;基于所述确定,确定所述切片在所述CTU行内结束;以及基于所述切片在所述 CTU行内结束的所述确定而译码所述切片。在诸实例中,视频解码器30可包含于用于译码 视频数据的装置中,所述装置例如桌上型计算机、笔记型(即,膝上型)计算机、平板计算 机、机顶盒、电话手持机(例如所谓的"智能"电话、所谓的"智能"板)、电视、相机、显示装 置、数字媒体播放器、视频游戏控制台、视频流式传输装置,或其类似者。在诸实例中,用于 译码视频数据的此种装置可包含集成电路、微处理器及包含视频解码器30的通信装置中 的一或多者。
[0098] 图4是说明划分成波前150到160的实例图片100的概念图。波前150到160中 的每一者包含数个块。应注意,图片100可包含额外波前,且每一波前可包含除所展示块之 外的块。所述块中的每一者可对应于例如CTU。
[0099] 例如视频编码器20或视频解码器30等视频译码器可经配置以并行地译码波前 150到160。视频编码器20可在一波前上方的两个块已被译码之后开始译码所述波前。图 4使用通过相对水平的弯曲箭头连接的黑点说明可在其后对波前进行译码的块。举例来说, 可在已译码波前154的块128之后译码波前156的块134。作为一实例,视频译码器可并行 地译码标记有"X"的块(即,块116、124、132及136)中的每一者。在图4的实例中,短划 线102、104、106及108表示已经剖析且可从其获得信息以供在特定译码时间检索的块。所 述特定译码时间可对应于译码标记有"X"的块(即,块116、124、132及136)的时间。
[0100] 因此,视频编码器可从图4中的空心白色箭头所指向的块检索用于标记有"X"的 块的上下文信息。如图4中所示,空心白色箭头所指向的块中的每一者在短划线102、104、 106及108中的一者之内。举例来说,视频译码器可从块114检索用于块116的上下文信 息;视频译码器可从块11〇、112、114及/或122检索用于块124的上下文信息;视频译码器 可从块118、120、122及/或130检索用于块132的上下文信息;且视频译码器可从块126、 128U30及/或134检索用于块136的上下文信息。共同地,短划线102、104、106及108包 含CTU群组,即视频译码器能够在给定时间根据WPP进行译码的图片100的块的集合。
[0101] 根据本发明的技术,波前150到160中的每一者可包含一或多个切片的部分或全 部。或者,切片可包含一或多个波前(例如波前150到160中的一或多者)的部分或全部。 举例来说,第一切片可包含波前150及152的块,第二切片可包含波前152、154及156的块, 且第三切片可包含波前158及160的块。以此方式,当一切片穿过两个波前之间的边界时, 所述切片可包含所述两个波前的一些或所有块。
[0102] 假设例如视频译码器将译码块132。为了初始化包含块132的波前154的上下文 状态,视频译码器可能需要用于包含块132的切片的切片标头的一或多个参数。如果所述 切片被准许在波前152的中间的块处开始且穿过波前152与波前154之间的边界,那么视 频译码器可能必须等待译码切片中的第一块以检索切片标头的信息。举例来说,如果切片 将在波前152中的在块116下方的块的水平位置处开始,那么此块将尚未被剖析,且因而, 视频译码器将需要在视频译码器可开始译码波前154之前等待直到所述块被剖析。然而, 视频译码器可实施本发明的技术以提供如果切片在图片100的波前中在不同于波前的开 始的位置处开始,那么切片在那一特定波前内结束。换句话说,图片100的任何波前可以切 片标头开始,或以切片结束符号结束(或两者)。通过以此方式限制切片-波前交互,视频 译码器可确保在译码图片100的特定块的同时,视频译码器能存取根据WPP译码所述块所 需要的所有信息,且对应于所述块的切片标头已经译码。因而,视频译码器可防止出现以下 情境:要求视频译码器等待根据波前并行处理(WPP)译码一块。
[0103] 更具体来说,视频译码器可实施所述技术以确保根据波前并行处理(WPP)(例如, 使用CABAC)译码所述块所需要的所有数据可供使用,且准备好译码所述块(由于所述块的 切片标头已经译码)。尽管多种视频译码器可实施所述技术,但出于解释的目的,参考图2 的视频编码器20及图3的视频解码器30及其相应组件来描述所述技术中的一或多者。举 例来说,视频解码器30的熵解码单元70可限制图片100内的切片-波前交互以确保根据 WPP译码一块所需要的所有数据可供使用,且所述块的对应切片标头已经译码。举例来说, 熵解码单元70可确定图片100的切片在波前150中开始,但在不同于波前150的开始的位 置处(例如,在块110处)开始。基于所述确定,熵解码单元70可确定切片在波前150内 结束。举例来说,熵解码单元70可在表示图片100的部分的所接收NAL单元中检测紧接波 前150的最末经编码块之后的切片结束符号,且检测紧接波前152的第一经编码块之前的 切片标头。以此方式,视频编码器20及/或视频解码器30可确保波前152的任何特定块 的切片标头在准备好译码所述特定块之前已经译码。
[0104] 在根据WPP编码图片100的上下文中,视频编码器20的熵编码单元56可检测在块 110处开始的切片还包含波前152的一或多个块。此概念在本文中被称为"切片溢出"。在 此情况下,熵编码单元56可在包含波前150的最末块之后终止所述切片,且起始包含波前 152的第一块的新切片。如所描述,熵编码单元56可产生包含表示图片100的经编码数据 的NAL单元,且在表示波前150的最末块(为经编码)的数据之后插入切片结束符号。类似 地,熵编码单元56可在同一或后续NAL单元中在紧接表示波前152的第一块为经编码的数 据之前插入切片标头。通过实施这些限制,视频编码器20可确保用于波前150及/或152 的给定块的切片标头在准备好译码所述给定块之前已经译码。以此方式,视频编码器20可 实施本发明的技术以限制切片-波前交互以更有效地利用WPP,且使得视频解码器30能够 同样更有效地利用WPP。
[0105] 以此方式,视频译码器可确定图片100的切片在图片100中的CTU行中在不同于 所述行的开始处开始。基于所述确定,视频译码器可确定所述切片在所述CTU行内结束,且 基于所述切片在所述CTU行内结束的所述确定译码所述切片。
[0106] 如上文所论述,在一些实例中,例如视频编码器20或视频解码器30等视频译码 器可经配置以译码视频数据,使得当视频数据的切片包含包括完整行的第一译码树单元 (CTU)行及第二CTU行的一部分(所述第二行包括比完整行少的CTU)时,所述切片开始于 最大译码单元的至少一个完整行的开始处。举例来说,假设一切片开始于波前150的开始 处。在此实例中,所述切片可在后续波前(例如波前152)的中间(即,在所述后续波前的 结束之前)结束。
[0107] 假设例如切片在块120处结束。这将被上文所描述的限制准许,因为所述切片开 始于波前(在此实例中,即波前150)的开始处。因而,后续切片可在块122处开始。然而, 在此实例中,将不准许此切片穿过波前152结束处的边界。因而,所述切片将在波前152的 结束处结束。当然,额外切片可添加在波前152内,只要切片不穿过此实例中的波前152与 波前154之间的边界即可。
[0108] 图5是说明视频译码器可借以实施用于并行地译码波前的本发明的技术的实例 过程180的流程图。图5说明例如视频编码器20等视频译码器可使用本发明的一或多个 技术编码例如视频数据的帧等图片的实例过程180。尽管过程180可由根据本发明的方面 的多种装置执行,但出于解释的目的,本文中关于图1到2的装置及其相应组件以及图4的 图片100来描述过程180。过程180可在装置接收视频数据的图片(182)时开始。作为一 个实例,源装置12可经由一或多个输入装置接收图片100。
[0109] 此外,源装置12可启用波前并行处理(WPP) (184)。举例来说,源装置12可启用 WPP,由此致使视频编码器20根据WPP编码图片100。例如视频编码器20等视频译码器可 确定图片100的波前(186)。举例来说,视频编码器20可确定与图片100的WPP式编码相 关联的每波前的块(例如,CTU)的数目,且在每次达到块的数目的整数倍之后即刻确定波 前转变。
[0110] 此外,视频编码器20可确定用于图片100的切片标头(188)。更具体来说,视频 编码器20可使用切片标头来指示切片转变,即图片100的新切片的开始。举例来说,视频 编码器20可在图片100的对应于新切片的开始的特定部分处插入切片标头。在一些实例 中,视频编码器20可基于切片结束符号指示切片转变,例如通过在图片100的一部分处插 入切片结束符号以表示切片的结束。在一些实例中,视频编码器20可使用一连串切片结束 符号随即继之以一切片标头来指示切片转变,例如通过插入切片结束符号以表示切片的结 束,且紧接切片结束符号之后插入切片标头以表示新切片的开始。
[0111] 视频译码器可确定当前切片是否在波前的第一 CTU之后开始(190)。举例来说,如 果视频编码器20在块110处检测到或插入切片标头,那么视频编码器20可确定当前切片 在波前150的第一 CTU之后开始(例如,在波前的"中间"开始)。在此实例中,如果视频编 码器20确定当前切片在波前的第一 CTU之后开始(190的"是"分枝),那么视频编码器20 可确定当前切片在当前波前内结束(192)。举例来说,视频编码器20可通过在划界到波前 152的转变之前在所产生的NAL单元中放置切片结束符号而确定当前切片在波前150内结 束。通过确定所描述的切片转变,视频编码器20可保证视频编码器20 (及/或视频解码器 30)能存取译码波前152的块所必要的所有信息,且用于所述块的切片标头已经译码。
[0112] 另一方面,如果视频译码器确定当前切片不在波前的第一 CTU之后开始,即切片 标头与波前的第一 CTU重合(190的"否"分枝),那么视频译码器可继续确定用于图片100 的切片标头(188)。举例来说,视频编码器30可基于确定当前切片开始于波前的开始处而 编码后续切片标头(及/或切片结束符号)。以此方式,视频编码器20可以如下方式实施 过程180以限制切片-波前交互:视频编码器20及视频解码器30能存取根据WPP有效地 译码当前CTU所必要的所有数据(包含已经译码的切片标头)。
[0113] 图6是说明视频译码器可借以使用本发明的一或多个技术解码例如视频数据的 帧等经编码图片的另一实例过程200的流程图。尽管过程200可由根据本发明的方面的多 种装置执行,但出于解释的目的,本文中关于图1及3的装置及其相应组件以及图4的图片 100来描述过程200。过程200可在视频解码器30接收视频数据的经编码图片(202)时开 始。作为一个实例,目的地装置14可在输入接口 128处接收图片100的经编码版本。
[0114] 此外,视频解码器30可启用波前并行处理(WPP) (204)。在一些实例中,计算机可 读媒体16可包含指示将启用WPP的信令数据。相反,在其它实例中,视频解码器30可基于 包含于计算机可读媒体16中的视频数据是否符合特定标准及/或标准的特定概况而确定 启用WPP的隐含指示。举例来说,目的地装置14可启用WPP以致使视频解码器30根据WPP 解码图片100的所接收的经编码版本。此外,视频解码器30可确定经编码图片100的新波 前的开始(206)。举例来说,视频解码器30可确定经编码图片100的第一块(例如,CTU) 指示新波前150的开始。此外,视频解码器30可确定与图片100的WPP式编码相关联的每 波前的CTU的数目,且在每次达到CTU的数目的整数倍之后即刻确定新波前的开始(或"波 前转变")。
[0115] 视频解码器30可解码图片100的经编码版本的当前波前(例如,波前150)的当 前切片的视频数据(208)。更具体来说,视频解码器30可在每CTU基础上解码波前150,在 最左边CTU处开始,接着解码右方的下一 CTU,以此类推。此外,视频解码器30可确定视频 解码器30在到达波前150的结束(例如,最右边CTU)之前是否检测到切片标头(210)。视 频解码器30可基于在经编码图片100中检测到切片标头而确定经编码图片100的新切片 的开始,或"切片转变"。如果视频解码器30在波前150的结束之前未检测到切片标头(210 的"否"分枝),那么视频解码器30可检测新波前152的开始(206)。更具体来说,在此情形 中,视频解码器30可确定波前152的包含波前152的第一 CTU的至少部分属于与波前152 的CTU相同的切片。
[0116] 相反,如果视频解码器30在波前150的结束之前检测到切片标头(210的"是"分 枝),那么视频解码器30可确定切片标头是否与波前150的第一 CTU重合(212)。换句话 说,视频解码器30可确定当前切片是否开始于与当前波前150相同的CTU处。如果视频解 码器30确定所检测到的切片标头与波前150的第一 CTU重合(212的"是"分枝),那么视 频解码器30可继续解码波前150的当前切片的视频数据(208)。
[0117] 另一方面,如果视频解码器30确定所检测到的切片标头不与波前150的第一 CTU 重合(212的"否"分枝),那么视频解码器30可确定当前切片在波前150内结束(214)。更 具体来说,视频解码器30可基于由本发明的技术实现的切片-波头交互限制而确定当前切 片在波前150内(例如,在波前150的最末/最右边CTU处或之前)结束。此外,基于确定 当前切片在波前150内结束,视频解码器可继续解码波前150的当前切片的视频数据。
[0118] 通过以图6中所说明的方式限制切片-波前交互,视频解码器30可确保在解码定 位于波前(例如波前152)中的切片的CTU的同时,视频解码器30能从波前150存取波前 152的解码过程所必要的所有数据。即,视频解码器30将在波前150的解码期间已经解码 波前152中的切片的切片标头数据,或用于波前152中的切片的切片标头将出现在波前152 的开始处,且因此,视频解码器30可基于能存取所有必要的解码关键数据而开始根据WPP 解码波前152。
[0119] 应认识到,取决于实例,本文中所描述的技术中的任一者的某些动作或事件可用 不同顺序执行、可添加、合并或全部省略(例如,实践所述技术并不需要所有的所描述动作 或事件)。此外,在某些实施例中,可同时(例如,通过多线程处理、中断处理或多个处理器) 而非顺序地执行动作或事件。
[0120] 在一或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如 果用软件实施,那么所述功能可以作为一或多个指令或代码在计算机可读媒体上存储或传 输,并且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应 于有形媒体,例如数据存储媒体,或包含促进将计算机程序从一处传送到另一处的任何媒 体(例如,根据通信协议)的通信媒体。以此方式,计算机可读媒体总体上可以对应于(1) 有形计算机可读存储媒体,其是非暂时形的,或(2)通信媒体,例如信号或载波。数据存储 媒体可以是可由一或多个计算机或一个或多个处理器存取以检索用于实施本发明中描述 的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读 媒体。
[0121] 借助于实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM 或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或任何其它可用来 存储指令或数据结构的形式的期望程序代码并且可由计算机存取的媒体。同样,可恰当地 将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订 户线(DSL)或例如红外线、无线电及微波等无线技术从网站、服务器或其它远程源传输软 件,那么同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电及微波等无线技术包含于 媒体的定义中。但是,应理解,所述计算机可读存储媒体及数据存储媒体并不包括连接、载 波、信号或其它暂时性媒体,而是实际上针对于非暂时性有形存储媒体。如本文中所使用, 磁盘及光盘包含紧密光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软磁盘及蓝 光光盘,其中磁盘通常以磁性方式再现数据,而光盘使用激光以光学方式再现数据。上文各 者的组合也应包含在计算机可读媒体的范围内。
[0122] 指令可以由一或多个处理器执行,所述一或多个处理器例如是一或多个数字信号 处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等 效的集成或离散逻辑电路。因此,如本文中所使用的术语"处理器"可指上述结构或适合于 实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文所述的功 能性可以在经配置用于编码及解码的专用硬件及/或软件模块内提供,或者并入在组合式 编解码器中。并且,可将所述技术完全实施于一或多个电路或逻辑元件中。
[0123] 本发明的技术可以在广泛多种装置或设备中实施,包括无线手持机、集成电路 (1C)或一组1C(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以 执行所揭示的技术的装置的功能方面,但未必需要通过不同硬件单元实现。实际上,如上文 所描述,各种单元可以配合合适的软件及/或固件组合在一个编解码器硬件单元中,或者 通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
[0124] 已描述各种实例。这些及其它实例属于所附权利要求书的范围内。
【权利要求】
1. 一种译码视频数据的方法,所述方法包括: 确定视频数据的图片的切片在所述图片中的译码树单元CTU行中开始于不同于所述 行的开始的位置处; 基于所述确定,确定所述切片在所述CTU行内结束;以及 基于所述切片在所述CTU行内结束的所述确定而译码所述切片。
2. 根据权利要求1所述的方法,其进一步包括译码所述视频数据的所有图片的所有切 片,使得在不同于对应CTU行的开始的位置处开始的所有所述切片还在所述对应CTU行内 结束。
3. 根据权利要求1所述的方法,其中译码所述切片包括使用波前并行处理译码所述切 片。
4. 根据权利要求3所述的方法,其中使用波前并行处理译码所述切片进一步包括确定 波前并行处理被启用。
5. 根据权利要求3所述的方法,其进一步包括启用波前并行处理。
6. 根据权利要求5所述的方法,其进一步包括译码指示波前并行处理被启用的语法数 据。
7. 根据权利要求3所述的方法,其中译码所述切片包括使用波前并行处理译码图片的 包含所述切片的至少一部分。
8. 根据权利要求1所述的方法,其进一步包括确定所述切片在所述CTU行的结束处或 在所述CTU行的所述结束之前结束。
9. 根据权利要求1所述的方法,其中译码所述切片包括在到达所述切片的所述结束之 前以光栅扫描次序译码所述切片的CTU而不穿过到所述图片中的后续CTU行。
10. 根据权利要求1所述的方法,其中所述CTU行包括第一 CTU行,所述方法进一步包 括与译码所述第一 CTU行实质上并行地译码与所述第一 CTU行邻近的CTU行。
11. 根据权利要求10所述的方法,其中所述邻近CTU行包括定位在所述第一 CTU行下 方的第二CTU行。
12. 根据权利要求10所述的方法,其中所述邻近CTU行包括定位在所述第一 CTU行上 方的第二CTU行。
13. 根据权利要求1所述的方法,其中译码所述切片包括基于所述切片在所述CTU行内 结束的所述确定而对所述切片进行熵解码。
14. 根据权利要求1所述的方法,其中译码所述切片包括基于所述切片在所述CTU行内 结束的所述确定而对所述切片进行熵编码。
15. -种用于译码视频数据的装置,所述装置包括经配置以进行以下操作的视频译码 器: 确定视频数据的图片的切片在所述图片中的译码树单元CTU行中开始于不同于所述 行的开始的位置处; 基于所述确定,确定所述切片在所述CTU行内结束;以及 基于所述切片在所述CTU行内结束的所述确定而译码所述切片。
16. 根据权利要求15所述的装置,其中所述装置包括以下各项中的至少一者: 集成电路; 微处理器;以及 通信装置,其包括所述视频译码器。
17. 根据权利要求15所述的装置,其中所述视频译码器进一步经配置以译码所述视频 数据的所有图片的所有切片,使得在不同于对应CTU行的开始的位置处开始的所有所述切 片还在所述对应CTU行内结束。
18. 根据权利要求15所述的装置,其中所述视频译码器经配置以使用波前并行处理译 码所述切片。
19. 根据权利要求18所述的装置,其中所述视频译码器经配置以至少部分地通过确定 在所述装置上启用波前并行处理而使用波前并行处理译码所述切片。
20. 根据权利要求18所述的装置,其中所述视频译码器进一步经配置以在所述装置上 启用波前并行处理。
21. 根据权利要求15所述的装置,其中所述视频译码器进一步经配置以确定所述切片 在所述CTU行的结束处或在所述CTU行的所述结束之前结束。
22. 根据权利要求15所述的装置,其中所述视频译码器经配置以至少部分地通过在到 达所述切片的所述结束之前以光栅扫描次序译码所述切片的CTU而不穿过到所述图片中 的后续CTU行来译码所述切片。
23. 根据权利要求15所述的装置,其中所述CTU行包括第一 CTU行,且其中所述视频译 码器进一步经配置以: 与译码所述第一 CTU行实质上并行地译码与所述第一切片邻近的CTU行。
24. 根据权利要求23所述的装置,其中所述邻近CTU行包括定位在所述第一 CTU行下 方的第二CTU行。
25. 根据权利要求23所述的装置,其中所述邻近CTU行包括定位在所述第一 CTU行上 方的第二CTU行。
26. 根据权利要求15所述的装置,其中所述视频译码器包括视频解码器,所述视频解 码器经配置以基于所述切片在所述CTU行内结束的所述确定而对所述切片进行熵解码。
27. 根据权利要求15所述的装置,其中所述视频译码器进一步包括视频编码器,所述 视频编码器经配置以基于所述切片在所述CTU行内结束的所述确定而对所述切片进行熵 编码。
28. -种用于译码视频数据的装置,所述装置包括: 用于确定视频数据的图片的切片在所述图片中的译码树单元CTU行中开始于不同于 所述行的开始的位置处的装置; 用于基于所述确定而确定所述切片在所述CTU行内结束的装置;以及 用于基于所述切片在所述CTU行内结束的所述确定而译码所述切片的装置。
29. 根据权利要求28所述的装置,其进一步包括用于译码所述视频数据的所有图片的 所有切片使得在不同于对应CTU行的开始的位置处开始的所有所述切片还在所述对应CTU 行内结束的装置。
30. 根据权利要求28所述的装置,其中所述用于译码所述切片的装置包括用于使用波 前并行处理译码所述切片的装置。
31. 根据权利要求28所述的装置,其中所述用于译码所述切片的装置包括用于在到达 所述切片的所述结束之前以光栅扫描次序译码所述切片的CTU而不穿过到所述图片中的 后续CTU行的装置。
32. 根据权利要求28所述的装置,其中所述切片包括第一切片,所述装置进一步包括 用于与译码所述第一 CTU行实质上并行地译码与所述第一 CTU行邻近的CTU行的装置。
33. -种其上存储有指令的计算机可读存储媒体,所述指令在执行时致使计算装置的 可编程处理器进行以下操作 : 确定视频数据的图片的切片在所述图片中的译码树单元CTU行中开始于不同于所述 行的开始的位置处; 基于所述确定,确定所述切片在所述CTU行内结束;以及 基于所述切片在所述CTU行内结束的所述确定而译码所述切片。
34. 根据权利要求33所述的计算机可读存储媒体,其中所述指令在执行时进一步致使 所述计算装置的所述可编程处理器译码所述视频数据的所有图片的所有切片,使得在不同 于对应CTU行的开始的位置处开始的所有所述切片还在所述对应CTU行内结束。
35. 根据权利要求33所述的计算机可读存储媒体,其中所述指令在执行时进一步致使 所述计算装置的所述可编程处理器使用波前并行处理译码所述切片。
36. 根据权利要求33所述的计算机可读存储媒体,其中所述指令在执行时进一步致使 所述计算装置的所述可编程处理器至少部分地通过在到达所述切片的所述结束之前以光 栅扫描次序译码所述切片的CTU而不穿过到所述图片中的后续CTU行来译码所述切片。
37. 根据权利要求33所述的计算机可读存储媒体,其中所述CTU行是第一 CTU行,且 其中所述指令在执行时进一步致使所述计算装置的所述可编程处理器与译码所述第一 CTU 行实质上并行地译码与所述第一 CTU行邻近的CTU行。
【文档编号】H04N19/436GK104221381SQ201380019194
【公开日】2014年12月17日 申请日期:2013年2月26日 优先权日:2012年4月11日
【发明者】穆罕默德·蔡德·科班, 王益魁, 马尔塔·卡切维奇 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1