对于并行处理的帧内块复制预测限制的制作方法

文档序号:12515725阅读:199来源:国知局
对于并行处理的帧内块复制预测限制的制作方法与工艺

技术领域
本发明涉及视频译码,并且更确切地说,涉及基于其它视频块对视频块的预测。
背景技术
:数字视频能力可以并入到多种多样的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、平板计算机、电子书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话(所谓的“智能电话”)、视频电话会议装置、视频流式发射装置及其类似者。数字视频装置实施视频压缩技术,例如描述于以下各者中的那些技术:由MPEG-2、MPEG-4、ITU-TH.263、ITU-TH.264/MPEG-4第10部分高级视频译码(AVC)定义的标准、高效率视频译码(HEVC)标准(H.265)及这些标准的扩展。视频装置可以通过实施此类视频压缩技术来更有效率地发射、接收、编码、解码和/或存储数字视频信息。视频压缩技术执行空间(图片内)预测及/或时间(图片间)预测来减少或去除视频序列中固有的冗余。对于基于块的视频译码,可以将视频切片(即,视频帧或视频帧的一部分)分割成视频块,视频块也可被称作树块、译码单元(CU)及/或译码节点。使用关于同一图片中的相邻块中的参考样本的空间预测对图片的经帧内译码(I)切片中的视频块进行编码。图片的经帧间编码(P或B)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。空间或时间预测产生待译码块的预测性块。残余数据表示待译码原始块与预测性块的间的像素差。根据指向形成预测性块的参考样本块的运动向量和指示经译码块与预测性块之间的差的残余数据来编码经帧间译码块。根据帧内译码模式和残余数据来编码经帧内译码块。为了进一步压缩,可将残余数据从像素域变换到变换域,从而产生残余变换系数,可接着量化所述残余变换系数。可扫描最初按二维阵列排列的经量化变换系数,以便产生变换系数的一维向量,且可应用熵译码以实现甚至更多压缩。技术实现要素:本发明提出在启用IBC模式时潜在地增强并行处理的技术。在一个实例中,一种解码视频数据的方法包含:针对在启用波前并行处理的情况下译码的一或多个块,确定译码树块(CTB)延迟,其中CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟;针对在帧内块复制(IBC)模式中译码并在禁用波前并行处理的情况下译码的当前视频数据块,基于针对在启用波前并行处理的情况下译码的一或多个块所确定的CTB延迟,确定包含当前块的图片内用于当前块的IBC预测区域;从所确定的用于当前块的IBC预测区域内识别用于当前块的预测性块;及基于预测性块对当前块进行IBC解码。在另一实例中,一种编码视频数据的方法包含:针对在启用波前并行处理的情况下译码的一或多个块,确定译码树块(CTB)延迟,其中CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟;针对在帧内块复制(IBC)模式中译码并在禁用波前并行处理的情况下译码的第一视频数据块,基于CTB延迟确定用于第一块的IBC预测区域;从用于第一块的IBC预测区域内识别用于第一块的预测性块;及产生指示用于定位预测性块的块向量的语法。在另一实例中,一种进行视频译码的装置包含存储视频数据的存储器和一或多个处理器,所述一或多个处理器经配置为:针对在启用波前并行处理的情况下译码的一或多个块,确定译码树块(CTB)延迟,其中CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟;针对在帧内块复制(IBC)模式中译码并在禁用波前并行处理的情况下译码的当前视频数据块,基于针对在启用波前并行处理的情况下译码的一或多个块所确定的CTB延迟,确定包含当前块的图片内用于当前块的IBC预测区域;从所确定的用于当前块的IBC预测区域内识别用于当前块的预测性块;及基于预测性块对当前块进行IBC解码。在另一实例中,一种用于进行视频编码的装置包含存储视频数据的存储器和一或多个处理器,所述一或多个处理器经配置为:针对在启用波前并行处理的情况下译码的一或多个块,确定译码树块(CTB)延迟,其中CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟;针对在帧内块复制(IBC)模式中译码并在禁用波前并行处理的情况下译码的第一视频数据块,基于CTB延迟确定用于第一块的IBC预测区域;从用于第一块的IBC预测区域内识别用于第一块的预测性块;及产生指示用于定位预测性块的块向量的语法。在另一实例中,一种用于解码视频数据的设备包含:用于针对在启用波前并行处理的情况下译码的一或多个块来确定译码树块(CTB)延迟的装置,其中CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟;针对在帧内块复制(IBC)模式中译码并在禁用波前并行处理的情况下译码的当前视频数据块,用于基于针对在启用波前并行处理的情况下译码的一或多个块所确定的CTB延迟来确定包含当前块的图片内用于当前块的IBC预测区域的装置;用于从所确定的用于当前块的IBC预测区域内识别用于当前块的预测性块的装置;及用于基于预测性块对当前块进行IBC解码的装置。在另一实例中,计算机可读存储媒体存储指令,所述指令在由一或多个处理器执行时使一个或多个处理器:针对在启用波前并行处理的情况下译码的一或多个块来确定译码树块(CTB)延迟,其中CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟;针对在帧内块复制(IBC)模式中译码并在禁用波前并行处理的情况下译码的当前视频数据块,基于针对在启用波前并行处理的情况下译码的一或多个块所确定的CTB延迟,确定包含当前块的图片内的用于当前块的IBC预测区域;从所确定的用于当前块的IBC预测区域内识别用于当前块的预测性块的;及基于预测性块对当前块进行IBC解码。在另一实例中,一种用于编码视频数据的设备包含:用于针对在启用波前并行处理的情况下译码的一或多个块来确定译码树块(CTB)延迟的装置,其中CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟;针对在帧内块复制(IBC)模式中译码并在禁用波前并行处理的情况下译码的第一视频数据块,用于基于CTB延迟确定用于第一块的IBC预测区域的装置;用于从用于第一块的IBC预测区域内识别用于第一块的预测性块的装置;及用于产生指示用于定位预测性块的块向量的语法的装置。在另一实例中,计算机可读存储媒体存储指令,所述指令在由一或多个处理器执行时使一个或多个处理器:针对在启用波前并行处理的情况下译码的一或多个块,确定译码树块(CTB)延迟,其中CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟;针对在帧内块复制(IBC)模式中译码并在禁用波前并行处理的情况下译码的第一视频数据块,基于CTB延迟,确定用于第一块的IBC预测区域;从用于第一块的IBC预测区域内识别用于第一块的预测性块;及产生指示用于定位预测性块的块向量的语法。在附图和以下描述中阐述所述技术的一或多个方面的细节。所述技术的其它特征、目标和优点将从所述描述和附图以及权利要求而显而易见。附图说明图1是说明可利用本发明中描述的技术的实例视频编码和解码系统的框图。图2A到2C是说明用于视频数据的不同样本格式的概念图。图3是说明根据4:2:0样本格式而格式化的16×16译码单元的概念图。图4是说明根据4:2:2样本格式而格式化的16×16译码单元的概念图。图5示出帧内块复制(IBC)模式的概念说明。图6示出使用单元片时对图片的光栅扫描的实例。图7示出WPP并行地处理各行CTB的实例,每一行以在处理上方行的第二CTB之后可用的CABAC概率开始。图8到12示出用于本发明中所描述的各种实例的有效预测区域。图13示出用信号表示intra_bc_flag语法元素的实例方法。图14示处用信号表示intra_bc_flag语法元素的另一实例方法。图15是说明可实施本发明中所描述的技术的实例视频编码器的框图。图16是说明可实施本发明中所描述的技术的实例视频解码器的框图。图17是说明并入本发明中描述的技术的实例视频编码程序的框图。图18是说明并入本发明中描述的技术的实例视频解码程序的框图。具体实施方式包含最近开发的高效视频译码(HEVC)标准的各种视频译码标准包含用于视频块的预测性译码模式,其中基于视频数据的已经译码块来预测当前正译码的块。在帧内预测模式中,基于与当前块在相同的图片中的一或多个先前经译码的相邻块来预测当前块,而在帧间预测模式中,基于不同图片中的已经译码块来预测当前块。在帧间预测模式中,确定先前经译码帧的块用作预测块的程序有时被称作运动估计,其通常由视频编码器执行,且识别及检索预测性块的程序有时被称作运动补偿,其由视频编码器及视频解码器两者执行。视频编码器通常通过使用多种译码情形来译码视频及识别产生所要速率-失真折衷的译码情形来确定如何译码视频数据序列。当为特定视频块测试帧内预测译码情形时,视频编码器通常测试相邻像素行(即,正好在正译码块上方的像素行),且测试相邻像素列(即,正好在正译码块左侧的像素列)。相比之下,当测试帧间预测情形时,视频编码器通常在大得多的搜索区域中识别候选预测性块,其中所述搜索区域对应于先前经译码的视频数据帧中的视频块。然而,已发现,对于某些类型的视频图像,诸如包含文字、符号或重复图案的视频图像,可通过使用帧内块复制(IBC)模式相对于帧内预测及帧间预测实现译码增益,所述帧内块复制(IBC)模式有时也被称作帧内运动补偿(IMC)模式。在各种译码标准的开发过程中,最初使用术语IMC模式,但之后被修改成IBC模式。在IBC模式中,视频编码器在与正经译码块相同的帧或图片中搜索预测性块(如同在帧内预测模式中),但视频编码器搜索较宽搜索区域,而非仅仅搜索相邻的像素列及像素行。在IBC中模式,视频编码器可确定偏移向量,有时也称为运动向量或块向量,用于识别与正预测的块相同的帧或图片内的预测性块。偏移向量包含(例如)x分量及y分量,其中x分量识别正预测视频块与预测性块之间的水平位移,且其中y分量识别正预测视频块与预测性块之间的垂直位移。视频编码器在经编码位流中用信号表示所确定的偏移向量,使得视频解码器在解码经编码位流时可识别视频编码器所选定的预测性块。包含HEVC的各种视频译码标准还支持并行处理机制,例如,单元片和波前并行处理,以使得可同时解码同一图片内的不同块。单元片提供(利用经译码树块(CTB)粒度)将图片矩形分割为多个可独立解码的(包含剖析及重构建)区域,以使得视频解码器可并行地解码多个单元片。不同于单元片,波前并非可独立解码的,但视频解码器仍可能够通过使各种波前解码开始的时间交错而并行地解码多个波前。举例来说,如果视频解码器在开始解码第一波前下方的第二波前之前解码第一波前的两个块,那么视频解码器可确保解码第二波前所需的第一波前的任何信息已被解码,并因此可用于解码第二波前。本发明提出在启用IBC模式时潜在地增强并行处理的技术。更具体地,本发明提出对IBC块向量(BV)的限制,以使得解码器可按非光栅扫描次序并行地处理多个CTU,其有时被称作波前并行处理。本发明的技术是关于(但不限于)屏幕内容译码,包含支持可能较高的位深度(超过8个位)、不同的色度采样格式,诸如4:4:4、4:2:2、4:2:0、4:0:0等等。图1为说明可利用本发明中所描述的技术的实例视频编码及解码系统10的框图,所述技术包含用于在IBC模式中对块译码的技术和用于并行处理的技术。如图1中所示,系统10包含源装置12,其产生稍后待由目的地装置14解码的经编码视频数据。源装置12和目的地装置14可包括广泛范围的装置中的任一者,包含桌上型计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如所谓的“智能”电话)、所谓的“智能”平板电脑、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、视频流式发射装置或类似者。在一些情况下,可装备源器件12和目的地器件14以用于无线通信。目的地装置14可经由链路16接收待解码的经编码视频数据。链路16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型媒体或装置。在一个实例中,链路16可包括使得源装置12能够实时地将经编码视频数据直接发射到目的地装置14的通信媒体。可根据通信标准(例如无线通信协议)调制经编码的视频数据,并将其发射到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。通信媒体可形成分组网络(例如,局域网、广域网或全球网络,例如因特网)的部分。通信媒体可包含路由器、交换器、基站或任何其它可用于促进从源装置12到目的地装置14的通信的设备。替代地,可将经编码数据从输出接口22输出到存储装置17。类似地,可以通过输入接口从存储装置17存取经编码数据。存储装置17可以包含多种分布式或本地存取的数据存储媒体中的任一者,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置17可对应于文件服务器或可保持由源装置12产生的经编码视频的另一中间存储装置。目的地装置14可经由流式发射或下载从存储装置17存取所存储的视频数据。文件服务器可为能够存储经编码视频数据并将经编码视频数据传输到目的地装置14的任何类型服务器。实例文件服务器包含网络服务器(例如,用于网站)、FTP服务器、网络连接存储(NAS)装置或本地磁盘驱动器。目的地装置14可以通过任何标准数据连接(包含因特网连接)来存取经编码视频数据。此可包含适合于存取存储于文件服务器上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或两者的组合。经编码视频数据从存储装置17的发射可为流式发射、下载发射或两者的组合。本发明的技术未必限于无线应用或设置。所述技术可应用于视频译码以支持多种多媒体应用,例如空中电视广播、有线电视发射、卫星电视发射、流式视频发射(例如,经由因特网)、编码数字视频以存储于数据存储媒体上、解码存储于数据存储媒体上的数字视频,或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频发射,以支持例如视频流式发射、视频重放、视频广播和/或视频电话等应用。在图1的实例中,源装置12包含视频源18、视频编码器20及输出接口22。在一些情况下,输出接口22可包含调制器/解调器(调制解调器)和/或发射器。在源装置12中,视频源18可包含诸如以下的源:视频俘获装置(例如,摄像机)、含有先前俘获的视频的视频存档、用于从视频内容提供者接收视频的视频馈入接口和/或用于产生计算机图形数据作为源视频的计算机图形系统,或此类源的组合。作为一个实例,如果视频源18为摄像机,那么源装置12及目的地装置14可形成所谓的相机电话或视频电话。然而,本发明中所描述的技术一般来说可适用于视频译码,且可应用于无线和/或有线应用。所俘获、所预俘获或计算机产生的视频可由视频编码器20编码。可经由源装置12的输出接口22将经编码视频数据直接发射到目的地装置14。还可(或替代地)将经编码视频数据存储到存储装置17上以供稍后由目的地装置14或其它装置存取以用于解码和/或重放。目的地装置14包含输入接口28、视频解码器30和显示装置32。在一些情况下,输入接口28可包含接收器和/或调制解调器。目的地装置14的输入接口28经由链路16接收经编码视频数据。经由链路16传达或在存储装置17上提供的经编码视频数据可包含由视频编码器20产生的多种语法元素,以供由例如视频解码器30等视频解码器用于解码视频数据。此类语法元素可与在通信媒体上发射、存储在存储媒体上或存储在文件服务器上的经编码视频数据包含在一起。显示装置32可与目的地装置14集成或在所述目的地装置外部。在一些实例中,目的地装置14可包含集成式显示装置,且还经配置以与外部显示装置接口连接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。视频编码器20和视频解码器30可根据例如HEVC等视频压缩标准来操作,且可符合HEVC测试模型(HM)。被称作“HEVC工作草案10”或“HEVCWD10”的HEVC标准的工作草案描述于布洛斯(Bross)等人的“编者提出的对HEVC版本1的校正(Editors'proposedcorrectionstoHEVCversion1)”中,ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的视频译码联合合作小组(JCT-VC),2013年4月,韩国仁川第13次会议。另一HEVC草案规范可得自:http://phenix.int-evry.fr/jct/doc_end_user/documents/15_Geneva/wg11/JCTVC-O1003-v2.zip。本发明中描述的技术也可根据当前正开发的HEVC标准的扩展来操作。替代地或另外,视频编码器20和视频解码器30可根据其它专有或业界标准来操作,所述标准例如是ITU-TH.264标准(或者被称作MPEG-4第10部分,高级视频译码(AVC)),或此类标准的扩展。但是,本发明的技术不限于任何特定译码标准。视频压缩标准的其它实例包含ITU-TH.261、ISO/IECMPEG-1Visual、ITU-TH.262或ISO/IECMPEG-2Visual、ITU-TH.263、ISO/IECMPEG-4Visual和ITU-TH.264(也称为ISO/IECMPEG-4AVC),包含其可缩放视频译码(SVC)和多视图视频译码(MVC)扩展。HEVC的设计最近由ITU-T视频译码专家组(VCEG)与ISO/IEC动画专家组(MPEG)的JCT-VC定案。对HEVC的范围扩展(被称为HEVCRext)也正由JCT-VC开发。范围扩展的最新工作草案(WD)(在下文中被称作“RExtWD7”)可从http://phenix.int-evry.fr/jct/doc_end_user/documents/17_Valencia/wg11/JCTVC-Q1005-v4.zip获得。本发明一般将最近定案的HEVC规范文本称为HEVC版本1或基础HEVC。范围扩展规范可变成HEVC的版本2。关于许多译码工具(例如,运动向量预测),HEVC版本1及范围扩展规范在技术上类似。因此,不论何时本发明描述相对于HEVC版本1的变化,相同变化还可适用于范围扩展规范,其一般包括基础HEVC规范,加上一些额外译码工具。此外,可一般假设HEVC版本1模块也可并入到实施HEVC范围扩展的解码器中。用于屏幕内容材料(例如,具有运动的文字及图形)的新译码工具当前正在开发中且正被预期包含于未来视频译码标准中,包含HEVC的未来版本。这些新的译码工具潜在地改善屏幕内容的译码效率。因为有证据表明,可通过使用新颖的专用译码工具开发屏幕内容的特性来获得译码效率的显著改善,已以可能开发包括包含用于SCC的特定工具的HEVC标准的未来扩展为目标发布建议书提案(CallforProposals;CfP)。邀请公司和组织来响应于此需要而提交建议。此CfP的使用情况和要求描述于MPEG文档N14174中。在第17次JCT-VC会议期间,建立SCC测试模型(SCM)。SCC的最近工作草案(WD)可从http://phenix.int-evry.fr/jct/doc_end_user/documents/18_Sapporo/wg11/JCTVC-R1005-v3.zip获得。一般预期,源装置12的视频编码器20可经配置以根据这些当前或未来标准中的任一者对视频数据进行编码。类似地,也一般预期,目的地装置14的视频解码器30可经配置以根据这些当前或未来标准中的任一者对视频数据进行解码。尽管图1中未示,但在一些方面中,视频编码器20和视频解码器30可各自与音频编码器及解码器集成,且可包含适当的多路复用器-多路分用器(MUX-DEMUX)单元或其它硬件及软件,以处置对共用数据流或单独数据流中的音频及视频两者的编码。在一些实例中,如果适用,那么多路复用器-多路分用器单元可以符合ITUH.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。视频编码器20和视频解码器30各自可实施为多种合适的编码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当所述技术部分在软件中实施时,装置可将用于所述软件的指令存储在合适的非暂时性计算机可读媒体中,并使用一或多个处理器在硬件中执行所述指令以执行本发明的技术。视频编码器20和视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可作为组合式编码器/解码器(CODEC)的部分集成在相应装置中。如上文所介绍,JCT-VC最近已定案HEVC标准的开发。HEVC标准化努力是基于被称作HEVC测试模型(HM)的视频译码装置的演进模型。HM假设视频译码装置根据例如ITU-TH.264/AVC相对于现有装置的若干额外容量。举例来说,虽然H.264提供了九个帧内预测编码模式,但是HM可提供多达三十五个帧内预测编码模式。在HEVC及其它视频译码规范中,视频序列通常包含一系列图片。图片也可被称作“帧”。图片可以包含三个样本阵列,表示为SL、SCb以及SCr。SL是明度样本的二维阵列(即,块)。SCb是Cb色度样本的二维阵列。SCr是Cr色度样本的二维阵列。色度样本在本文中还可以被称为“色度(chroma)”样本。在其它情况下,图片可为单色的且可仅包含亮度样本阵列。为了产生图片的经编码的表示,视频编码器20可以产生一组译码树单元(CTU)。CTU中的每一者可包括亮度样本的译码树块(CTB)、色度样本的两个对应的译码树块,以及用以对译码树块的样本进行译码的语法结构。在单色图片或具有三个单独颜色平面的图片中,CTU可包括单个译码树块和用以对所述译码树块的样本进行译码的语法结构。译码树块可为样本的N×N块。CTU也可以被称为“树块”或“最大译码单元(LCU)”。HEVC的CTU可以广泛地类似于例如H.264/AVC等其它标准的宏块。然而,CTU未必限于特定大小,并且可以包含一或多个译码单元(CU)。切片可包含按光栅扫描次序连续排序的整数数目个CTU。为了产生经译码的CTU,视频编码器20可以对CTU的译码树块(CTB)递归地执行四叉树分割,以将译码树块划分为译码块,因此命名为“译码树单元”。译码块可以是样本的N×N块。CU可包括具有亮度样本阵列、Cb样本阵列和Cr样本阵列的图片的亮度样本的译码块和色度样本的两个对应译码块,以及用以对译码块的样本进行译码的语法结构。在单色图片或具有三个单独颜色平面的图片中,CU可包括单个译码块和用以对译码块的样本进行译码的语法结构。视频编码器20可将CU的译码块分割为一或多个预测块。预测块是应用相同预测的样本的矩形(即,正方形或非正方形)块。CU的预测单元(PU)可包括明度样本的预测块、色度样本的两个对应预测块和用以预测预测块的语法结构。在单色图片或具有三个单独颜色平面的图片中,PU可包括单个预测块和用以预测预测块的语法结构。视频编码器20可以产生用于CU的每个PU的亮度预测块、Cb预测块以及Cr预测块的预测性亮度、Cb及Cr块。视频编码器20可使用帧内预测或帧间预测来产生PU的预测性块。如果视频编码器20使用帧内预测产生PU的预测性块,则视频编码器20可以基于与PU相关联的图片的经解码样本来产生PU的预测性块。如果视频编码器20使用帧间预测产生PU的预测性块,则视频编码器20可基于除与PU相关的图片以外的一或多个图片的经解码样本产生PU的预测性块。在视频编码器20产生CU的一或多个PU的预测性亮度、Cb及Cr块之后,视频编码器20可产生CU的亮度残余块。CU的亮度残余块中的每个样本指示CU的预测性亮度块中的一者中的亮度样本与CU的原始亮度译码块中的对应样本之间的差异。另外,视频编码器20可以产生CU的Cb残余块。CU的Cb残余块中的每一样本可以指示CU的预测性Cb块中的一者中的Cb样本与CU的原始Cb译码块中的对应样本之间的差异。视频编码器20还可产生CU的Cr残余块。CU的Cr残余块中的每个样本可以指示CU的预测性Cr块中的一者中的Cr样本与CU的原始Cr译码块中的对应样本之间的差异。此外,视频编码器20可使用四叉树分割将CU的亮度、Cb及Cr残余块分解成一或多个亮度、Cb及Cr变换块。变换块是对其应用相同变换的样本的矩形(例如,正方形或非正方形)块。CU的变换单元(TU)可包括亮度样本的变换块、色度样本的两个对应变换块以及用以对变换块样本进行变换的语法结构。因此,CU的每个TU可以与亮度变换块、Cb变换块以及Cr变换块相关联。与TU相关联的明度变换块可为CU的亮度残余块的子块。Cb变换块可为CU的Cb残余块的子块。Cr变换块可以是CU的Cr残余块的子块。在单色图片或具有三个单独颜色平面的图片中,TU可包括单个变换块和用以对变换块的样本进行变换的语法结构。视频编码器20可将一或多个变换应用到TU的亮度变换块以产生TU的亮度系数块。系数块可为变换系数的二维阵列。变换系数可为标量。视频编码器20可将一或多个变换应用到TU的Cb变换块以产生TU的Cb系数块。视频编码器20可将一或多个变换应用到TU的Cr变换块以产生TU的Cr系数块。在产生系数块(例如,明度系数块、Cb系数块或Cr系数块)之后,视频编码器20可以量化系数块。量化一般是指对变换系数进行量化以可能减少用以表示变换系数的数据的量从而提供进一步压缩的程序。在视频编码器20量化系数块之后,视频编码器20可以对指示经量化变换系数的语法元素进行熵编码。举例来说,视频编码器20可对指示经量化变换系数的语法元素执行上下文自适应二进制算术译码(CABAC)。视频编码器20可输出包含形成经译码图片及相关联数据的表示的位序列的位流。位流可包括一连串NAL单元。NAL单元为含有NAL单元中的数据类型的指示和含有所述数据的字节的语法结构,所述字节呈RBSP形式,并且视需要与模拟防止位穿插。NAL单元中的每一者包含NAL单元标头且囊封RBSP。NAL单元标头可包含指示NAL单元类型代码的语法元素。由NAL单元的NAL单元标头指定的NAL单元类型代码指示NAL单元的类型。RBSP可为含有包封在NAL单元内的整数数目个字节的语法结构。在一些情况下,RBSP包含零位。不同类型的NAL单元可囊封不同类型的RBSP。举例来说,第一类型的NAL单元可囊封PPS的RBSP,第二类型的NAL单元可囊封经译码切片的RBSP,第三类型的NAL单元可囊封SEI消息的RBSP等等。囊封视频译码数据的RBSP(与参数集及SEI消息的RBSP相反)的NAL单元可被称作VCLNAL单元。视频解码器30可以接收由视频编码器20产生的位流。另外,视频解码器30可以剖析位流以获得来自位流的语法元素。视频解码器30可至少部分地基于从位流获得的语法元素重构建视频数据的图片。用以重构建视频数据的程序一般可与由视频编码器20执行的程序互逆。另外,视频解码器30可反量化与当前CU的TU相关联的系数块。视频解码器30可以对系数块执行反变换以重构建与当前CU的TU相关联的变换块。通过将用于当前CU的PU的预测性块的样本添加到当前CU的TU的变换块的对应样本上,视频解码器30可以重构建当前CU的译码块。通过重构建用于图片的每一CU的译码块,视频解码器30可重构建图片。还可被称作色度格式的视频取样格式可相对于CU中所包含的明度样本的数目定义CU中包含的色度样本的数目。取决于色度分量的视频取样格式,U分量及V分量的大小(依据样本的数目)可与Y分量的大小相同或不同。在HEVC标准中,定义被称作chroma_format_idc的值以指示色度分量相对于明度分量的不同取样格式。在HEVC中,在SPS中用信号表示chroma_format_idc。表1说明chroma_format_idc的值与相关联的色度格式之间的关系。chroma_format_idc色度格式SubWidthCSubHeightC0单色--14:2:02224:2:22134:4:411表1:HEVC中定义的不同色度格式在表1中,变量SubWidthC及SubHeightC可用以指示用于明度分量的样本的数目与用于每一色度分量的样本的数目之间的水平及垂直取样速率比。在表1中所描述的色度格式中,两个色度分量具有相同的取样速率。因此,在4:2:0取样中,两个色度阵列中的每一者具有明度阵列的高度的一半和宽度的一半,而在4:2:2取样中,两个色度阵列中的每一者具有所述明度阵列的相同高度和宽度的一半。在4:4:4取样中,两个色度阵列中的每一者可具有与明度阵列相同的高度和宽度,或在一些情况下,三个颜色平面可全部单独处理为单色经取样图片。在表1的实例中,对于4:2:0格式,用于亮度分量的取样速率为用于水平及垂直方向的色度分量的取样速率的两倍。因此,对于根据4:2:0格式而格式化的译码单元,用于亮度分量的样本阵列的宽度及高度为用于色度分量的每一样本阵列的宽度及高度的两倍。类似地,对于根据4:2:2格式而格式化的译码单元,用于明度分量的样本阵列的宽度为用于每一色度分量的样本阵列的宽度的两倍,但用于明度分量的样本阵列的高度等于用于每一色度分量的样本阵列的高度。对于根据4:4:4格式而格式化的译码单元,用于明度分量的样本阵列具有与用于每一色度分量的样本阵列相同的宽度及高度。应注意,除YUV颜色空间之外,还可根据RGB空间颜色定义视频数据。以这种方式,本文中所描述的色度格式可以适用于YUV或RGB颜色空间。通常对RGB色度格式进行取样以使得红色样本的数目、绿色样本的数目及蓝色样本的数目相等。因此,如本文所使用的术语“4:4:4色度格式”可指YUV颜色空间或RGB颜色空间,其中对于所有颜色分量,样本的数目相等。图2A到2C是说明用于视频数据的不同样本格式的概念图。图2A是说明4:2:0样本格式的概念图。如图2A中所说明,对于4:2:0样本格式,色度分量为明度分量的大小的四分之一。因此,对于根据4:2:0样本格式而格式化的CU,对于色度分量的每个样本来说存在4个明度样本。图2B是说明4:2:2样本格式的概念图。如图2B中所说明,对于4:2:2样本格式,色度分量的大小为明度分量的大小的二分之一。因此,对于根据4:2:2样本格式而格式化的CU,对于色度分量的每个样本来说存在两个亮度样本。图2C是说明4:4:4样本格式的概念图。如图2C中所说明,对于4:4:4样本格式,色度分量与明度分量大小相同。因此,对于根据4:4:4样本格式而格式化的CU,对于色度分量的每个样本存在一个明度样本。图3是说明根据4:2:0样本格式而格式化的16×16译码单元的实例的概念图。图3说明色度样本在CU内相对于明度样本的相对位置。如上文所描述,通常根据水平和垂直亮度样本的数目来定义CU。因此,如图3中所说明,根据4:2:0样本格式而格式化的16×16CU包含明度分量的16×16样本及每一色度分量的8×8样本。另外,如上文所描述,CU可以分割成较小CU。举例来说,图3中所说明的CU可分割成4个8×8CU,其中每一8×8CU包含用于明度分量的8×8样本及用于每一色度分量的4×4样本。图4是说明根据4:2:2样本格式而格式化的16×16译码单元的实例的概念图。图4说明色度样本在CU内相对于明度样本的相对位置。如上文所描述,通常根据水平和垂直亮度样本的数目来定义CU。因此,如图4中所说明,根据4:2:2样本格式而格式化的16×16CU包含明度分量的16×16样本及用于每一色度分量的8×16样本。另外,如上文所描述,CU可以分割成较小CU。举例来说,图4中所说明的CU可分割成4个8×8CU,其中每一CU包含用于明度分量的8×8样本及用于每一色度分量的4×8样本。图5示出IBC模式的概念性说明。视频编码器20和视频解码器30可(例如)经配置以使用IBC模式编码及解码视频数据块。例如远程桌上型、远程游戏、无线显示器、汽车信息娱乐、云计算等许多应用程序正变成人的每日生活中的日常,且可通过使用IBC模式来改善当译码此类内容时的译码效率。图1的系统10可表示经配置以执行这些应用程序中的任一者的裝置。这些应用程序中的视频内容通常是自然内容、文本、人造图形等的组合。在视频帧的文本和人造图形区中,常常存在重复图案(例如字符、图标、符号等)。如上文所介绍,IBC是如JCT-VCM0350中所报告的实现去除这类冗余且潜在地改善帧内译码效率的专用技术。如图5中所说明,对于使用IBC的CU,从相同帧(例如,图片)中的已经重构建区域获得预测信号。最后,对指示从当前CU移位的预测信号的位置的偏移或块向量以及残余信号进行编码。举例来说,图5说明根据本发明的技术用于预测当前图片103内的当前视频数据块102的实例技术。图5说明当前图片103内的预测性视频块104。根据本发明的技术,视频译码器(例如,视频编码器20和/或视频解码器30)可根据IBC模式使用预测性视频块104来预测当前视频块102。视频编码器20从先前经重构建的视频数据块的集合选择用于预测当前视频块102的预测性视频块104。视频编码器20通过对还包含在经编码视频位流中的视频数据进行反量化和反变换且将所得残余块与用以预测经重构建的视频数据块的预测性块求和而重构建视频数据块。在图5的实例中,图片103内的既定区108也可被称作“既定区域”或“光栅区域”,包含先前经重构建视频块的集合。视频编码器20可以多种方式定义图片103内的既定区108,如下文更详细描述。根据基于既定区108内的各种视频块而预测和译码当前视频块102的相对效率和准确性的分析,视频编码器20可从既定区108中的视频块当中选择预测性视频块104以预测当前视频块102。既定区108在本发明中也可被称为IBC预测区。本发明描述可修改将何区块包含于既定区108中的各种技术。因此,当实施本发明的技术时,既定区108的大小及形状可不同于图5的实例中所示的大小及形状。视频编码器20确定表示预测性视频块104相对于当前视频块102的位置或位移的二维向量106。为偏移向量的实例的二维向量106包含水平位移分量112和垂直位移分量110,所述水平位移分量及垂直位移分量分别表示预测性视频块104相对于当前视频块102的水平和垂直位移。视频编码器20可将识别或定义二维向量106(例如,定义水平位移分量112及垂直位移分量110)的一或多个语法元素包含在经编码视频位流中。视频解码器30可解码所述一或多个语法元素以确定二维运动向量106,且使用所确定的向量来识别用于当前视频块102的预测性视频块104。在一些实例中,二维运动向量106的分辨率可为整数像素,例如,约束为具有整数像素分辨率。在这些实例中,水平位移分量112和垂直位移分量110的分辨率将为整数像素。在这些实例中,视频编码器20和视频解码器30不需要内插预测性视频块104的像素值以确定用于当前视频块102的预测子。在其它实例中,水平位移分量112和垂直位移分量110中的一者或两者的分辨率可为子像素。举例来说,分量112和110中的一者可具有整数像素分辨率,而另一者具有子像素分辨率。在一些实例中,水平位移分量112和垂直位移分量110两者的分辨率可为子像素,但水平位移分量112和垂直位移分量110可具有不同分辨率。在一些实例中,视频译码器(例如,视频编码器20和/或视频解码器30)基于特定层级适配水平位移分量112和垂直位移分量110的分辨率,例如块层级、切片层级或图片层级适配。举例来说,视频编码器20可例如在切片标头中在切片层级下用信号表示指示水平位移分量112和垂直位移分量110的分辨率是整数像素分辨率还是不是整数像素分辨率的旗标。如果所述旗标指示水平位移分量112和垂直位移分量110的分辨率不是整数像素分辨率,那么视频解码器30可推断分辨率是子像素分辨率。在一些实例中,可针对视频数据的每一切片或其它单元发射不一定是旗标的一或多个语法元素,以指示水平位移分量112和/或垂直位移分量110的共同或个别分辨率。在又其它实例中,代替旗标或语法元素,视频编码器20可基于分辨率上下文信息而设置水平位移分量112和/或垂直位移分量110的分辨率,且视频解码器30可从分辨率上下文信息推断水平位移分量112和/或垂直位移分量110的分辨率。分辨率上下文信息可包含(例如)用于图片或包含当前视频块102的图片的序列的颜色空间(例如YUV、RGB等)、特定颜色格式(例如4:4:4、4:2:2、4:2:0等)、帧大小、帧速率或量化参数(QP)。在至少一些实例中,视频译码器可基于与经先前译码帧或图片相关的信息来确定水平位移分量112和/或垂直位移分量110的分辨率。以这种方式,水平位移分量112的分辨率和垂直位移分量110的分辨率可经预定义、用信号表示、可从其它辅助信息(例如,分辨率上下文信息)推断,或可基于已经译码的帧。当前视频块102可为CU,或CU的PU。在一些实例中,视频译码器(例如,视频编码器20和/或视频解码器30)可将根据IBC预测的CU分裂成大量PU。在这些实例中,视频译码器可确定用于CU的PU中的每一者的相应(例如,不同)二维向量106。举例来说,视频译码器可将2N×2NCU分裂为两个2N×NPU、两个N×2NPU,或四个N×NPU。作为其它实例,视频译码器可将2N×2NCU分裂为((N/2)×N+(3N/2)×N)PU、((3N/2)×N+(N/2)×N)PU、(N×(N/2)+N×(3N/2))PU、(N×(3N/2)+N×(N/2))PU、四个(N/2)×2NPU或四个2N×(N/2)PU。在一些实例中,视频译码器可使用2N×2NPU预测2N×2NCU。当前视频块102包含明度视频块(例如,明度分量)及对应于所述明度视频块的色度视频块(例如,色度分量)。在一些实例中,视频编码器20可仅将定义明度视频块的二维向量106的一或多个语法元素编码到经编码视频位流中。在这些实例中,视频解码器30可基于针对明度块用信号表示的二维向量导出对应于所述明度块的一或多个色度块中的每一者的二维向量106。在本发明中描述的技术中,在为一或多个色度块导出二维向量时,如果亮度块的二维向量指向色度样本内的子像素位置,那么视频解码器30可修改所述亮度块的二维向量。取决于颜色格式,例如,颜色取样格式或色度取样格式,视频译码器可相对于明度视频块下取样对应色度视频块。颜色格式4:4:4不包含下取样,意味着色度块在水平和垂直方向中包含与明度块相同数目的样本。颜色格式4:2:2在水平方向上下取样,意味着在色度块中在水平方向上相对于明度块存在二分之一多的样本。颜色格式4:2:0在水平和垂直方向上下取样,意味着在色度块中在水平和垂直方向中相对于明度块存在二分之一多的样本。在其中视频译码器基于对应明度块的向量106确定色度视频块的向量106的实例中,视频译码器可需要修改明度向量。举例来说,如果明度向量106具有整数分辨率,其中水平位移分量112和/或垂直位移分量110为奇数数目的像素,且颜色格式是4:2:2或4:2:0,那么经转换的明度向量可不指向对应彩度块中的整数像素位置。在这些实例中,视频译码器可按比例缩放明度向量以用作色度向量以预测对应色度块。如所描述,图5示出正在IBC模式中译码的当前CU。可从搜索区获得当前CU的预测性块。所述搜索区包含与当前CU来自相同帧的已经译码块。假设(例如)帧按光栅扫描次序进行译码(即,从左到右且从上到下),帧的已经译码块对应于位于当前CU左侧及上方的块,如图5中所示。在一些实例中,搜索区可包含所述帧中的所有已经译码的块,而在其它实例中,搜索区可包含少于所有的已经译码的块。图5中的偏移向量(有时被称作运动向量或预测向量)识别当前CU的左上方像素与预测性块(图5中的经标记预测信号)的左上方像素之间的差。因此,通过在经编码视频位流中用信号表示偏移向量,视频解码器可在当前CU在IBC模式中进行译码时识别当前CU之预测性块。IBC已包含于SCC的各种实施方案中,包含HEVC的SCC扩展。上文关于图5描述IBC的实例,其中从当前图片/切片的已经解码块预测当前CU/PU。在IBC中,预测性块(例如,图5中的预测性视频块104)可以是尚未经环路滤波(例如,尚未经解块滤波或SAO滤波)的经重构建块。对于以IBC译码的亮度分量或色度分量,通过整数块补偿完成块补偿,因此不需要内插。因此,在整数层级精确度下预测并用信号表示块向量。在SCC的当前实施方案中,块向量预测子在每一CTB开始处经设置成(-w,0),其中w对应于CU的宽度。如果以IBC模式来译码,那么将此块向量预测子更新为最新译码的CU/PU中的一者。如果CU/PU不是以IBC译码的,那么块向量预测子保持不变。在块向量预测之后,使用如HEVC中的MV差(MVD)译码方法来编码块向量差。IBC的当前实施方案在CU层级及PU层级两者下实现IBC译码。对于PU层级IBC,针对全部CU大小支持2N×N和N×2NPU分割区。另外,当CU是最小CU时,支持N×NPU分割区。如上文所介绍,HEVC含有使编解码器更加并行友好的数种提议,包含单元片和波前并行处理(WPP)。HEVC将单元片定义为在单元片的译码树块光栅扫描中连续排序的以一个列及一个行同时出现的整数数目个译码树块。将每一图片划分为单元片是分割。图6示出在使用单元片时对图片的光栅扫描。图片中的单元片在图片的单元片光栅扫描中连续排序,如图6中所示。可针对整个序列定义或在图片间改变单元片的数目及单元片的边界的位置。类似于切片边界的单元片边界破坏了剖析和预测的相依性,使得可独立地处理单元片。然而,环路内滤波器(解块和SAO)仍可穿过单元片边界。HEVC还指定对切片与单元片之间的关系的一些约束。在图6的实例中,线114A及114B表示垂直单元片边界,且线114C及114D表示水平单元片边界。每一单元片内的数字表示针对单元片内的CTB的光栅扫描次序。举例来说,对于左上方大部分单元片,首先解码标记为0的块,接着是标记为1的块,然后是标记为2的块,等等。使用单元片的潜在优点在于,单元片并不始终需要视频解码器(例如,用于熵解码的视频解码器30)的处理器之间的通信和运动补偿重构建。然而,如果语法元素loop_filter_across_tiles_enabled_flag设置为1,那么需要这种通信。与切片相比,单元片潜在地具有更好的译码效率,因为单元片允许图片分割形状,其含有相关性可能比切片高的样本,并且还因为单元片潜在地减少切片标头附加项(overhead)。HEVC的单元片设计可提供数种益处。作为一个实例,单元片可通过视频解码器30实现并行处理。作为另一实例,与使用切片相比,单元片可通过允许CTU的改变的解码次序来改善译码效率,而主要益处为第一个实例。当在单层译码中使用单元片时,语法元素min_spatial_segmentation_idc可由解码器使用以计算待由一个处理线程处理的明度样本的最大数目,从而假设解码器最大限度地利用并行解码信息。在HEVC中,不同线程之间可存在相同的图片帧间相依性,例如,归因于熵译码同步或跨越单元片或切片边界的解块滤波。HEVC包含鼓励编码器将min_spatial_segmentation_idc的值设置为最高可能值的注解。如上文所介绍,HEVC也支援WPP。当启用WPP时,图片的每一CTU行为分离的分割区。然而,与切片及单元相比较,在WPP的情况下,无译码相依性在CTU行边界处被破坏。另外,从先前行的第二CTU传播CABAC概率,以进一步减少译码损失。并且,WPP并不改变常规光栅扫描次序。因为相依性未被破坏,所以与非并行位流相比较,WPP位流的速率-失真损失可能较小。当启用WPP时,高达CTU行的数目的大量处理器可并行地工作以处理CTU行(或线)。然而,波前相依性并不允许所有CTU行在图片的开始处开始解码。因此,CTU行也无法在图片的结束处同时完成解码。此情形引出并行度效率低下,其在使用较多数目个处理器时变得更显而易见。图7示出WPP并行地处理各行CTB的实例,每一行以在处理上方行的第二CTB之后可用的CABAC概率开始。可并行地解码行116A至116G中的每一者,但由于每一行潜在地取决于上方行的信息,所以所有行的解码可不能够同时开始。举例来说,视频解码器30直到已经解码行116C的特定数目的块才能开始解码行116D。类似地,视频解码器30直到已经解码行116D的特定数目的块才能开始解码行116E。如将在下文更详细地阐释,视频解码器30在解码行之前、在开始解码上方行之后等待的时间量可被称为延迟。在图7的实例中,灰色块表示已经解码块,而白色块表示尚未解码的块。正如在图7中所见,行通常比正好在下方的行具有更多已经解码的块。结合并行处理技术(例如单元片和WPP)在IBC模式中译码视频数据可造成潜在的困难。IBC模式使用同一图片内的先前经解码的未经滤波的样本以供预测。在当前测试模型中,对于IBC模式,搜索范围是不受限制的且可使用当前图片的任何未经滤波的经解码样本(全搜索IBC)。在实时应用中,典型的是按非光栅次序进行处理(例如,WPP),以实现同时处理多个CTU。HEVC定义启用WPP或entropy_coding_sync_enabled_flag时的熵解码次序。当启用非光栅扫描时,利用WPP及单元片的SCC的某些实施方案潜在地具有一些问题。作为第一实例,始终基于光栅次序依序处理来考虑预测样本的可用性。这潜在地显著影响系统的并行处理能力。作为第二实例,在近期JCT-VC会议中已经有一些提议来将类似线中的IBC预测区限制到启用WPP时的熵剖析。然而,这潜在地对译码效率有显著影响,是因为有限的搜索范围可用于IBC模式。为了允许如同并行处理方案的WPP并减少译码效率损失,本发明描述用以添加对IBC搜寻范围和/或对IBC块向量的一些弹性限制的技术。可单独或联合应用以下技术中的每一者。本发明中描述的技术详述了预测区域用于IBC预测的可用性。另外,此区域可取决于是否启用WPP。根据第一技术,可考虑重构建样本的固定处理次序(例如,启用WPP时的熵剖析次序或以下处理次序中的任一者)。已经解码/重构建的样本可仅用于预测。根据第二技术,可考虑重构建样本的固定处理次序(例如,启用WPP时的熵剖析次序或以下处理次序中的任一者)。已经解码/重构建的样本可仅用于预测。此外,认为在当前CTB下方的任何区域不可用于IBC预测。根据第三技术,可考虑重构建样本的固定处理次序(例如,启用WPP时的熵剖析次序或以下处理次序中的任一者),且基于SPS标头中所指定的最大TU大小,认为在当前CTB下方的任何区域不可用于IBC预测,且认为部分区域不可用于上方的当前CTB。根据第四技术,可考虑重构建样本的固定处理次序(例如,启用WPP时的熵剖析次序或以下处理次序中的任一者),且基于SPS标头中所指定的最大TU大小,认为部分区域不可用于上方的当前CTB。根据第五技术,重构建样本的弹性处理次序可被视为对于IBC预测有效,且在位流中用信号表示所述区域。根据第六技术,重构建样本的弹性处理次序可被视为对于IBC预测有效,且在位流中用信号表示所述区域,且认为在当前CTB下方的任何区域不可用于IBC预测。现在将更详细地说明上文介绍的各种技术的实例。图8到12示出经配置以使用WPP解码的块的实例。图8到12中所示的区域中的每一者对应于CTB。在图8到12的实例中,以X标记的CTB表示正被解码的当前块。对于IBC预测,以1标记的块可用于IBC,而以0标记的块可不用于IBC。图8示出现将描述关于IBC处理次序的第一实例,所述IBC处理次序相对于上方的CTB行具有1CTB延迟。将如图8中所示的以下限制施加到IBC块向量上,以使得未从以0标记的区域预测到IBC块。在图8中,以“1”标记的区域是已经重构建的有效预测区域。这些限制将允许与当前块x并行地处理任何“0”标记区域。8.4.4在帧内块复制预测模式中用于块向量分量的导出程序-位流一致性的要求是:(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY-xCurr/CtbSizeY<=yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY及yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0根据本发明的一个技术,针对在启用波前并行处理的情况下译码的一或多个块,视频解码器30可确定CTB延迟,所述CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟。针对在IBC模式中译码并在禁用波前并行处理的情况下译码的当前视频数据块,视频解码器30可基于针对在启用WPP的情况下译码的一或多个块所确定的CTB延迟来确定用于包含当前块的图片内的当前块的IBC预测区域。换句话说,视频解码器30可基于CTB延迟而不考虑entropy_coding_sync_enabled_flag的值如何(这意味着不管是启用还是禁用WPP)来确定用于当前块的IBC预测区域。通过始终基于CTB延迟确定IBC预测区域,减少整体解码复杂度,但减少的方式是仍使视频解码器30能够在启用WPP的情况下支持IBC模式。在一些替代实施方案,当entropy_coding_sync_enabled_flag等于1时,以上限制可仅施加在IBC块向量上,以使得从非解码区域未预测到IBC块。8.4.4在帧内块复制预测模式中用于块向量分量的导出程序-位流一致性要求是,当entropy_coding_sync_enabled_flag等于1时,yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0且当entropy_coding_sync_enabled_flag等于1时,(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY-xCurr/CtbSizeY<=yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY现将描述关于IBC处理次序的第二实例,所述IBC处理次序相对于上方的CTB行具有2CTB延迟。将如图9中所示的以下限制施加到IBC块向量上,以使得未从“0”区域预测到IBC块。在图9中,以1标记的区域是已经重构建的有效预测区域。这些限制将允许与当前块x并行地处理任何“0”标记区域。此处,每一区域对应于CTB。8.4.4在帧内块复制预测模式中用于块向量分量的导出程序-位流一致性的要求是:(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY-xCurr/CtbSizeY<=2*(yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY)及yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0替代地,仅在entropy_coding_sync_enabled_flag等于1时将以上限制条件施加于IBC块向量,以使得未从非解码区域预测到IBC块。8.4.4在帧内块复制预测模式中用于块向量分量的导出程序-位流一致性要求是,当entropy_coding_sync_enabled_flag等于1时,yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0且当entropy_coding_sync_enabled_flag等于1时,(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY-xCurr/CtbSizeY<=2*(yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY)现将描述关于具有单元片形状的区域的IBC处理次序的第三实例。将如图10中所示的以下限制施加到IBC块向量上,以使得未从“0”区域预测到IBC块。在图10中,以1'标记的区域是已经重构建的有效预测区域。这些限制将允许与当前块x并行地处理任何“0”标记的区域。此处,每一区域对应于CTB。在一个实例中,仅在如下entropy_coding_sync_enabled_flag等于1时施加以上限制。8.4.4在帧内块复制预测模式中用于块向量分量的导出程序-----位流一致性的要求是:xCurr/CtbSizeY-(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY>=0yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0替代地,仅在entropy_coding_sync_enabled_flag等于1时将以上限制条件施加于IBC块向量,以使得未从非解码区域预测到IBC块。-位流一致性要求是,当entropy_coding_sync_enabled_flag等于1时,xCurr/CtbSizeY-(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY>=0yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0现将描述关于IBC处理次序的第四实例,所述IBC处理次序关于上方的CTB行具有小于1CTB延迟。在此实例中,提出限制IBC的预测样本,所述IBC类似于上文所论述的“关于上方的CTB行具有小于1CTB延迟的IBC处理次序”,但相反具有最大TU块的延迟,其小于1CTB延迟。使最大TU大小maxTUSizeY导出为maxTUSizeY=1<<MaxTbLog2SizeY。(在SPS中用信号表示)。8.4.4在帧内块复制预测模式中用于块向量分量的导出程序-位流一致性的要求是:(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/maxTUSizeY-xCurr/maxTUSizeY<=yCurr/maxTUSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/maxTUSizeY及yCurr/maxTUSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/maxTUSizeY>=0替代地,仅在entropy_coding_sync_enabled_flag等于1时将以上限制条件施加于IBC块向量,以使得未从非解码区域预测到IBC块。8.4.4在帧内块复制预测模式中用于块向量分量的导出程序-位流一致性要求是,当entropy_coding_sync_enabled_flag等于1时,yCurr/maxTUSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/maxTUSizeY>=0且当entropy_coding_sync_enabled_flag等于1时,(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/maxTUSizeY-xCurr/maxTUSizeY<=yCurr/maxTUSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/maxTUSizeY波前并行处理使得能够并行处理图片中的每一CTB行。举例来说,在1080p图片中,如果系统具有17个并行处理核心,那么可并行处理多达17个CTB行。然而,在大部分多核心系统中,典型的是仅使用有限数目个(例如,4个)并行处理核心。在此情境下,仅并行处理4个CTB行,并在完成上方的4个CTB行中的一个之后处理第5个CTB行。在此类情景下,第5个CTB行有可能从已根据先前4个CTB行解码的区域中进行预测。在此实例中,提出针对每一CTB行,针对有效解码区域(CTB)的所有先前经解码CTB行,用信号表示所述有效解码区域。在另一个实施例中,提出针对每一CTB行,针对有效解码区域(CTB)的所有CTB行,用信号表示所述有效解码区域。在SPS、VPS、PPS、切片标头或其相应扩展中用信号表示此信息。替代地,可在SEI消息中用信号表示此信息。在一个实例中,基于当entropy_coding_sync_enabled_flag等于1时条件性地用信号表示以下信息。替代地,用信号表示以下信息,与是否启用entropy_coding_sync_enabled_flag无关。在另一个实例中,在IBC工具上条件性地用信号表示以下信息,所述IBC工具启用可在至少一个参数集合(PPS、SPS、VPS)或其扩展中用信号表示的旗标。在第一实例中,针对每一CTB行,用信号表示针对其所有上方的CTB行用于IBC预测的可用性区域。参见例如图11。在当前CTB下方的区域被视为不可用于IBC预测。以下为所提出方法在切片标头处的实例实施。pps_ibc_ref_avail_restriction_present_flag等于1指定,存在帧内块复制参考使用限制,并在切片段标头中针对切片的所有经译码树块中用信号表示。pps_ibc_ref_avail_restriction_present_flag等于0指定,在切片段标头中不存在帧内块复制参考使用信息。当不存在pps_ibc_ref_avail_restriction_present_flag时,推断其为0。num_ctbY_in_slice_minus1加1指定切片中的CTB行的数目。max_delay_IBCPred_in_CTBs[i][j]为当前CTB行i指定针对可用于IBC预测的每一先前CTB行j的关于CTB的最大延迟。当不存在时,推断其等于行中的CTB的数目。在另一实例实施方案中,针对每一CTB行,用信号表示针对所有CTB行用于IBC预测的可用性区域。参见例如图12。以下为所提出方法在切片标头处的实例实施。pps_ibc_ref_avail_restriction_present_flag等于1指定,存在帧内块复制参考使用限制,并在切片段标头中针对切片的所有经译码树块中用信号表示。pps_ibc_ref_avail_restriction_present_flag等于0指定帧内块复制参考使用消息不存在于切片段标头中。当pps_ibc_ref_avail_restriction_present_flag不存在时,推断其为0。num_ctbY_in_slice_minus1加1指定切片中的CTB行的数目。max_delay_IBCPred_in_CTBs[i][j]为当前CTB行i指定针对可用于IBC预测的每一先前CTB行j的关于CTB的最大延迟。当不存在时,推断其等于行中的CTB的数目。替代地,其可在SPSVUI或SEI消息下用信号表示,并与JCTVC-S0145和2014年10月7日提交的美国临时专利申请62/061,063中所提出的方面组合。本发明的另一实例技术涉及用信号表示IBC模式以供合并。本发明提出针对合并模式用信号表示IBC模式的使用的技术。所提出的方法主要与屏幕内容译码有关,包含支持可能较高的位深度(超过8个位)、不同的色度采样格式,诸如4:4:4、4:2:2、4:2:0、4:0:0等等。在近期JCT-VC会议中,已提议在使用IBC模式时修改合并候选者列表。因为观测到IBC的预测特征不同于帧间,示出提供在以不同于帧间的方式修改合并候选者列表产生程序时的译码效率。图13示出实例信令技术,其中IBC合并程序与以帧间合并程序分离的方式用信号表示。在图13的实例中,视频解码器30接收用于PU的语法元素,所述语法元素指示PU的CU是否在帧间模式中译码(210)。如果CU的cu_skip_flag为真(212,是),那么CU在跳过模式中译码,且视频解码器30接收或推断CU的合并索引(214),并根据与所确定的合并索引相关联的运动信息译码CU。如果CU的cu_skip_flag为假(212,否),那么视频解码器30接收语法元素intra_bc_flag(216)及合并旗标(218)。如果合并旗标为真(220,是),那么视频解码器30接收合并索引(214),并根据与合并索引相关联的运动信息解码CU。如果合并旗标为假(220,否),那么视频解码器30接收另一intra_bc_flag(224)。如果intra_bc_flag为真(224,是),那么视频解码器30接收块向量信息(226)。基于接收到的的块向量信息,视频解码器30解码CU。如果intra_bc_flag为真(224,否),那么视频解码器30接收运动向量信息息(228)。基于运动向量信息,视频解码器30解码CU。图13中所描述的信令方案具有潜在问题。作为一个实例,将每一PU的intra_bc_flag用信号表示到单独的帧间及IBC模式对于IBC及帧间模式的统一来说并不高效。关于此问题的方面/解决方案涵盖于2014年10月7日提交的美国临时专利申请62/061,121、2015年10月6日提交的美国专利申请14/876,699及JCTVC-S0113中。已提议相对于帧间预测将BVD及BVP_idx的译码与MVD及MVP索引的译码对准。根据本发明的一个技术,提出在当前PU合并时仅用信号表示intra_bc_flag(也就是说,merge_flag为1),如图14中所示。此外,intra_bc_flag可在IBC工具上条件性地用信号表示,所述IBC工具启用可在至少一个参数集合(PPS、SPS、VPS)或其它中用信号表示的旗标。本发明提出基于仅针对合并PU用信号表示的intra_bc_flag而将IBC合并程序与帧间合并程序分离的技术。在此情况下,用于IBC模式和常规帧间预测的合并候选者列表可以是不同的。语法元素intra_bc_flag可未用信号表示并在以下情况中推导为1:(1)当前切片为I切片;(2)当前CU大小为8×8且其分割区大小为N×N。图14示出实例信令技术,其中与图13的单独信令相比,仅将IBC合并程序用信号表示一次。在图14的实例中,视频解码器30接收用于PU的语法元素,所述语法元素指示PU的CU是否在帧间模式中译码(230)。如果CU的cu_skip_flag为真(232,是),那么CU在跳过模式中译码,且视频解码器30接收intra_bc_flag(234)和CU的合并索引(214),并根据与所确定的合并索引相关联的运动信息译码CU。如果CU的cu_skip_flag为假(232,否),那么视频解码器30接收合并旗标(240)。如果合并旗标为真(240,是),那么视频解码器30接收intra_bc_flag(234)及合并旗标(236),并根据与合并索引相关联的运动信息解码CU。如果合并旗标为假(240,否),那么视频解码器30接收运动信息(242),其可能包含IBC块向量信息,并根据运动信息解码CU。图15是说明可实施本发明中描述的技术的实例视频编码器20的框图。视频编码器20可经配置以将视频输出到后处理实体27。后处理实体27既定表示可处理来自视频编码器20的经编码视频数据的视频实体(例如MANE或拼接/编辑装置)的实例。在一些情况下,后处理实体27可为网络实体的实例。在一些视频编码系统中,后处理实体27和视频编码器20可为单独装置的各部分,而在其它情况下,关于后处理实体27所描述的功能性可由包括视频编码器20的相同装置执行。在某一实例中,后处理实体27是图1的存储装置17的实例。视频编码器20可在视频切片内执行视频块的帧内译码、帧间译码及IBC译码。帧内译码依赖于空间预测来减少或去除给定视频帧或图片内的视频中的空间冗余。帧间译码依靠时间预测来减少或去除视频序列的邻近帧或图片内的视频中的时间冗余。帧内模式(I模式)可指若干基于空间的压缩模式中的任一者。例如单向预测(P模式)或双向预测(B模式)的帧间模式可指代若干基于时间的压缩模式中的任一者。如上文所描述的IBC译码模式可从视频数据帧去除空间冗余,但不同于传统帧内模式,IBC译码模式可用于在帧内的较大搜索区域中定位预测性块且指代具有偏移向量的预测性块,而不是依赖于帧内预测译码模式。在图15的实例中,视频编码器20包含视频数据存储器33、分割单元35、预测处理单元41、滤波器单元63、经解码图片缓冲器64、求和器50、变换处理单元52、量化单元54及熵编码单元56。预测处理单元41包含运动估计单元42、运动补偿单元44、帧内预测处理单元46及IBC单元48。为了视频块重构建,视频编码器20还包含反量化单元58、反变换处理单元60及求和器62。滤波器单元63既定表示一或多个环路滤波器,例如,解块滤波器、自适应环路滤波器(ALF)及样本自适应偏移(SAO)滤波器。尽管在图15中将滤波器单元63示为环内滤波器,但在其它配置中,可将滤波器单元63实施为环路后滤波器。在各种实例中,可给视频编码器20的固定或可编程硬件单元分派任务以执行本发明的技术。并且,在一些实例中,可在图15中所示的视频编码器20的所说明的固定或可编程硬件单元当中划分本发明的技术,但其它装置也可执行本发明的技术。举例来说,与图15的实例一致,视频编码器20的IBC单元48可单独地或结合视频编码器20的其它单元(例如,运动估计单元42、运动补偿单元44、帧内预测处理单元46及熵编码单元56)执行本发明的技术。在一些实例中,视频编码器20可不包含IBC单元48,且IBC单元48的功能性可由预测处理单元41的其它组件(例如,运动估计单元42和/或运动补偿单元44)执行。视频数据存储器33可以存储待由视频编码器20的组件编码的视频数据。可(例如)从视频源18获得存储在视频数据存储器33中的视频数据。经解码图片缓冲器64可以是参考图片存储器,其存储用于由视频编码器20(例如)以帧内、帧间或IBC译码模式对视频数据进行编码的参考视频数据。视频数据存储器33和经解码图片缓冲器64可通过多种存储器装置中的任一者形成,例如动态随机存取存储器(DRAM),包含同步DRAM(SDRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。视频数据存储器33和经解码图片缓冲器64可由相同存储器装置或单独的存储器装置提供。在各种实例中,视频数据存储器33可与视频编码器20的其它组件一起位于芯片上,或相对于那些组件在芯片外。如图15中所示,视频编码器20接收视频数据并将视频数据存储于视频数据存储器33中。分割单元35将所述数据分割成若干视频块。此分割还可包含分割成切片、平铺块或其它较大单元,以及例如根据LCU和CU的四叉树结构的视频块分割。视频编码器20一般说明编码待编码的视频切片内的视频块的组件。所述切片可以分成多个视频块(并且可能分成被称作单元片的视频块集合)。预测处理单元41可针对当前视频块基于误差结果(例如,译码速率和失真程度)选择多个可能的译码模式中的一个,例如,多个帧内译码模式中的一个、多个帧间译码模式中的一个或多个IBC译码模式中的一个。预测处理单元41可将所得经帧内、帧间或IBC译码的块提供给求和器50以产生残余块数据,且提供给求和器62以重构建适用作参考图片的经编码块。预测处理单元41内的帧内预测处理单元46可相对于与待译码的当前块在相同帧或切片中的一或多个相邻块执行当前视频块的帧内预测性译码,以提供空间压缩。预测处理单元41内的运动估计单元42及运动补偿单元44相对于一或多个参考图片中的一或多个预测性块执行当前视频块的帧间预测性译码,以提供时间压缩。预测处理单元41内的运动估计单元42和运动补偿单元44还可相对于在同一图片中的一或多个预测性块执行当前视频块的IBC译码,以提供空间压缩。运动估计单元42可经配置以根据视频序列的预定模式为视频切片确定帧间预测模式或IBC模式。预定模式可将序列中的视频切片标明为P切片、B切片或GPB切片。运动估计单元42和运动补偿单元44可高度集成,但出于概念的目的分别加以说明。运动估计单元42所执行的运动估计是产生运动向量的程序,所述程序估计视频块的运动。运动向量(例如)可以指示当前视频帧或图片内的视频块的PU相对于参考图片内的预测性块的位移。在IBC译码的情况下,运动向量,其在IBC中可被称为偏移向量,可指示当前视频帧或图片内的视频块的PU相对于当前视频帧内的预测性块的位移。IBC单元48可以类似于运动估计单元42确定运动向量来进行帧间预测的方式来确定用于IBC译码的向量(例如块向量),或可利用运动估计单元42来确定所述块向量。预测块是被发现在像素差方面与待译码视频块的PU密切匹配的块,所述像素差可通过绝对差总和(SAD)、平方差总和(SSD)或其它差异度量来确定。在一些实例中,视频编码器20可计算存储在经解码图片缓冲器64中的参考图片的次整数像素位置的值。举例来说,视频编码器20可以内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可相对于全像素位置和分数像素位置执行运动搜索并且输出具有分数像素精确度的运动向量。运动估计单元42通过比较PU的位置与参考图片的预测性块的位置来计算用于经帧间译码切片中的视频块的PU的运动向量。参考图片可以选自第一参考图片列表(列表0)或第二参考图片列表(列表1),所述列表中的每一者识别存储在经解码图片缓冲器64中的一或多个参考图片。运动估计单元42将所计算的运动向量发送到熵编码单元56及运动补偿单元44。在一些实例中,IBC单元48可以类似于上文相对于运动估计单元42和运动补偿单元44所述的方式来产生向量并提取预测性块,但其中所述预测性块与当前块在相同的图片或帧中,且所述向量被称作块向量,与运动向量形成对照。在其它实例中,IBC单元48可使用运动估计单元42及运动补偿单元44以完整或部分地执行根据本文中所描述的技术的IBC预测的这些功能。在任一情况下,对于IBC,预测性块可为被发现在像素差方面紧密地匹配待译码块的块,其可由绝对差总和(SAD)、平方差总和(SSD)或其它差异度量确定,且块的识别可包含用于次整数像素位置的值的计算。通过运动补偿单元44执行的运动补偿可以涉及基于通过运动估计(可能执行对次像素精确度的内插)确定的运动向量提取或产生预测性块。内插滤波可从已知像素样本产生额外像素样本,从而潜在地增加可用于译码视频块的候选预测性块的数目。在接收当前视频块的PU的运动向量后,运动补偿单元44可将运动向量所指向的预测性块定位在参考图片列表中的一者中,或在IBC译码的情况下定位在正被译码的图片内。视频编码器20通过从正被译码的当前视频块的像素值减去预测性块的像素值来形成残余视频块,从而形成像素差值。像素差值形成用于所述块的残余数据,且可包含明度及色度差分量两者。求和器50表示执行此减法运算的一或多个组件。运动补偿单元44还可产生与视频块和视频切片相关联的语法元素以供视频解码器30在对视频切片的视频块解码时使用。帧内预测处理单元46可对当前块进行帧内预测,作为由运动估计单元42及运动补偿单元44执行的框间预测或由IBC单元48执行的IBC预测的替代方案,如上文所描述。明确地说,帧内预测处理单元46可确定用以编码当前块的帧内预测模式。在一些实例中,帧内预测处理单元46可以例如在单独的编码编次期间使用各种帧内预测模式对当前块进行编码,并且帧内预测处理单元46(或在一些实例中为模式选择单元40)可以从经测试模式中选择适当帧内预测模式来使用。例如,帧内预测处理单元46可使用速率-失真分析计算各种经测试帧内预测模式的速率-失真值,并在所述经测试模式当中选择具有最佳速率-失真特性的帧内预测模式。速率-失真分析一般确定经编码块与经编码以产生所述经编码块的原始的未经编码块之间的失真(或误差)的量,以及用于产生经编码块的位速率(也就是说,位数目)。帧内预测处理单元46可根据用于各种经编码块的失真和速率来计算比率,以确定哪个帧内预测模式对于所述块展现最佳速率失真值。在任何情况下,在选择用于块的帧内预测模式之后,帧内预测处理单元46可将指示用于所述块的选定帧内预测模式的信息提供到熵编码单元56。熵编码单元56可根据本发明的技术编码指示选定帧内预测模式的信息。视频编码器20在所发射的位流中可包含配置数据,其可包含多个帧内预测模式索引表和多个经修改的帧内预测模式索引表(也称为码字映射表),对用于各种块的上下文进行编码的定义,以及对最可能帧内预测模式、帧内预测模式索引表和经修改的帧内预测模式索引表的指示以用于所述上下文中的每一者。在预测处理单元41经由帧间预测、帧内预测抑或IBC产生当前视频块的预测性块之后,视频编码器20通过从当前视频块减去预测性块而形成残余视频块。残余块中的残余视频数据可包含在一或多个TU中并应用到变换处理单元52。变换处理单元52使用例如离散余弦变换(DCT)或概念上类似的变换的变换来将残余视频数据变换成残余变换系数。变换处理单元52可将残余视频数据从像素值域转换到变换域,例如频域。变换处理单元52可以将所得变换系数发送到量化单元54。量化单元54对变换系数进行量化以进一步减小位速率。量化程序可以减少与系数中的一些或全部相关联的位深度。可通过调节量化参数来修改量化的程度。在一些实例中,量化单元54可以接着执行对包含经量化的变换系数的矩阵的扫描。替代地,熵编码单元56可执行扫描。在量化之后,熵编码单元56对经量化变换系数进行熵编码。举例来说,熵编码单元56可执行上下文自适应二进制算术译码(CABAC)或另一熵编码方法或技术。在由熵编码单元56熵编码之后,经编码位流可发射到视频解码器30,或经存档以供稍后发射或由视频解码器30检索。熵编码单元56还可对正译码的当前视频切片的运动向量和其它语法元素进行熵编码。反量化单元58和反变换处理单元60分别应用反量化和反变换以在像素域中重构建残余块,例如以供稍后用作参考图片的参考块。运动补偿单元44可通过将残余块添加到参考图片列表中的一者内的参考图片中的一者的预测性块中来计算参考块。运动补偿单元44还可将一或多个内插滤波器应用于所重构建的残余块以计算次整数像素值用于运动估计。内插滤波可从已知像素样本产生额外像素样本,从而潜在地增加可用于译码视频块的候选预测性块的数目。求和器62将经重构建的残余块添加到由运动补偿单元44产生的运动补偿预测块以产生参考块用于存储在经解码图片缓冲器64中。参考块可由运动估计单元42及运动补偿单元44用作对后续视频帧或图片中的块进行帧间预测的参考块。视频编码器20表示经配置以根据本发明的技术对视频数据进行编码的视频编码器的实例。举例来说,视频编码器20可确定针对在启用WPP的情况下译码的一或多个块的CTB延迟。CTB延迟可(例如)识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟。针对在帧内块复制(IBC)模式中译码并在禁用WPP的情况下译码的第一视频数据块,视频编码器20可基于CTB延迟确定用于第一块的IBC预测区域。视频编码器20可从第一块的IBC预测区域内识别用于第一块的预测性块并产生指示用于定位预测性块的块向量的语法。图16是说明可实施本发明中描述的技术的实例视频解码器30的框图。在图16的实例中,视频解码器30包含视频数据存储器78、熵解码单元80、预测处理单元81、反量化单元86、反变换处理单元88、求和器90、滤波器单元91及参考图片缓冲器(DPB)92。预测处理单元81包含运动估计单元82、帧内预测处理单元84和IBC单元85。在一些实例中,视频解码器30可执行大体上与关于来自图15的视频编码器20描述的编码遍次互逆的解码遍次。在各种实例中,可给视频解码器30的单元分派任务以执行本发明的技术。并且,在一些实例中,可在视频解码器30的单元中的一或多者当中划分本发明的技术。举例来说,IBC单元85可单独地或与视频解码器30的其它单元(例如,运动补偿单元82、框内预测处理单元84及熵解码单元80)组合而执行本发明的技术。在一些实例中,视频解码器30可不包含IBC单元85,且IBC单元85的功能性可由预测处理单元81的其它组件(例如,运动补偿单元82)执行。在解码程序期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块和相关联语法元素的经编码视频位流。视频解码器30可从网络实体29接收视频数据,并将所述视频数据存储在视频数据存储器78中。视频数据存储器78可以存储待由视频解码器30的组件解码的视频数据,例如经编码视频位流。存储在视频数据存储器78中的视频数据可(例如)从存储装置17、例如从例如相机等本地视频源、经由视频数据的有线或无线网络通信或者通过存取物理数据存储媒体而获得。视频数据存储器78可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器。因此,尽管在图16中分别示出,但视频数据存储器78和DPB92可由相同存储器装置或单独存储器装置提供。视频数据存储器78和DPB92可由多种存储器装置中的任一者形成,例如包含同步DRAM(SDRAM)的动态随机存取存储器(DRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM),或其它类型的存储器装置。在各种实例中,视频数据存储器78可与视频解码器30的其它组件一起在芯片上,或相对于那些组件在芯片外。网络实体29可例如为服务器、MANE、视频编辑器/剪接器,或经配置以实施上文所描述的技术中的一或多者的其它此装置。网络实体29可包含或可不包含视频编码器,例如视频编码器20。在网络实体29将经编码视频位流发射到视频解码器30之前,可由网络实体29实施本发明中描述的技术中的一些。在一些视频解码系统中,网络实体29和视频解码器30可为单独装置的部分,而在其它情况下,关于网络实体29描述的功能性可由包括视频解码器30的相同装置执行。在一些情况下,网络实体29可为图1的存储装置17的实例。视频解码器30的熵解码单元80对位流进行熵解码以产生经量化的系数、运动向量及其它语法元素。熵解码单元80将运动向量及其它语法元素转递到预测处理单元81。视频解码器30可在视频切片层级和/或视频块层级处接收语法元素。当视频切片经译码为经帧内译码(I)切片时,预测处理单元81的帧内预测处理单元84可基于用信号表示的帧内预测模式及来自当前帧或图片的先前经解码块的数据产生用于当前视频切片的视频块的预测数据。当将视频帧译码为经帧间译码(即,B或P)切片时,或当块经IBC译码时,预测处理单元81的运动补偿单元82基于从熵解码单元80接收到的运动向量和其它语法元素产生当前视频切片的视频块的预测性块。对于帧间预测,可从参考图片列表中的一者内的参考图片中的一者产生预测性块。视频解码器30可基于存储在DPB92中的参考图片,使用默认构建技术来构建参考帧列表,列表0和列表1。对于IBC译码,可从与正预测的块相同的图片产生预测性块。在其它实例中,当视频块根据本文中所描述的IBC模式进行译码时,预测处理单元81的IBC单元85基于从熵解码单元80接收的块向量和其它语法元素产生用于当前视频块的预测性块。预测性块可在与由视频编码器20定义且从DPB92检索的当前视频块相同的图片内的经重构建区域内。运动补偿单元82和/或IBC单元85可通过剖析运动向量和其它语法元素来确定当前视频切片的视频块的预测信息,且可使用所述预测信息来产生正被解码的当前视频块的预测性块。举例来说,运动补偿单元82使用所接收的语法元素中的一些来确定用于译码视频切片的视频块的预测模式(例如,帧内或帧间预测)、帧间预测切片类型(例如,B切片或P切片)、切片的参考图片列表中的一或多者的构建信息、切片的每一经帧间编码视频块的运动向量、切片的每一经帧间译码视频块的帧间预测状态和用以解码当前视频切片中的视频块的其它信息。类似地,IBC单元85可使用一些所接收语法元素(例如,旗标)来确定当前视频块使用IBC模式进行预测,指示图片中的哪些视频块位于经重构建区域内且应存储于DPB92中的构建信息、切片的每一经IBC预测视频块的块向量、切片的每一经IBC预测视频块的IBC预测状态,及用以对当前视频切片中的视频块进行解码的其它信息。运动补偿单元82还可基于内插滤波器执行内插。运动补偿单元82可以使用如视频编码器20在视频块的编码期间使用的内插滤波器来计算参考块的次整数像素的内插值。在此情况下,运动补偿单元82可根据接收的语法元素而确定由视频编码器20使用的内插滤波器并使用所述内插滤波器来产生预测性块。逆量化单元86将在位流中提供且由熵解码单元80解码的经量化变换系数反量化,即解量化。反量化程序可包含使用由视频编码器20针对视频切片中的每一视频块计算的量化参数以确定应应用的量化程度及同样确定应应用的反量化程度。反变换处理单元88将反变换(例如反DCT、反整数变换或概念上类似的反变换程序)应用于变换系数,以便产生像素域中的残余块。在运动补偿单元82或IBC单元85基于运动向量和其它语法元素产生当前视频块的预测性块之后,视频解码器30通过将来自反变换处理单元88的残余块与运动补偿单元82产生的对应预测性块求和来形成经解码视频块。求和器90表示可执行此求和运算的一或多个组件。在需要时,还可使用环路滤波器(在译码环路中或在译码环路之后)来使像素转变平滑或者以其它方式改善视频质量。滤波器单元91既定表示一或多个环路滤波器,例如解块滤波器、自适应环路滤波器(ALF)及样本自适应偏移(SAO)滤波器。尽管在图16中将滤波器单元91示出为环路内滤波器,但在其它配置中,可将滤波器单元91实施为环路后滤波器。接着将给定帧或图片中的经解码视频块存储于DPB92中,所述DPB存储用于后续运动补偿的参考图片。DPB92可为存储器的一部分,所述存储器还存储经解码视频以供稍后呈现于显示装置(例如,图1的显示装置32)上,或DPB92可与此类存储器分离。视频解码器30表示经配置以根据本发明的技术对视频数据进行解码的视频解码器的实例。针对在启用WPP的情况下译码的一或多个块,视频解码器30确定CTB延迟,所述CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的延迟。CTB延迟可例如以CTB为单位。针对在IBC模式中译码并在禁用WPP的情况下译码的当前视频数据块,视频解码器30基于针对在启用WPP的情况下译码的一或多个块所确定的CTB延迟,确定用于包含当前块的图片内的当前块的IBC预测区域。视频解码器30从所确定的用于当前块的IBC预测区域内识别用于当前块的预测性块,并基于预测性块对当前块进行IBC解码。针对在IBC模式中译码并在启用WPP的情况下译码的第二视频数据块,视频解码器30还可基于CTB延迟确定用于第二块的IBC预测区域,并从用于第二块述IBC预测区域内识别用于第二块的预测性块,且基于预测性块对当前块进行IBC解码。视频解码器30可基于语法元素(例如上述entropy_coding_sync_enabled)的值确定针对第一块禁用WPP。语法元素可(例如)为同步程序启用语法元素,其指示是否将调用用于上下文变量的特定同步程序。用于第一块的IBC预测区域可包含先前经解码的未经滤波的CTB。另外或替代地,IBC预测区域可包含位于第一块右方的对角定位的CTB和在第一块上方的至少两个或更多行,且不包含正好在对角定位的CTB下方的CTB。针对对角定位的CTB,视频解码器30可解码正好在与第一块平行的对角定位的CTB下方的CTB。视频解码器30可在视频数据的经编码位流中接收一或多个语法元素,其指示用于第一视频数据块的译码模式为IBC模式,并在视频数据的经编码位流中接收识别用于第一视频数据块的块向量的一或多个语法元素。为从用于第一块的所述IBC预测区域内识别用于第一块的预测性块,视频解码器30可以块向量来定位预测性块。图17是说明根据本发明的技术的用于编码视频数据的技术的流程图。图17的技术将参考通用视频编码器来描述。通用视频编码器可合并视频编码器20的特征或可为不同配置的视频编码器。针对在启用WPP的情况下译码的一或多个块,视频编码器确定CTB延迟(300)。CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的以CTB为单位的延迟。CTB延迟可例如为一个CTB、两个CTB或一些其它此类延迟。针对在IBC模式中译码并在禁用WPP的情况下译码的第一视频数据块,视频编码器基于CTB延迟确定用于第一块的IBC预测区域(302)。视频编码器从用于第一块的IBC预测区域内识别用于第一块的预测性块(304),并产生用以指示用于定位预测性块的块向量的语法(306)。针对在IBC模式中译码并在启用WPP的情况下译码的第二视频数据块,视频编码器可基于CTB延迟确定用于第二块的IBC预测区域,并从用于第二块的IBC预测区域内识别用于第二块的预测性块。IBC预测区域可包含在第一块右方的CTB和在第一块上方的至少两个或更多行,且不包含正好在第一块右方的CTB下方的CTB和在第一块上方的至少两个或更多行。图18是说明根据本发明的技术的用于解码视频数据的技术的流程图。图18的技术将参考通用视频解码器来描述。通用视频解码器可合并视频解码器30的特征或可为不同配置的视频解码器。针对在启用WPP的情况下译码的一或多个块,视频解码器确定CTB延迟(310)。CTB延迟识别在开始解码第一行CTB时与开始解码在第一行CTB下方的第二行CTB时之间的以CTB为单位的延迟。CTB延迟可例如为一个CTB、两个CTB或一些其它此类延迟。针对在IBC模式中译码并在禁用WPP的情况下译码的第一视频数据块,视频解码器基于CTB延迟确定用于第一块的IBC预测区域(312)。视频解码器从用于第一块的IBC预测区域内识别用于第一块的预测性块(314)。视频解码器30基于预测性块对当前块进行IBC解码(316)。针对在IBC模式中译码并在禁用WPP的情况下译码的第一视频数据块,视频编码器基于CTB延迟确定用于第一块的IBC预测区域,并从用于第一块的IBC预测区域内识别用于第一块的预测性块。视频解码器可另外接收语法元素并基于语法元素的值确定针对第一块禁用WPP。语法元素可(例如)为同步程序启用语法元素(例如上述entropy_coding_sync_enabled_flag),其指示是否将调用用于上下文变量的特定同步程序。用于第一块的IBC预测区域可(例如)包含先前经解码的未经滤波的CTB。IBC预测区域可(例如)包含在第一块右方的CTB和在第一块上方的至少两个或更多行,且不包含正好在第一块右方的CTB下方的CTB和在第一块上方的至少两个或更多行。视频解码器可解码与第一块平行、正好在第一块右方的CTB下方的CTB和在第一块上方的至少两个或更多行。视频解码器可另外在视频数据的经编码位流中接收一或多个语法元素,其指示用于第一视频数据块的译码模式为IBC模式,并在视频数据的经编码位流中接收识别第一视频数据块的块向量的一或多个语法元素。为从用于第一块的IBC预测区域内识别用于第一块的预测性块,视频解码器可以块向量来定位预测性块。在一或多个实例中,所描述的功能可在硬件、软件、固件或其任何组合中实施。如果在软件中实施,那么所述功能可作为一或多个指令或代码存储在计算机可读媒体上或在计算机可读媒体上予以发射,并且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,所述计算机可读存储媒体对应于有形媒体,例如数据存储媒体或通信媒体,包含例如根据通信协议促进计算机程序从一位置传送到另一位置的任何媒体。以此方式,计算机可读媒体通常可对应于(1)有形计算机可读存储媒体(其是非暂时的)或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一个或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可以包含计算机可读媒体。借助于实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可以用来存储呈指令或数据结构的形式的所要程序代码并且可以由计算机存取的任何其它媒体。并且,任何连接被恰当地称作计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源发射指令,那么同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。但是,应理解,所述计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它暂时媒体,而是实际上针对于非暂时性有形存储媒体。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。可由例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路等一或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指前述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可以在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。本发明的技术可在广泛多种装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所公开的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可以结合合适的软件及/或固件组合在编码解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。描述了各种实例。这些实例及其它实例属于所附权利要求书的范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1