CN104704843A - 视频性质的指示 - Google Patents
视频性质的指示 Download PDFInfo
- Publication number
- CN104704843A CN104704843A CN201380051796.7A CN201380051796A CN104704843A CN 104704843 A CN104704843 A CN 104704843A CN 201380051796 A CN201380051796 A CN 201380051796A CN 104704843 A CN104704843 A CN 104704843A
- Authority
- CN
- China
- Prior art keywords
- video
- decoding
- video sequence
- syntactic
- profile
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
在一个实例中,对视频数据进行解码的方法包含由视频解码器接收经译码视频序列以及将用于所述经译码视频序列的保留位语法元素的一或多个位解码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由所述视频解码器用于对所述视频序列进行解码。在一些实例中,所述语法结构是profile_tier_level语法结构。在额外实例中,一或多个译码工具启用位不包含在序列参数集SPS语法信息中的别处。
Description
本申请案主张2012年10月4日申请的第61/709,922号美国临时申请案的优先权,所述美国临时申请案的整个内容以引用的方式并入本文中。
技术领域
本发明涉及视频译码。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、平板计算机、电子图书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、所谓的“智能电话”、视频电话会议装置、视频流式发射装置及其类似者。数字视频装置实施视频译码技术,例如由MPEG-2、MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)所定义的标准、目前正在开发的高效率视频译码(HEVC)标准及这些标准的扩展中所描述的视频译码技术。HEVC包含用于指示交错视频的字段指示补充增强信息(SEI)消息和用于指示帧封装立体3D视频的帧封装布置(FPA)SEI消息的规范。视频装置可通过实施此类视频译码技术而更有效率地发射、接收、编码、解码及/或存储数字视频信息。
视频译码技术包含空间(图片内)预测及/或时间(图片间)预测以减少或移除视频序列中固有的冗余。对于基于块的视频译码来说,视频切片(即,视频帧或视频帧的一部分)可以分割成视频块,视频块还可被称作树块、译码单元(CU)及/或译码节点。使用相对于同一图片中的相邻块中的参考样本的空间预测对图片的经帧内译码(I)切片中的视频块进行编码。图片的经帧间编码(P或B)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。
空间或时间预测导致对块的预测性块进行译码。残余数据表示待译码的原始块与预测块之间的像素差。经帧间译码块是根据指向形成预测块的参考样本块的运动向量及指 示经译码块与预测块之间的差的残余数据编码的。经帧内译码块是根据帧内译码模式和残余数据来编码的。为了实现进一步压缩,可以将残余数据从像素域变换到变换域,从而产生残余变换系数,接着可以对残余变换系数进行量化。可扫描最初布置为二维阵列的经量化变换系数,以便产生变换系数的一维向量,且可应用熵译码以实现更多压缩。
发明内容
一股来说,本发明描述用于在序列参数集(SPS)中指示视频序列的经译码性质的技术。更具体来说,本发明描述用于再使用序列参数集中存在的简档、层次和层级语法结构的技术。
在一个实例中,对视频数据进行解码的方法包含由视频解码器接收经译码视频序列以及将用于所述经译码视频序列的保留位语法元素的一或多个位解码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由所述视频解码器用于对所述经译码视频序列进行解码。
在另一实例中,对视频数据进行编码的方法包含确定待编码视频序列以及由视频编码器对视频序列进行编码。所述方法进一步包含将用于所述经编码视频序列的保留位语法元素的一或多个位编码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由所述视频编码器用于对所述视频序列进行编码。
在另一实例中,一种装置包含视频译码器,所述视频译码器经配置以确定待译码视频序列,对所述视频序列进行译码,且将用于所述经译码视频序列的保留位语法元素的一或多个位译码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由所述视频译码器用于对所述视频序列进行译码。
在另一实例中,一种装置包含用于确定待译码视频序列的装置和用于对所述视频序列进行译码的装置。所述装置进一步包含将用于所述经编码视频序列的保留位语法元素的一或多个位译码为一或多个译码工具启用位的装置,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由所述视频译码器用于对所述视频序列进行译码。
在另一实例中,计算机可读存储媒体经编码有指令,所述指令当执行时致使用于对视频数据进行译码的装置的处理器确定待译码视频序列,对所述视频序列进行译码,且 将用于所述经译码视频序列的保留位语法元素的一或多个位译码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由视频译码器用于对视频序列进行译码。
在一些实例中,所述语法结构是符合高效率视频译码(HEVC)标准的profile_tier_level语法结构。此外,在一些实例中,所述保留位语法元素是profile_tier_level语法结构的general_reserved_zero_16bits保留位语法元素。
在另一实例中,所述一或多个译码工具启用位未经包含作为参数集中的语法结构外部的其它语法元素,包含视频参数集(VPS)和序列参数集(SPS)语法信息。
一或多个实例的细节陈述于附图及以下描述中。其它特征、目标及优势将从所述描述及所述图式以及从权利要求书显而易见。
附图说明
图1是说明根据本发明中描述的技术的可利用用于指示一些经译码性质的技术的实例视频编码和解码系统的框图。
图2是图解说明可实施本发明中描述的技术的实例视频编码器的框图。
图3是图解说明可实施本发明中描述的技术的实例视频解码器的框图。
图4是说明根据本发明中描述的技术的对视频序列进行解码的实例方法的流程图。
图5是说明根据本发明中描述的技术的对视频序列进行编码的实例方法的流程图。
具体实施方式
一股来说,本发明描述用于在序列参数集(SPS)中指示一或多个经译码性质的技术。更具体来说,本发明的技术使用简档、层次和层级语法结构来指示视频序列的经译码性质。profile_tier_level语法结构可在视频译码中根据例如高效率视频译码(HEVC)标准等视频标准在SPS或视频参数集(VPS)中用信号表示。本文所描述的技术针对经设计以理解profile_tier_level语法结构的输送标准改善对视频性质的轻量存取。
例如HEVC等一些标准界定profile_tier_level语法结构,其包含用于解译和/或译码与所述语法结构相关联的视频数据的语法元素。简档、层次和层级以跨越具有相似功能要求的各种应用可互操作的方式指定用于实施例如HEVC等标准的符合性点。另外,指示用于对视频数据进行译码的其它视频性质的语法元素或旗标可包含在profile_tier_level语法结构外部的语法结构中,例如在SPS或视频参数集(VPS)中的别处。 这些语法元素或旗标可指示是否启用各种译码工具用于视频数据。
用于一些视频装置的输送标准,包含(例如)国际标准化组织(ISO)基础媒体文件格式、MPEG-2系统、经由超文本传送协议(HTTP)的动态自适应流式传输(DASH)和实时传输协议(RTP),可经设计以理解profile_tier_level语法结构的至少前若干位。然而,除profile_tier_level语法结构以外,SPS或VPS中包含的其它额外信息较少可存取。因此,本发明的一些技术使用profile_tier_level语法结构的一或多个位提供旗标以指示是否启用各种译码工具,所述旗标原本将包含在SPS或VPS的较少可存取部分中。在一些实例中,一或多个译码启用工具位可在作为包含简档和层级信息的语法结构的部分或与所述语法结构连续的保留位语法元素中经译码。所述语法结构可为profile_tier_level语法结构且可位于参数集中。
例如HEVC工作草案8(在本文中被称作“WD 8”)的HEVC的草案包含保留用于未来目的的位的general_reserved_zero_16bits语法元素。本发明中的技术使用profile_tier_level语法结构中的一些保留位提供旗标以指示各种译码工具是否经启用。译码工具的实例包含显式经加权预测(除默认(1/2,1/2)、(1,0)或(0,1)以外)和/或瓦片是否经启用用于经译码视频序列、位流或基本流。可用信号表示的额外实例译码工具包含波前是否经启用、时间运动向量预测(TMVP)是否经启用、按比例缩放列表数据是否存在,或当前位流是否为8位。这些技术提供给定简档、层次和层级内的编解码器之间的更多区分。换句话说,在给定简档/层次/层级内,本发明的技术可使用保留位的一或多个位作为译码工具启用位以指示某些译码工具是否经启用。在一些实例中,也可以包含一或多个旗标、general_no_weighted_prediction_flag旗标和general_no_tiles_flag旗标作为语法元素的部分。此外,译码工具的所有以上指示可彼此独立。
通过在profile_tier_level语法结构中包含用于一些译码工具的语法元素,它们并不必须通常存在于SPS中。使用这些技术,所述语法元素可在profile_tier_level语法结构的前几个字节中。因此,使用经设计以理解profile_tier_level语法结构的至少前若干位的输送标准的视频装置可能够确定一些译码工具是否经启用用于相关联视频数据。
profile_tier_level语法结构可在SPS中,或者在VPS中。视频数据的每一层需要SPS,导致多个SPS经译码且发射。相比之下,VPS对于视频数据的所有层仅发送一次。因此,在VPS中而不是SPS中包含profile_tier_level语法结构减少了发送的总位数。
图1是说明根据本发明中描述的技术的可利用用于指示一些经译码性质的技术的实例视频编码和解码系统10的框图。如图1中所示,系统10包含源装置12,其提供稍后将由目的地装置14解码的经编码视频数据。确切地说,源装置12经由可为存储装置34 的计算机可读媒体16将视频数据提供到目的地装置14。源装置12和目的地装置14可包括广泛范围的装置中的任一者,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、平板计算机、电子图书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、所谓的“智能电话”、视频电话会议装置、视频流式传输装置及其类似者。在一些情况下,源装置12和目的地装置14可能经装备以用于无线通信。
例如源装置12和目的地装置14等数字视频装置实施视频译码技术,例如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分高级视频编码(AVC)、HEVC标准界定的标准以及此类标准的扩展中描述的那些技术。视频装置可通过实施此类视频译码技术而更有效率地发射、接收、编码、解码及/或存储数字视频信息。
目的地装置14可经由计算机可读媒体16接收待解码的经编码的视频数据。计算机可读媒体16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,计算机可读媒体16可包括使得源装置12能够实时将经编码的视频数据直接发射到目的地装置14的通信媒体。经编码视频数据可根据通信标准(例如,无线通信协议)来调制,且被发射到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一个或一个以上物理发射线路。通信媒体可能形成基于包的网络(例如局域网、广域网或全球网络,例如因特网)的一部分。通信媒体可包含可用于促进从源装置12到目的地装置14的通信的路由器、交换器、基站或任何其它设备。
替代地,可将经编码数据从输出接口22输出到存储装置34。类似地,可通过输入接口从存储装置34存取经编码数据。存储装置34可包含多种分布式或本地存取的数据存储媒体中的任一者,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置34可对应于可保持由源装置12产生的经编码视频的文件服务器或另一中间存储装置。目的地装置14可从存储装置34经由流式传输或下载来存取所存储的视频数据。文件服务器可为能够存储经编码视频数据且将经编码视频数据发射到目的地装置14的任何类型的服务器。实例文件服务器包含网络服务器(例如,用于网站)、FTP服务器、网络附接存储(NAS)装置及本地磁盘驱动器。目的地装置14可以通过任何标准数据连接(包含因特网连接)来存取经编码视频数据。此可包含无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或适合于存取存储于文件服务器上的经编码视频数据的两者的组合。经编码的视频数据从存储装置34的发射可为流式发射、 下载发射或两者的组合。
本发明的技术不必限于无线应用或设置。所述技术可以应用于支持多种多媒体应用中的任一者的视频译码,例如空中协议电视广播、有线电视发射、卫星电视发射、因特网流式视频发射(例如,经由HTTP的动态自适应流式传输(DASH))、经编码到数据存储媒体上的数字视频,存储在数据存储媒体上的数字视频的解码,或其它应用。
源装置12和目的地装置14可经配置以使用(例如)可经设计以解译且理解profile_tier_level语法结构的至少前若干位中嵌入的代码或语法元素的输送标准,包含国际标准化组织(ISO)基础媒体文件格式、MPEG-2系统、DASH和实时传输协议(RTP)。然而,序列参数集或视频参数集中的其它额外信息对一些装置较少可存取。因此一些HEVC设计并不支持对视频性质的轻量存取。
在图1的实例中,源装置12包含视频源18、视频编码器20及输出接口22。目的地装置14包含输入接口28、视频解码器30和显示装置32。根据本发明,源装置12的视频编码器20可经配置以应用用于通过再使用简档、层次和层级语法结构中的位而在序列参数集处指示经译码性质的技术。因此,替代于或除使用在SPS或VPS中别处存在的语法元素和/或语法结构来指示视频译码性质之外,简档、层次和层级语法结构的位中的一或多者(例如,general_reserved_zero_16bits中)可用以指示视频译码性质中的一或多者,如本发明中所描述。
在各种实例中,源装置和目的地装置可包含其它组件或布置。举例来说,源装置12可从外部视频源18(例如外部相机)接收视频数据。同样,目的地装置14可以与外部显示装置介接,而非包括集成显示装置。
图1的说明的系统10只是一个实例。用于通过再使用简档、层次和层级语法结构而在序列参数集处指示视频译码性质的技术可由任何数字视频编码和/或解码装置执行。尽管本发明的技术一股通过视频编码装置来执行,但是所述技术还可通过视频编码器/解码器(通常被称作“编解码器”)来执行。此外,本发明的技术还可通过视频预处理器来执行。源装置12及目的地装置14仅为这些译码装置的实例,其中源装置12产生用于发射到目的地装置14的经译码视频数据。在一些实例中,装置12、14可以实质上对称的方式操作,使得装置12、14中的每一者包含视频编码及解码组件。因此,系统10可支持视频装置12、14之间的单向或双向视频传播以例如用于视频流式传输、视频回放、视频广播或视频电话。
源装置12的视频源18可包含视频俘获装置,例如视频摄像机、含有先前所俘获视频的视频存档及/或用于从视频内容提供者接收视频的视频馈送接口。作为另一替代方 案,视频源18可产生基于计算机图形的数据作为源视频,或实况视频、所存档视频与计算机产生的视频的组合。在一些情况下,如果视频源18是摄像机,则源装置12及目的地装置14可形成所谓的相机电话或视频电话。然而,如上文所提及,本发明中所描述的技术一股来说可适用于视频译码,且可应用于无线及/或有线应用。在每一种情况下,可由视频编码器20编码所俘获、经预先俘获或计算机产生的视频。经编码视频信息可随后由输出接口22输出到计算机可读媒体16或存储装置34上。
计算机可读媒体16可包含瞬时媒体,例如无线广播或有线网络发射,或存储媒体(也就是说,非暂时性存储媒体),例如硬盘、快闪驱动器、压缩光盘、数字影音光盘、蓝光光盘或其它计算机可读媒体。在一些实例中,网络服务器可从源装置12接收经编码视频数据,且例如经由网络发射将经编码视频数据提供到目的地装置14。类似地,媒体生产设施(例如光盘冲压设施)的计算装置可以从源装置12接收经编码的视频数据并且生产含有经编码的视频数据的光盘。因此,在各种实例中,计算机可读媒体16可以理解为包含各种形式的一或多个计算机可读媒体。
目的地装置14的输入接口28从计算机可读媒体16接收信息。计算机可读媒体16的信息可包含由视频编码器20定义的语法信息,所述语法信息还供视频解码器30使用,所述语法信息包含描述块及其它经译码单元(例如,GOP)的特性及/或处理的语法元素。显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
视频编码器20和视频解码器30可以根据一种视频译码标准(例如目前正在开发的高效率视频译码(HEVC)标准)来操作,并且可以符合HEVC测试模型(HM)。HEVC包含用于指示交错视频的字段指示SEI消息和用于指示帧封装立体3D视频的帧封装布置(FPA)SEI消息的规范。HEVC当前正由ITU-T视频编码专家组(VCEG)且ISO/IEC动画专家组(MPEG)的视频译码联合合作小组(JCT-VC)开发。HEVC的最近工作草案(WD)是布洛斯等人的工作草案8(下文称为“HEVC WD8”)“高效率视频译码(HEVC)文本规范草案8”(2012年7月,斯德哥尔摩),其从2013年9月12日起从http://phenix.int-evry.fr/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC-J1003-V8.zip可用。尽管本发明中描述的技术是相对于HEVC标准来描述,但本发明的方面并未如此限制且可扩展到其它视频译码标准以及专有视频译码技术。
替代地,视频编码器20及视频解码器30可根据其它专有或行业标准来操作。另一标准的实例是ITU-T H.264标准(也被称作ISO/IEC MPEG-4 AVC),可替代地被称作 MPEG-4第10部分高级视频译码(AVC),或此类标准的扩展。视频编码器20和视频解码器30可根据其操作的其它视频译码标准包含MPEG-2系统、DASH和RPT。视频编码器20和视频解码器30可根据其操作的视频译码标准的其它实例包含ITU-T H.261、ISO/IEC MPEG-1视觉、ITU-T H.262或ISO/IEC MPEG-2视觉、ITU-T H.263、ISO/IECMPEG-4视觉和ITU-T H.264,包含其可缩放视频译码(SVC)和多视图视频译码(MVC)扩展。在一些实例中,视频编码器20和视频解码器30可经配置以根据两个或两个以上标准操作。然而本发明的技术,不限于任何特定译码标准,但尤其可有用于HEVC视频译码过程。
在一些方面中,视频编码器20和视频解码器30可各自与音频编码器及解码器集成,且可包含适当多路复用器-多路分用器单元或其它硬件和软件以处置共同数据流或单独数据流中的音频和视频两者的编码。如果适用的话,多路复用器-多路分用器单元可符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。
ITU-T H.264/MPEG-4(AVC)标准是作为被称为联合视频小组(JVT)的集体联盟的产品而由ITU-T视频译码专家组(VCEG)连同ISO/IEC动画专家组(MPEG)制定。在一些方面中,本发明中描述的技术可应用到一股符合H.264标准的装置。H.264标准描述于ITU-T研究组的日期为2005年3月的“ITU-T推荐H.264,用于通用视听服务的高级视频译码(ITU-T Recommendation H.264,Advanced Video Coding for generic audiovisual services)”中,其在本文中可被称作H.264标准或H.264规范或H.264/AVC标准或规范。联合视频组(JVT)持续致力于扩展H.264/MPEG-4 AVC。
视频编码器20和视频解码器30各自可经实施为例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合的多种合适编码器电路中的任一者。当部分地用软件实施所述技术时,装置可将用于软件的指令存储在合适的非暂时性计算机可读媒体中且使用一或多个处理器用硬件执行所述指令以执行本发明的技术。视频编码器20和视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装置中的组合编码器/解码器(CODEC)的部分。
JCT-VC正在努力进一步开发HEVC标准。HEVC标准化努力是基于被称作HEVC测试模型(HM)的视频译码装置的进化模型。HM根据(例如)ITU-T H.264/AVC假设视频译码装置相对于现有装置的若干额外能力。举例来说,虽然H.264提供了九种帧内预测编码模式,但是HM可提供多达三十三种帧内预测编码模式。
一股来说,HM的工作模型描述视频帧或图片可以分成包含亮度及色度样本两者的 树块或最大译码单元(LCU)的序列。即将来临的HEVC标准还将LCU称为“译码树单元”。位流内的语法数据可以定义最大译码单元(LCU,依据像素数目来说,其为最大译码单元)的大小。切片包含呈译码次序的多个连续树块。视频帧或图片可被分割成一或多个切片。每一树块可以根据四叉树而分裂成译码单元(CU)。一股来说,四叉树数据结构包含每个CU一个节点,其中根节点对应于所述树块。如果CU分裂成四个子CU,那么对应于CU的节点包含四个叶节点,其中叶节点中的每一者对应于所述子CU中的一者。
四叉树数据结构的每一节点可以提供相对应的CU的语法数据。举例来说,四叉树中的一个节点可包括一个分裂旗标,这表明对应于所述节点的所述CU是否分裂成子CU。CU的语法元素可以递归地来定义,且可以取决于CU是否分裂成子CU。如果CU不进一步分裂,那么将其称为叶CU。在本发明中,叶CU的子CU也将被称作叶CU,即使不存在原始叶CU的明确分裂时也是如此。举例来说,如果16x16大小的CU不进一步分裂,那么这四个8x8子CU将也被称作叶CU,虽然16x16CU从未分裂。
CU具有与H.264标准的宏块类似的目的,除了CU不具有大小区别。举例来说,树块可以分裂成四个子节点(还被称作子CU),并且每一子节点又可以是父节点并且可以分裂成另外四个子节点。最终的未分裂子节点(被称作四叉树的叶节点)包括译码节点,还称为叶CU。与经译码位流相关联的语法数据可以界定树块可以分裂的最大次数,被称作最大CU深度,并且还可界定译码节点的最小大小。因此,位流还可定义最小译码单元(SCU)。本发明使用术语“块”指代CU、PU或TU中的任一者(在HEVC的情况下)或类似数据结构(在其它标准的情况下)(例如,在H.264/AVC中的宏块及其子块)。
CU包含译码节点以及与所述译码节点相关联的预测单元(PU)及变换单元(TU)。CU的大小对应于译码节点的大小并且形状必须是正方形。CU的大小可从8x8像素到具有最大64x64像素或更大的树块的大小变动。每一CU可含有一或多个PU及一或多个TU。举例来说,与CU相关联的语法数据可描述将CU分割成一或多个PU。分割模式可以在CU被跳过或经直接模式编码、帧内预测模式编码或帧间预测模式编码之间有区别。PU可分割成非正方形形状。举例来说,与CU相关联的语法数据还可描述CU根据四叉树到一或多个TU的分割。TU可以是正方形或非正方形(例如,矩形)形状。
HEVC标准允许根据TU的变换,TU可针对不同CU而有所不同。TU的大小通常是基于针对经分割LCU定义的给定CU内的PU的大小而设置,但是情况可能并不总是如此。TU通常与PU大小相同或小于PU。在一些实例中,对应于CU残余样本可以使用一种被称为“残余四叉树”(RQT)的四叉树结构细分成较小单元。RQT的叶节点可被称为变换单元(TU)。可以变换与TU相关联的像素差值以产生变换系数,可以将所述变 换系数量化。
叶CU可包含一或多个预测单元(PU)。一股来说,PU表示对应于相对应的CU的全部或一部分的空间区域,并且可包含用于检索PU的参考样本的数据。此外,PU包含与预测有关的数据。举例来说,当PU经帧内模式编码时,用于PU的数据可以包含在残余四叉树(RQT)中,残余四叉树可包含描述用于对应于PU的TU的帧内预测模式的数据。作为另一实例,当PU经帧间模式编码时,PU可包含定义PU的一或多个运动向量的数据。举例来说,定义PU的运动向量的数据可以描述运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动向量指向的参考图片和/或运动向量的参考图片列表(例如,列表0、列表1或列表C)。
具有一或多个PU的叶CU还可包含一或多个变换单元(TU)。变换单元可以使用RQT(还称为TU四叉树结构)来指定,如上文所论述。举例来说,分裂旗标可以指示叶CU是否分裂成四个变换单元。接着,每一变换单元可以进一步分裂成其它的子TU。当TU未经进一步分裂时,其可被称作叶TU。总体上,对于帧内译码,所有属于一个叶CU的叶TU共享相同的帧内预测模式。也就是说,总体上应用相同帧内预测模式来计算叶CU的所有TU的预测值。对于帧内译码,视频编码器可以使用帧内预测模式针对每一叶TU计算残余值,作为CU的对应于TU的部分与原始块之间的差。TU不必限于PU的大小。因此,TU可大于或小于PU。对于帧内译码,PU可以与相同CU的相对应的叶TU位于同一地点。在一些实例中,叶TU的最大大小可以对应于对应叶CU的大小。
此外,叶CU的TU还可与相应的四叉树数据结构(被称作残余四叉树(RQT))相关联。也就是说,叶CU可包含指示叶CU如何分割成TU的四叉树。TU四叉树的根节点一股对应于叶CU,而CU四叉树的根节点一股对应于树块(或LCU)。未经分裂的RQT的TU被称作叶TU。一股来说,除非以其它方式提及,否则本发明分别使用术语CU及TU来指叶CU及叶TU。
视频序列通常包含一系列视频帧或图片。图片群组(GOP)一股包括一系列一或多个视频图片。GOP可包含GOP的标头、图片中的一或多者的标头或其它地方中的语法数据,其描述GOP中包含的图片的数目。图片的每一切片可包含描述用于相应切片的编码模式的切片语法数据。视频编码器20通常对个别视频切片内的视频块操作以便编码视频数据。视频块可以对应于CU内的译码节点。视频块可以具有固定或变化的大小,并且根据指定译码标准可以有不同大小。
作为实例,HM支持各种PU大小的预测。假设特定CU的大小是2Nx2N,则HM 支持2Nx2N或NxN的PU大小的帧内预测,及2Nx2N、2NxN、Nx2N或NxN的对称PU大小的帧间预测。HM还支持用于2NxnU、2NxnD、nLx2N和nRx2N的PU大小的帧间预测的不对称分割。在不对称分割中,不分割CU的一个方向,而将另一方向分割成25%及75%。CU的对应于25%分区的部分表示成“n”,接着是用“上方”、“下方”、“左侧”或“右侧”指示。因此,例如,“2NxnU”是指经水平分割的2Nx2N CU,其中顶部为2Nx0.5N PU,而底部为2Nx1.5N PU。
在本发明中,“NxN”及“N乘N”可以互换使用以指在垂直尺寸及水平尺寸方面的视频块的像素尺寸,例如,16x16像素或16乘16像素。大体来说,16x16块将在垂直方向上具有16个像素(y=16),且在水平方向上具有16个像素(x=16)。同样,NxN块总体上在垂直方向上具有N个像素,并且在水平方向上具有N个像素,其中N表示非负整数值。块中的像素可按行及列布置。此外,块未必需要在水平方向与垂直方向上具有相同数目的像素。举例来说,块可包括NxM像素,其中M未必等于N。
在使用CU的PU进行帧内预测性或帧间预测性译码之后,视频编码器20可以计算CU的TU的残余数据。PU可包括描述在空间域(还被称作像素域)中产生预测性像素数据的方法或模式的语法数据,并且TU可包括在对残余视频数据应用变换(例如,离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换)之后在变换域中的系数。残余数据可以对应于未经编码图片的像素与对应于PU的预测值之间的像素差。视频编码器20可以形成包含用于CU的残余数据的TU,并且接着变换TU以产生用于CU的变换系数。
在进行用于产生变换系数的任何变换之后,视频编码器20可执行变换系数的量化。量化一股是指将变换系数量化以可能减少用以表示系数的数据量从而提供进一步压缩的过程。量化过程可减少与系数中的一些或全部相关联的位深度。举例来说,可在量化期间将n位值向下舍入到m位值,其中n大于m。
在量化之后,视频编码器可以扫描变换系数,从包括经量化变换系数的二维矩阵产生一维向量。扫描可以经设计以将较高能量(并且因此较低频率)的系数放置在阵列的前面,并且将较低能量(并且因此较高频率)的系数放置在阵列的背面。在一些实例中,视频编码器20可利用预定义扫描次序来扫描经量化的变换系数以产生可被熵编码的串行化向量。在其它实例中,视频编码器20可以执行自适应扫描。在扫描经量化的变换系数以形成一维向量之后,视频编码器20可以例如根据上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵编码方法对一维向量进行熵编码。 视频编码器20还可对与经编码的视频数据相关联的语法元素进行熵编码以供视频解码器30在对视频数据解码时使用。
为了执行CABAC,视频编码器20可以向待发射的符号指派上下文模型内的一个上下文。上下文可涉及(例如)符号的相邻值是否为非零。为了执行CAVLC,视频编码器20可选择用于待发射的符号的可变长度码。VLC中的码字可经构造而使得相对较短的码对应于更有可能的符号,而较长的码对应于不太可能的符号。(例如)与对待发射的每一符号使用等长度码字的情形相比较,以此方式,使用VLC可实现位节省。概率确定可基于指配给符号的上下文。
视频编码器20可进一步例如在帧标头、块标头、切片标头或GOP标头中将例如基于块的语法数据、基于帧的语法数据及基于GOP的语法数据等语法数据发送到视频解码器30。GOP语法数据可描述相应GOP中的帧的数目,且帧语法数据可指示用以编码相对应的帧的编码/预测模式。
视频编码器20及视频解码器30各自可实施为可适用的多种合适的编码器或解码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固件或其任何组合。视频编码器20及视频解码器30中的每一者可以包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可以集成为组合视频编码器/解码器(编解码器)的部分。包含视频编码器20和/或视频解码器30的装置可包括集成电路、微处理器和/或无线通信装置,例如蜂窝式电话。
例如HEVC等一些标准界定profile tier level语法结构。简档、层次和层级以跨越具有相似功能要求的各种应用可互操作的方式指定用于实施例如HEVC等标准的符合性点。简档界定可用以产生相符位流的译码工具或算法的集合。层级对(例如)对应于解码器处理负载和存储器能力的位流的某些参数施加约束。层级限制是在经解码图片缓冲器(DPB)和经译码图片缓冲器(CPB)的最大取样率、最大图片大小、最大位速率、最小压缩比和能力方面建立。一些层级具有指定的两个层次:主层次和高层次。
源装置12、目的地装置14和计算机可读媒体16中的一或多者可实施经设计以理解至少profile_tier_level语法结构的一或多个输送标准。此类输送标准可(例如)为ISO基础媒体文件格式、MPEG-2系统、DASH和实时传送协议(RTP)。根据本文所描述的技术,视频编码器20可经配置以对视频序列进行编码且对保留位语法元素的一或多个位进行编码,例如用于经译码视频序列的profile_tier_level语法结构的general_reserved_zero_16bits中的位中的一者指示编解码器性质中的一或多者。在一些方 面,这些一或多个位可充当一或多个译码工具启用位。所述一或多个译码工具启用位指示一或多个译码工具是否经启用用于由视频编码器20和/或视频解码器30使用。此外,视频解码器30可经配置以对保留位语法元素的一或多个位进行解码,例如用于经译码视频序列的profile_tier_level语法结构的general_reserved_zero_16bits中的位中的一者作为一或多个译码工具启用位。
在一些方面,所述一或多个译码工具启用位指示一或多个译码工具是否经启用用于由视频解码器30使用。使用由经指示为正启用以由视频解码器30使用的所述一或多个译码工具启用位指示的所述一或多个译码工具,视频解码器30可对经编码视频序列进行解码。也就是说,视频解码器30可使用经启用译码工具用于对经译码视频数据进行解码。在一些实例中,所述一或多个译码工具启用位经译码为profile_tier_level语法结构中的general_reserved_zero_16bits保留位语法元素的一或多个位。所述一或多个译码工具启用位可指示以下编解码器性质中的一或多者:显式经加权预测(不是默认(1/2,1/2)、(1,0)或(0,1))是否经启用用于经译码视频序列、位流或基本流;瓦片是否经启用用于经译码视频序列、位流或基本流;波前处理是否经启用用于经译码视频序列、位流或基本流;时间运动向量预测是否在经译码视频序列、位流或基本流中经启用;按比例缩放列表数据是否存在且用于经译码视频序列、位流或基本流;以及当前位流是否为8位。指示当前位流是8位允许视频解码器30确定所述位流相较于其它位深度具有8位的深度。
在其中一或多个译码工具启用位指示瓦片是否经启用用于经译码视频序列、位流或基本流的实例中,所述一或多个译码工具启用位可另外或在替代方案中指示瓦片是否可独立解码。瓦片是可辅助HEVC的并行处理能力的视频数据的图片的矩形区。图片可分割为作为以一些共享标头信息经编码的可独立解码区的瓦片。在一些实例中,瓦片也可用于对视频图片的局部区的空间随机存取。图片的一个实例瓦片配置包含将所述图片分段为在每一瓦片中具有近似相等数目的译码树单元的矩形区。
在一些实例中,一或多个译码工具启用位指示波前是否经启用。如本文所使用,波前大体上指代波前并行处理(WPP)。当WPP经启用时,视频数据的切片划分成若干行译码树单元(CTU)。第一行可以典型方式处理,且第二行可在第一行中已处理仅两个CTU之后处理,第三行可在第二行中已处理仅两个CTU之后开始处理,等等。每一行中的熵译码器的上下文模型可从具有两个CTU处理滞后的前一行中的那些模型推断。波前并行处理可提供比瓦片相对更精细的一种形式的并行处理,因为波前并行处理在切片层级上作用而瓦片在图片层级上作用。
根据本发明的技术,可包含一或多个旗标、general_no_weighted_prediction_flag旗标和general_no_tiles_flag旗标作为保留位语法元素的部分。等于1的general_no_weighted_prediction_flag旗标指示在经译码视频序列中,没有图片以加权预测译码且图片参数集(PPS)中的语法元素weighted_pred_flag和weighted_bipred_flag将等于0。等于0的旗标general_no_weighted_prediction_flag指示在经译码视频序列中,可使用加权预测。等于1的旗标general_no_tiles_flag指示每一图片中的一个瓦片用于经译码视频序列中的每一图片且PPS中的语法元素tiles_enabled_flag将等于0。等于0的旗标general_no_tiles_flag指示图片中可存在一个以上瓦片。
图2是说明可实施用于通过使用简档、层次和层级语法结构在序列参数集处指示经译码性质的技术的视频编码器20的实例的框图。视频编码器20可以执行视频切片内的视频块的帧内译码及帧间译码。帧内译码依赖于空间预测来减少或去除给定视频帧或图片内的视频中的空间冗余。帧间译码依赖于时间预测来减少或去除视频序列的邻近帧或图片内的视频中的时间冗余。帧内模式(I模式)可以指若干基于空间的译码模式中的任一者。例如单向预测(P模式)或双向预测(B模式)等帧间模式可以指若干基于时间的译码模式中的任一者。
如图2中所示,视频编码器20接收待编码视频帧内的当前视频块。在图2的实例中,视频编码器20包含模式选择单元40、参考帧存储器64、求和器50、变换处理单元52、量化单元54及熵编码单元56。模式选择单元40又包含运动补偿单元44、运动估计单元42、帧内预测单元46及分割单元48。为了视频块重构,视频编码器20还包含逆量化单元58、逆变换单元60,及求和器62。还可包含解块滤波器以对块边界进行滤波以将成块效应假象从经重构视频中去除。必要时,解块滤波器通常将对求和器62的输出进行滤波。除解块滤波器之外,还可使用额外滤波器(环路内或环路后)。为简洁起见未图示此些滤波器,但是必要时,此些滤波器可以对求和器50的输出进行滤波(作为环路内滤波器)。
在编码过程期间,视频编码器20接收待译码的视频帧或切片。所述帧或切片可划分成多个视频块。运动估计单元42及运动补偿单元44相对于一或多个参考帧中的一或多个块执行所接收视频块的帧间预测性译码以提供时间预测。帧内预测单元46可替代地相对于与待译码块相同的帧或切片中的一或多个相邻块执行对所接收的视频块的帧内预测性译码以提供空间预测。视频编码器20可以执行多个译码遍次,例如,为了为每一视频数据块选择一种适当的译码模式。
此外,分割单元48可以基于前述译码遍次中的前述分割方案的评估将视频数据块 分割成子块。举例来说,分割单元48最初可将帧或切片分割成LCU,且基于速率-失真分析(例如,速率-失真优化)将LCU中的每一者分割成子CU。模式选择单元40可以进一步产生指示LCU划分成子CU的四叉树数据结构。四叉树的叶节点CU可包含一或多个PU和一或多个TU。
模式选择单元40可以基于错误结果选择译码模式中的一者(帧内或帧间),并且将所得的经帧内译码或经帧间译码块提供到求和器50以便产生残余块数据,并且提供到求和器62以便重构经编码块用作参考帧。模式选择单元40还将语法元素(例如,运动向量、帧内模式指示符、分割信息及其它此类语法信息)提供到熵编码单元56。
运动估计单元42与运动补偿单元44可高度集成,但出于概念目的分开加以说明。由运动估计单元42执行的运动估计是产生运动向量的过程,所述过程估计视频块的运动。举例来说,运动向量可以指示当前视频帧或图片内的视频块的PU相对于参考帧(或其它经译码单元)内的预测块相对于当前帧(或其它经译码单元)内正经译码的当前块的移位。预测性块是被发现在像素差方面与待译码块紧密匹配的块,像素差可通过绝对差总和(SAD)、平方差总和(SSD)或其它差度量来确定。在一些实例中,视频编码器20可以计算存储在参考帧存储器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20可以内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可相对于全像素位置和分数像素位置执行运动搜索并且输出具有分数像素精度的运动向量。
运动估计单元42通过比较PU的位置与参考图片的预测性块的位置来计算用于经帧间译码切片中的视频块的PU的运动向量。参考图片可以选自第一参考图片列表(列表0)或第二参考图片列表(列表1),其中的每一者识别存储在参考帧存储器64中的一或多个参考图片。运动估计单元42将计算出来的运动向量发送到熵编码单元56及运动补偿单元44。
由运动补偿单元44执行的运动补偿可以涉及基于由运动估计单元42确定的运动向量提取或产生预测性块。此外,在一些实例中,运动估计单元42与运动补偿单元44可以在功能上集成。在接收到当前视频块的PU的运动向量后,运动补偿单元44便可以在参考图片列表中的一者中定位所述运动向量指向的预测性块。求和器50通过从经译码的当前视频块的像素值减去预测性块的像素值从而形成像素差值来形成残余视频块,如下文所论述。一股来说,运动估计单元42相对于亮度分量执行运动估计,并且运动补偿单元44对于色度分量及亮度分量两者使用基于亮度分量计算的运动向量。模式选择单元40还可产生与视频块和视频切片相关联的供视频解码器30在对视频切片的视频块 进行解码时使用的语法元素。
作为如上文所描述由运动估计单元42及运动补偿单元44执行的帧间预测的替代方案,帧内预测单元46可以对当前块进行帧内预测。确切地说,帧内预测单元46可以确定用来对当前块进行编码的帧内预测模式。在一些实例中,帧内预测单元46可以例如在分开的编码编次期间使用各种帧内预测模式对当前块进行编码,并且帧内预测单元46(或在一些实例中为模式选择单元40)可以从所述测试模式中选择适当帧内预测模式来使用。
举例来说,帧内预测单元46可以使用速率失真分析计算针对各种经测试帧内预测模式的速率失真值,并且从所述经测试模式当中选择具有最佳速率失真特性的帧内预测模式。速率失真分析一股确定经编码块与经编码以产生所述经编码块的原始的未经编码块之间的失真(或误差)的量,以及用于产生经编码块的位速率(也就是说,位数目)。帧内预测单元46可以根据用于各种经编码块的失真及速率计算比率,以确定哪种帧内预测模式对于所述块展现最佳速率失真值。
在针对一块选择帧内预测模式之后,帧内预测单元46可将指示用于所述块的选定帧内预测模式的信息提供到熵编码单元56。熵编码单元56可以编码指示选定帧内预测模式的信息。视频编码器20在发射的位流中可包含配置数据,其可包含多个帧内预测模式指数表及多个经修改的帧内预测模式指数表(也称为码字映射表),对用于各种块的上下文进行编码的定义,及对最可能帧内预测模式、帧内预测模式指数表及经修改的帧内预测模式指数表的指示以用于所述上下文中的每一者。
视频编码器20通过从经译码的原始视频块减去来自模式选择单元40的预测数据形成残余视频块。求和器50表示执行此减法运算的一或多个组件。变换处理单元52将例如离散余弦变换(DCT)或概念上类似的变换等变换应用于残余块,从而产生包括残余变换系数值的视频块。变换处理单元52可以执行概念上类似于DCT的其它变换。还可使用小波变换、整数变换、子频带变换或其它类型的变换。在任何情况下,变换处理单元52向残余块应用所述变换,从而产生残余变换系数的块。所述变换可将残余信息从像素值域转换到变换域(例如,频域)。变换处理单元52可将所得变换系数发送到量化单元54。量化单元54可量化所述变换系数以进一步减小位速率。量化过程可减少与系数中的一些或全部相关联的位深度。可通过调整量化参数来修改量化程度。在一些实例中,量化单元54可以接着执行对包含经量化的变换系数的矩阵的扫描。替代地,熵编码单元56可以执行所述扫描。
在量化之后,熵编码单元56对经量化的变换系数进行熵译码。举例来说,熵编码 单元56可以执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵译码技术。在基于上下文的熵译码的情况下,上下文可以基于相邻块。在熵编码单元56的熵译码之后,可以将经编码位流发射到另一装置(例如视频解码器30),或者将所述视频存档用于以后发射或检索。
逆量化单元58和逆变换单元60分别应用逆量化和逆变换以在像素域中重构残余块,例如以供稍后用作参考块。运动补偿单元44可通过将残余块加到参考帧存储器64的帧中的一者的预测性块来计算参考块。运动补偿单元44还可将一或多个内插滤波器应用于经重构残余块以计算子整数像素值以用于运动估计。求和器62将经重构残余块相加到由运动补偿单元44产生的运动补偿预测块以产生经重构视频块用于存储在参考帧存储器64中。经重新构造的视频块可供运动估计单元42及运动补偿单元44用作参考块以帧间译码后续视频帧中的块。
图2的视频编码器20表示经配置以确定待编码视频序列、对所述视频序列进行编码且将用于经编码视频序列的保留位语法元素的一或多个位编码为一或多个译码工具启用位的视频编码器的实例,其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用用于由视频编码器使用。举例来说,如果特定译码工具经启用,那么可使用所述特定译码工具对经编码视频序列进行解码。在一些实例中,保留位语法元素是profile_tier_level语法结构的部分。profile_tier_level语法结构包含general_reserved_zero_16bits保留位语法结构。general_reserved_zero_16bits保留位语法结构中的位中的至少一些可用作译码工具启用位。因此,译码工具启用位不一定需要在SPS或VPS中的别处用信号表示。实际上,通过使用general_reserved_zero_16bits保留位语法结构中原本可能不使用的位可呈现译码工具启用位,进而支持视频译码性质的高效用信号表示。profile_tier_level语法结构可包含在视频参数集(VPS)中,所述VPS包含适用于经编码视频序列的多个层的信息。在其它实例中,profile_tier_level语法结构可包含在序列参数集(SPS)语法信息中。
视频编码器20可对所述一或多个译码工具启用位进行编码以指示一或多个编码器-解码器(编解码器)性质。举例来说,所述一或多个译码工具启用位可针对经编码视频序列、用于经编码视频序列的位流或用于经编码视频序列的基本流指示以下各项中的一或多者:显式经加权预测是否经启用,瓦片是否经启用,波前是否经启用,时间运动向量预测是否经启用,或按比例缩放列表数据是否存在且用于经译码视频序列、位流或基本流。在其中视频编码器20在所述一或多个译码工具启用位中对指示瓦片是否经启用的 旗标进行编码的实例中,所述一或多个译码工具启用位可进一步指示瓦片是否可独立解码。在另一实例中,视频编码器20对指示瓦片是否可独立解码的旗标进行编码而不直接对指示瓦片是否经启用的旗标进行编码。在一些实例中,视频编码器20对所述一或多个译码工具启用位进行编码以指示用于经编码视频序列的位流是否具有8位的位深度。视频编码器20还可编码所述一或多个位包含general_no_weighted_prediction_flag旗标和general_no_tiles_flag旗标作为保留位语法元素的部分。所有上述指示可彼此独立。
视频编码器20可将所述一或多个译码工具启用位编码为general_reserved_zero_16bits保留位语法结构的部分。在一些实例中,视频编码器20将所述一或多个译码工具启用位编码到序列参数集(SPS)中。在其它实例中,视频编码器20将所述一或多个译码工具启用位编码为包含适用于经译码视频序列的多个层的信息的视频参数集(VPS)的部分。
通过将所述一或多个译码工具启用位编码为用于经编码视频序列的保留位语法结构的部分,视频编码器20实现对经编码视频序列的视频性质的轻量存取。因此,使用可理解profile_tier_level语法结构的输送协议的装置可能够存取经编码视频性质。
图3是说明可实施用于通过再使用简档、层次和层级语法结构在序列参数集处指示经译码性质的技术的视频解码器30的实例的框图。在图3的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测单元74、逆量化单元76、逆变换单元78、参考帧存储器82及求和器80。在一些实例中,视频解码器30可执行总体上与关于视频编码器20(图2)描述的编码遍次互逆的解码遍次。运动补偿单元72可基于从熵解码单元70接收的运动向量产生预测数据,而帧内预测单元74可基于从熵解码单元70接收的帧内预测模式指示符产生预测数据。
在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块及相关联语法元素的经编码视频位流。视频解码器30的熵解码单元70熵解码位流以产生经量化的系数、运动向量或帧内预测模式指示符及其它语法元素。熵解码单元70将运动向量及其它语法元素转发到运动补偿单元72。视频解码器30可在视频切片层级及/或视频块层级接收语法元素。
当视频切片经译码为经帧内译码(I)切片时,帧内预测单元74可以基于用信号表示的帧内预测模式和来自当前图片的先前经解码块的数据产生用于当前视频切片的视频块的预测数据。当视频帧经译码为经帧间译码(例如,B、P或GPB)切片时,运动补偿单元72基于从熵解码单元70接收的运动向量及其它语法元素产生用于当前视频切片的视频块的预测性块。可以从参考图片列表中的一者内的参考图片中的一者产生预测性块。 视频解码器30可以基于存储在参考帧存储器82中的参考图片使用默认构造技术构造参考帧列表--列表0和列表1。运动补偿单元72通过剖析运动向量及其它语法元素确定用于当前视频切片的视频块的预测信息,并且使用所述预测信息产生用于经解码的当前视频块的预测性块。举例来说,运动补偿单元72使用一些接收到的语法元素确定用于对视频切片的视频块进行译码的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,B切片、P切片或GPB切片)、切片的参考图片列表中的一或多者的构造信息、切片的每一经帧间编码的视频块的运动向量、切片的每一经帧间译码的视频块的帧间预测状态和用以对当前视频切片中的视频块进行解码的其它信息。
运动补偿单元72还可基于内插滤波器执行内插。运动补偿单元72可使用由视频编码器20在编码视频块期间使用的内插滤波器来计算参考块的子整数像素的内插值。在此状况下,运动补偿单元72可根据接收的语法信息元素而确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生预测性块。
逆量化单元76将在位流中提供且由熵解码单元70解码的经量化变换系数逆量化,即解量化。逆量化过程可包含使用视频解码器30针对视频切片中的每一视频块计算以确定应应用的量化程度和同样逆量化程度的量化参数QPY。
逆变换单元78对变换系数应用逆变换(例如,逆DCT、逆整数变换,或概念上类似的逆变换过程),以便产生像素域中的残余块。
在运动补偿单元72基于运动向量及其它语法元素产生了当前视频块的预测性块之后,视频解码器30通过将来自逆变换单元78的残余块与由运动补偿单元72产生的相对应的预测性块求和来形成经解码视频块。求和器80表示可以执行此求和运算的一或多个组件。必要时,还可应用解块滤波器以对经解码块进行滤波以便去除成块效应假象。还可使用其它环路滤波器(在译码环路中或在译码环路之后)来使像素转变变平滑或者以其它方式改善视频质量。接着将给定帧或图片中的经解码视频块存储在参考帧存储器82中,参考帧存储器82存储用于后续运动补偿的参考图片。参考帧存储器82还存储经解码视频用于以后在显示装置(例如图1的显示装置32)上呈现。
图3的视频解码器30表示经配置以接收经译码视频序列且将用于经译码视频序列的保留位语法元素的一或多个位解码为一或多个译码工具启用位的视频解码器的实例,其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用用于由视频解码器使用。在一些实例中,保留位语法元素是profile_tier_level语法结构的部分。profile_tier_level语法结构可包含在视频参数集(VPS)中,所述VPS包含适用于经编码视频序列的多个层的信息。在其它实例中,profile_tier_level语法结构可包含在序列参数集 (SPS)语法信息中。
视频解码器30可对所述一或多个译码工具启用位进行解码以确定一或多个编码器-解码器(编解码器)性质。举例来说,所述一或多个译码工具启用位可针对经编码视频序列、用于经编码视频序列的位流或用于经编码视频序列的基本流指示以下各项中的一或多者:显式经加权预测是否经启用,瓦片是否经启用,波前是否经启用,时间运动向量预测是否经启用,或按比例缩放列表数据是否存在且用于经译码视频序列、位流或基本流。在其中视频解码器30在所述一或多个译码工具启用位中对指示瓦片是否经启用的旗标进行解码的实例中,所述一或多个译码工具启用位可进一步指示瓦片是否可独立编码。在另一实例中,视频解码器30对指示瓦片是否可独立编码的旗标进行解码而不直接对指示瓦片是否经启用的旗标进行解码。在一些实例中,视频解码器30对所述一或多个译码工具启用位进行解码以指示用于经编码视频序列的位流是否具有8位的位深度。视频解码器30还可将general_no_weighted_prediction_flag旗标和general_no_tiles_flag旗标解码为保留位语法元素的部分。所有上述指示可彼此独立。视频解码器30可基于所述一或多个译码工具启用位对视频序列进行解码。举例来说,视频解码器30使用经指示为由经解码一或多个译码工具启用位启用的一或多个译码工具对经编码视频序列进行解码。
视频解码器30可将所述一或多个译码工具启用位解码为general_reserved_zero_16bits保留位语法结构的部分。在一些实例中,视频解码器30从序列参数集(SPS)解码所述一或多个译码工具启用位。在其它实例中,视频解码器30将所述一或多个译码工具启用位解码为包含适用于经译码视频序列的多个层的信息的视频参数集(VPS)的部分。
视频解码器30通过将所述一或多个译码工具启用位解码为保留位语法结构的部分可具有对经编码视频序列的视频性质的轻量存取。因此,使用可理解profile_tier_level语法结构的输送协议的装置可能够存取经编码视频性质。举例来说,具有对视频性质的轻量存取的视频解码器30可能够从位流提取所述一或多个译码启用工具位而无需对位流执行译码,例如可变长度译码。在其中所述一或多个译码启用工具位在VPS中经译码的实例中,所述一或多个译码启用工具位可在位流的前四个字节内。在其中所述一或多个译码启用工具位在SPS中经译码的实例中,所述一或多个译码启用工具位可在包含SPS NAL单元的包的前四个字节内。所述前四个字节可经固定长度译码且与在位流中的其它字节相比可相对更容易剖析。
图4是说明根据本发明中描述的技术的对视频序列进行解码的实例方法的流程图。 图4的方法可由如本文中所描述的任何视频解码装置执行,例如图1和3的视频解码器30。所述实例方法包含由例如视频解码器30的视频解码器接收经译码视频序列(100)。所述视频序列可(例如)在视频解码器30处在位流中接收。
所述方法可进一步包含将用于经译码视频序列的保留位语法元素的一或多个位解码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用用于由视频解码器使用(102)。包含简档和层级信息的语法结构可为profile_tier_level语法结构。举例来说,保留位语法元素具有与包含简档和层级信息的位连续的多个位。也就是说,在经译码视频序列的位流中,包含所述一或多个译码启用工具位的保留位语法元素的位与指示简档和层级信息的一或多个位是连续的。在另一实例中,保留位语法元素具有与包含简档、层次和层级信息的位连续的多个位。
在一些实例中,保留位语法元素是在用于经译码视频序列的位流中存在于简档和层级信息的若干连续字节内的语法结构的部分。举例来说,指示一或多个译码工具的启用的所述一或多个译码工具启用位可位于用以传达简档、层次或层级信息的位之前的若干字节。在另一实例中,指示一或多个译码工具的启用的所述一或多个译码工具启用位可位于用以传达简档、层次或层级信息的位之后的若干字节。
在又另一实例中,包含保留位语法元素以及简档和层级信息的语法结构可仅包含所述一或多个译码启用工具位以及简档、层次和层级信息。
所述方法可进一步包含使用所述一或多个译码工具启用位指示经启用以由视频解码器使用的一或多个译码工具对经译码视频序列进行解码。
在一个实例中,保留位语法元素是profile_tier_level语法结构的部分。profile_tier_level语法结构可符合HEVC译码标准。所述语法元素可为general_reserved_zero_16bits语法元素。以下表1提供简档、层次和层级语法结构的实例。
表1
语法元素general_profile_space指定用于解译general_profile_idc和针对在0到31(包含性)的范围内的i的所有值的general_profile_compatibility_flag[i]的上下文。在符合HEVC建议/国际标准的位流中general_profile_space的值将等于0。举例来说,在符合本发明的技术和HEVC WD 8的位流中general_profile_space的值将等于0。general_profile_space的其它值可保留用于ITU-T和ISO/IEC的未来使用。在一些实例中,视频解码器30在general_profile_space不等于0的情况下将忽略经译码视频序列。
语法元素general_tier_flag指定如HEVC WD8的附件A中指定的用于解译general_level_idc的层次上下文。
当general_profile_space等于0时语法元素general_profile_idc指示如附件A中指定的经译码视频序列符合的简档。HEVC标准指示位流将不含有除附件A中指定的那些值之外的general_profile_idc的值。general_profile_idc的其它值保留用于ITU-T和/或ISO/IEC的未来使用。
当general_profile_space等于0时等于1的语法元素general_profile_compatibility_flag[i]指示经译码视频序列符合如附件A中指定的由等于i的general_profile_idc指示的简档。当general_profile_space等于0时,general_profile_compatibility_flag[general_profile_idc]等于1。针对附件A中未指定为general_profile_idc的容许值的i的任何值,general_profile_compatibility_flag[i]的值等于0。
在符合此建议/国际标准的位流中语法元素general_reserved_zero_16bits将等于0。general_reserved_zero_16bits的其他值保留用于ITU-T和ISO/IEC的未来使用。解码器将忽略general_reserved_zero_16bits的值。
包含ISO基础媒体文件格式、MPEG-2系统、经由HTTP的动态自适应流式传输(DASH)、实时传输协议(RTP)的输送标准可经设计以理解profile_tier_level语法结构的至少前若干字节。然而,序列参数集或视频参数集中的其它额外信息是较少可存取的。因此,当前HEVC设计并不支持对视频性质的轻量存取。
根据本发明的技术译码的位流确实支持对视频性质的轻量存取。在一些实例中,所述一或多个译码工具启用位存在于general_reserved_zero_16bits中以指示一或多个编码器-解码器(编解码器)性质。举例来说,视频解码器30接收位流中的经译码性质,且对语法元素进行解码以确定所述性质。在一些实例中,语法元素的少于全部的位用以指示编解码器性质。
根据本文所描述的技术,general_reserved_zero_16bits中的位中的一者可用以指示以下编解码器性质中的一或多者:显式经加权预测(不是默认(1/2,1/2)、(1,0)或(0,1))是否经启用用于经译码视频序列、位流或基本流;瓦片是否经启用用于经译码视频序列、位流或基本流;或者或另外,general_reserved_zero_16bits中的位可指示瓦片是否可独立解码;波前处理是否经启用用于经译码视频序列、位流或基本流;时间运动向量预测是否在经译码视频序列、位流或基本流中经启用;按比例缩放列表数据是否存在且用于经译码视频序列、位流或基本流;以及当前位流是否为8位。在一些实例中,所有以上指示可彼此独立,或彼此组合使用。在一些实例中,语法元素的仅一个位用以传达所述一或多个编解码器性质。举例来说,general_reserved_zero_16bits的单个位用以用信号表示按比例缩放列表数据是否存在。在其它实例中,两个或两个以上位用以传达所述一或多个编解码器性质。
以下表2提供用于简档、层次和层级语法元素的实例语法。
表2
等于1的语法元素general_no_weighted_prediction_flag指示在经译码视频序列中,没有图片以加权预测译码且图片参数集(PPS)中的语法元素weighted_pred_flag和weighted_bipred_flag将等于0。等于0的语法元素general_no_weighted_prediction_flag指示在经译码视频序列中,可使用加权预测。
等于1的语法元素general_no_tiles_flag指示每一图片中的一个瓦片用于经译码视频序列中的每一图片且图片参数集中的语法元素tiles_enabled_flag将等于0。当general_no_tiles_flag等于0时,所述旗标指示图片中可存在一个以上瓦片。
等于1的语法元素general_no_tile_depedency_flag指示当使用一个以上瓦片时,瓦片之间不存在交互且图片参数集中的语法元素loop_filter_across_tiles_enabled_flag将等于0。当general_no_tile_depedency_flag等于0时,所述旗标指示当使用一个以上瓦片时瓦片之间可能存在交互。
当语法元素general_no_tiles_flag等于1时,语法元素general_no_tile_depedency_flag保留为0。
等于1的语法元素general_no_tmvp_flag指示针对整个经译码视频序列未停用时间运动向量预测且序列参数集(SPS)中的sps_temporal_mvp_enable_flag等于0。等于0的 语法元素general_no_tmvp_flag指示不可启用时间运动向量预测。
等于1的语法元素general_no_scaling_list_flag指示没有按比例缩放列表用于整个经译码视频序列的任何图片的变换系数的按比例缩放过程且语法元素scaling_list_enable_flag将等于1。将语法元素general_no_scaling_list_flag设定为等于0指示可使用按比例缩放列表。
等于1的语法元素general_bit_depth_higher_8_flag指示仅等于8的位深度用于整个经译码视频序列的图片,等于0的general_bit_depth_higher_8_flag指示较高(或甚至较低)位深度可用于经译码视频序列中的图片。
上述语法元素general_no_weighted_prediction_flag、general_no_tiles_flag、general_no_tile_depedency_flag、general_no_tmvp_flag、general_no_scaling_list_flag和general_bit_depth_higher_8_flag中的一或多者可经译码为保留位语法元素的一或多个位的部分。视频解码器30可对保留位语法元素的所述一或多个位进行解码以确定供用于对经编码视频流进行解码的旗标的值。因此,用信号表示的编解码器性质可针对经译码视频序列、用于经译码视频序列的位流或用于经译码视频序列的基本流指示以下各项中的一者或一者以上:显式经加权预测是否经启用,瓦片是否经启用,波前是否经启用,时间运动向量预测是否经启用,或按比例缩放列表数据是否存在且用于经译码视频序列、位流或基本流。在一些实例中,用信号表示的编解码器性质进一步指示在经启用的情况下任何瓦片是否可独立解码。
在一些实例中,profile_tier_level语法结构包含在包含适用于经译码视频序列的多个层的信息的视频参数集(VPS)中。在一些实例中,所述一或多个译码工具启用位不包含在序列参数集(SPS)语法信息中且经包含作为general_reserved_zero_16bits保留位语法元素的部分。在一些实例中,保留位语法元素是general_reserved_zero_16bits。在一些实例中,所述一或多个位可包含general_no_weighted_prediction_flag旗标和general_no_tiles_flag旗标作为保留位语法元素的部分。在一些实例中,所述一或多个译码工具启用位未经包含作为参数集中的语法结构外部的其它语法元素,包含视频参数集(VPS)和序列参数集(SPS)语法信息。
以下表3图解说明profile_tier_level语法元素的替代的实例。在此实例中,序列参数集中指示哪些工具经启用或停用的旗标可从当前位置移除,同时经添加作为general_reserved_zero_16bits的部分。或者,序列参数集中的旗标的仅选定一或多个旗标经移除且包含作为general_reserved_zero_16bits的部分。或者,从序列参数集移除的那些旗标连同例如general_no_weighted_prediction_flag、general_no_tiles_flag等其它旗标 可共同存在作为general_reserved_zero_16bits的部分。举例来说,原本通常已在SPS或VPS中别处用信号表示的一或多个旗标可添加到general_reserved_zero_16bits,且维持或从在它们原本在SPS或VPS中通常已用信号表示的地方将其移除。
profile_tier_level的此实例包含以下语法元素:scaling_list_enable_flag、amp_enabled_flag、sample_adaptive_offset_enabled_flag、sps_temporal_mvp_enable_flag和pcm_enabled_flag。
表3
以下表4提供实例序列参数集原始字节序列有效负载(RBSP)语法。在此seq_parameter_set_rbsp()语法实例中,已从HEVC WD 8中的相似实例移除若干语法元素。这些包含pcm_enabled_flag、scaling_list_enable_flag、amp_enabled_flag、sample_adaptive_offset_enabled_flag和sps_temporal_mvp_enable_flag。这些旗标可从RBSP语法移除,因为它们现在可存在于profile_tier_level语法结构的general_reserved_zero_16bits保留位中且不需要在位流中的别处重复此信息。这些删除的语法元素在表4中以删除线包含以指示它们在此实例中不包含在seq_parameter_set_rbsp()中。
表4
图5是说明根据本发明中描述的技术的对视频序列进行编码的实例方法的流程图。图5的方法可由如本文中所描述的任何视频编码装置执行,例如图1和2的视频解码器20。实例方法包含确定待编码视频序列(200)。视频编码器20可从例如视频源18接收位流中的视频序列。
所述方法还可包含由视频编码器对视频序列进行编码(202)。举例来说,视频编码器20可使用一或多个译码工具对视频序列进行编码。所述方法可进一步包含将用于经编码视频序列的保留位语法元素的一或多个位编码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用用于由视频编码器使用(204)。包含简档和层级信息的语法结构可为profile_tier_level语法结构。举例来说,保留位语法元素具有与包含简档和层级信息的位连续的多个位。也就是说,在经译码视频序列的位流中,包含所述一或多个译码启用工具位的保留位语法元素的位与指示简档和层级信息的一或多个位是连续的。在另一实例中,保留位语法元素具有与包含简档、层次和层级信息的位连续的多个位。
视频编码器20对语法元素进行编码以用信号表示经译码性质。在一些实例中,所述一或多个译码工具启用位指示一或多个编码器-解码器(编解码器)性质。在一些实例中,对视频序列进行编码进一步包含使用所述一或多个译码工具的子集对视频序列进行编码。对保留位语法元素的所述一或多个位进行编码可进一步包含对所述一或多个译码工具启用位进行编码以使得所述一或多个译码工具启用位指示所述一或多个译码工具的子集经启用。视频编码器20将对与视频编码器20未用来编码视频序列的所述一或多个译码工具中的任一者相关联的一或多个译码工具启用位进行编码以指示所述一或多个译码工具经停用。保留位语法元素可为HEVC WD 8中用于未来使用而保留的位的集合general_reserved_zero_16bits。
所述保留位语法元素可为profile_tier_level语法结构的部分。profile_tier_level语法结构可在SPS中,或者在VPS中。举例来说,所述语法结构可为符合HEVC标准的profile_tier_level语法结构且所述保留位语法元素可为profile_tier_level语法结构的general_reserved_zero_16bits保留位语法元素。
profile_tier_level语法结构可包含在视频参数集(VPS)中,所述VPS包含适用于经编码视频序列的多个层的信息。在替代实例中,视频编码器20可包含所述一或多个译码工具启用位在序列参数集(SPS)语法信息中。在其它实例中,所述一或多个译码工具启用位不包含在SPS语法信息中但经包含作为general_reserved_zero_16bits保留位语法元素的部分。视频数据的每一层需要SPS,导致多个SPS经译码且发射。相比之下,VPS对于视频数据的所有层仅发送一次。因此,在VPS中而不是SPS中包含profile_tier_level语法结构减少了发送的总位数。换句话说,在本发明的一个实例中,不需要在每一SPS(用于视频数据的每一层)中包含profile_tier_level语法结构。实际上,可提供单个VPS中的 单个profile_tier_level语法结构。在一个实例中,profile_tier_level语法结构包含在包含适用于经译码视频序列的多个层的信息的VPS中。在一些实例中,所述一或多个译码工具启用位未经包含作为参数集中的语法结构外部的其它语法元素,包含视频参数集(VPS)和序列参数集(SPS)语法信息。也就是说,所述一或多个译码工具启用位不在所述语法结构外部重复。
所述一或多个译码工具启用位可针对经编码视频序列、用于经编码视频序列的位流或用于经编码视频序列的基本流或经译码视频序列的操作点指示以下各项中的一或多者:显式经加权预测是否经启用,瓦片是否经启用,波前是否经启用,时间运动向量预测是否经启用,或按比例缩放列表数据是否存在且用于经译码视频序列、位流或基本流。所述一或多个译码工具启用位可进一步指示在瓦片经启用的情况下任何瓦片是否可独立译码。在一些实例中,所述一或多个译码工具启用位指示用于经编码视频序列的位流是否具有8位的位深度。
用信号表示的编解码器性质可指示位流是否是8位。在其它实例中,用信号表示的编解码器性质指示是否未启用时间运动向量预测。在一些实例中,general_reserved_zero_16bits语法元素是profile_tier_level语法结构的部分。
在一些实例中,序列参数集语法信息中的一或多个旗标不包含在序列参数集语法信息中且经包含作为general_reserved_zero_16bits语法元素的部分。在另一实例中,序列参数集语法信息中的一或多个旗标不包含在视频参数集语法信息中且经包含作为general_reserved_zero_16bits语法元素的部分。序列参数集语法信息中指示哪些工具经启用或停用的一或多个旗标可经包含作为general_reserved_zero_16bits语法元素的部分。在一个实例中,所述一或多个旗标、general_no_weighted_prediction_flag旗标和general_no_tiles_flag旗标经包含作为general_reserved_zero_16bits语法元素的部分。
因此,视频编码器20可对视频序列进行编码以使得装置使用经设计以理解profile_tier_level语法结构的输送标准可存取一些视频性质。
在本文所描述的各种实例中,general_reserved_zero_16bits保留位中可用的任何数目的位(例如,多达16个保留位的总数)可用于选定译码工具或其它视频性质的旗标。举例来说,如果视频编码器20使用根据本发明的技术可以旗标用信号表示的八个译码工具,那么视频编码器20可对profile_tier_level语法结构的8位进行编码。在其它实例中,general_reserved_zero_16bits保留位的前n位可用以指示n个旗标,其中n是0与16之间(包含性)的整数。在其它实例中,所述n个位可不必为前n个位。此外,用于旗标的所述n个位可为连续或不连续的。
应认识到,取决于实例,本文中所描述的技术中的任一者的某些动作或事件可用不同顺序执行、可添加、合并或全部省略(例如,实践所述技术并不需要所有的所描述动作或事件)。此外,在某些实例中,可例如通过多线程处理、中断处理或多个处理器同时而非依序执行动作或事件。
在一或多个实例中,所描述的功能可以用硬件、软件、固件或其任何组合来实施。如果用软件实施,则所述功能可作为一或多个指令或代码在计算机可读媒体上存储或传输,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包括任何促进将计算机程序从一处传送到另一处的媒体(例如,根据通信协议)的通信媒体。以此方式,计算机可读媒体一股可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)通信媒体,例如,信号或载波。数据存储媒体可为可由一或多个计算机或一个或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可以包含计算机可读媒体。
借助于实例而非限制,此类计算机可读存储媒体可包含RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或任何其它可用来存储指令或数据结构的形式的期望程序代码并且可由计算机存取的媒体。同样,任何连接可恰当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴电缆、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。然而,应理解,所述计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它暂时性媒体,而是实际上针对非暂时性的有形存储媒体。如本文所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式复制数据,而光盘使用激光以光学方式复制数据。以上的组合也应包含在计算机可读媒体的范围内。
指令可以由一或多个处理器执行,所述一或多个处理器例如是一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指前述结构或适合于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可以在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。并且,可将所述技术完全实施于一或多个电路或逻辑元件中。
本发明的技术可在广泛多种装置或设备中实施,包含无线手持机、集成电路(IC)或 IC的集合(即,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所揭示技术的装置的功能方面,但未必需要通过不同硬件单元实现。实际上,如上文所描述,各种单元可以结合合适的软件及/或固件组合在编码解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
已描述各种实例。这些及其它实例在所附权利要求书的范围内。
Claims (30)
1.一种对视频数据进行解码的方法,所述方法包括:
由视频解码器接收经译码视频序列;以及
将用于所述经译码视频序列的保留位语法元素的一或多个位解码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由所述视频解码器用于对所述经译码视频序列进行解码。
2.根据权利要求1所述的方法,其中所述语法结构是符合高效率视频译码HEVC标准的profile_tier_level语法结构,且其中所述保留位语法元素是所述profile_tier_level语法结构的general_reserved_zero_16bits保留位语法元素。
3.根据权利要求2所述的方法,其中所述profile_tier_level语法结构包含在包含适用于所述经译码视频序列的多个层的信息的视频参数集VPS中。
4.根据权利要求1所述的方法,其中所述一或多个译码工具启用位未经包含作为参数集中的所述语法结构外部的其它语法元素,所述其它语法元素包含视频参数集VPS和序列参数集SPS语法信息。
5.根据权利要求1所述的方法,其中所述一或多个译码工具启用位针对所述经译码视频序列、用于所述经译码视频序列的位流或用于所述经译码视频序列的基本流或所述经译码视频序列的操作点指示以下各项中的一或多者:显式经加权预测是否经启用,瓦片是否经启用,波前是否经启用,时间运动向量预测是否经启用,或按比例缩放列表数据是否存在且用于所述经译码视频序列、位流或基本流。
6.根据权利要求5所述的方法,其中所述一或多个译码工具启用位进一步指示在瓦片经启用的情况下任何瓦片是否可独立解码。
7.根据权利要求1所述的方法,其中所述一或多个译码工具启用位指示所述经译码视频序列的位流是否具有8位的位深度。
8.根据权利要求1所述的方法,其中所述一或多个位包含general_no_weighted_prediction_flag旗标和general_no_tiles_flag旗标作为所述保留位语法元素的部分。
9.根据权利要求1所述的方法,其中所述一或多个译码工具启用位不包含在视频参数集VPS语法信息中且经包含作为profile_tier_level语法结构的general_reserved_zero_16bits保留位语法元素的部分。
10.根据权利要求1所述的方法,其进一步包括:
使用所述一或多个译码工具启用位指示经启用以由所述视频解码器使用的一或多个译码工具对所述经译码视频序列进行解码。
11.一种对视频数据进行编码的方法,所述方法包括:
确定待编码视频序列;
由视频编码器对所述视频序列进行编码;以及
将用于所述经编码视频序列的保留位语法元素的一或多个位编码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由所述视频编码器用于对所述视频序列进行编码。
12.根据权利要求11所述的方法,其中所述语法结构是符合高效率视频译码HEVC标准的profile_tier_level语法结构,且其中所述保留位语法元素是所述profile_tier_level语法结构的general_reserved_zero_16bits保留位语法元素。
13.根据权利要求12所述的方法,其中所述profile_tier_level语法结构包含在包含适用于所述经编码视频序列的多个层的信息的视频参数集VPS中。
14.根据权利要求11所述的方法,其中所述一或多个译码工具启用位未经包含作为参数集中的所述语法结构外部的其它语法元素,所述其它语法元素包含视频参数集VPS和序列参数集SPS语法信息。
15.根据权利要求11所述的方法,其中所述一或多个译码工具启用位针对所述经编码视频序列、用于所述经编码视频序列的位流或用于所述经编码视频序列的基本流指示以下各项中的一或多者:显式经加权预测是否经启用,瓦片是否经启用,波前是否经启用,时间运动向量预测是否经启用,或按比例缩放列表数据是否存在且用于所述经译码视频序列、位流或基本流。
16.根据权利要求15所述的方法,其中所述一或多个译码工具启用位进一步指示在瓦片经启用的情况下任何瓦片是否可独立编码。
17.根据权利要求11所述的方法,其中所述一或多个译码工具启用位指示用于所述经编码视频序列的位流是否具有8位的位深度。
18.根据权利要求11所述的方法,其中所述一或多个位包含general_no_weighted_prediction_flag旗标和general_no_tiles_flag旗标作为所述保留位语法元素的部分。
19.根据权利要求11所述的方法,其中所述一或多个译码工具启用位不包含在视频参数集VPS语法信息中且经包含作为profile_tier_level语法结构的general_reserved_zero_16bits保留位语法元素的部分。
20.根据权利要求11所述的方法,其中对所述视频序列进行编码进一步包括使用所述一或多个译码工具的子集对所述视频序列进行编码,且其中对所述保留位语法元素的所述一或多个位进行编码包括对所述一或多个译码工具启用位进行编码以使得所述一或多个译码工具启用位指示所述一或多个译码工具的所述子集经启用。
21.一种用于对视频数据进行译码的装置,所述装置包括视频译码器,所述视频译码器经配置以确定待译码视频序列,对所述视频序列进行译码,且将用于所述经译码视频序列的保留位语法元素的一或多个位译码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由所述视频译码器用于对所述视频序列进行译码。
22.根据权利要求21所述的装置,其中所述语法结构是符合高效率视频译码HEVC标准的profile_tier_level语法结构,且其中所述保留位语法元素是所述profile_tier_level语法结构的general_reserved_zero_16bits保留位语法元素。
23.根据权利要求22所述的装置,其中所述profile_tier_level语法结构包含在包含适用于所述经译码视频序列的多个层的信息的视频参数集VPS中。
24.根据权利要求21所述的装置,其中所述一或多个译码工具启用位未经包含作为参数集中的所述语法结构外部的其它语法元素,所述其它语法元素包含视频参数集VPS和序列参数集SPS语法信息。
25.根据权利要求21所述的装置,其中所述一或多个译码工具启用位针对所述经译码视频序列、用于所述经译码视频序列的位流或用于所述经译码视频序列的基本流指示以下各项中的一或多者:显式经加权预测是否经启用,瓦片是否经启用,波前是否经启用,时间运动向量预测是否经启用,或按比例缩放列表数据是否存在且用于所述经译码视频序列、位流或基本流。
26.一种其上存储有指令的计算机可读存储媒体,所述指令在被执行时致使用于对视频数据进行译码的装置的处理器:
确定待译码视频序列;
对所述视频序列进行译码;以及
将用于所述经译码视频序列的保留位语法元素的一或多个位译码为一或多个译码工具启用位,其中所述保留位语法元素是包含简档和层级信息的语法结构的部分,且其中所述一或多个译码工具启用位指示一或多个译码工具是否经启用以由所述视频译码器用于对所述视频序列进行译码。
27.根据权利要求26所述的计算机可读存储媒体,其中所述语法结构是符合高效率视频译码HEVC标准的profile_tier_level语法结构,且其中所述保留位语法元素是所述profile_tier_level语法结构的general_reserved_zero_16bits保留位语法元素。
28.根据权利要求26所述的计算机可读存储媒体,其中所述一或多个译码工具启用位未经包含作为参数集中的所述语法结构外部的其它语法元素,所述其它语法元素包含视频参数集VPS和序列参数集SPS语法信息。
29.根据权利要求26所述的计算机可读存储媒体,其中所述一或多个译码工具启用位针对所述经译码视频序列、用于所述经译码视频序列的位流或用于所述经译码视频序列的基本流指示以下各项中的一或多者:显式经加权预测是否经启用,瓦片是否经启用,波前是否经启用,时间运动向量预测是否经启用,或按比例缩放列表数据是否存在且用于所述经译码视频序列、位流或基本流。
30.根据权利要求26所述的计算机可读存储媒体,其中所述一或多个译码工具启用位进一步指示在瓦片经启用的情况下任何瓦片是否可独立译码。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261709922P | 2012-10-04 | 2012-10-04 | |
US61/709,922 | 2012-10-04 | ||
US14/044,339 | 2013-10-02 | ||
US14/044,339 US20140098851A1 (en) | 2012-10-04 | 2013-10-02 | Indication of video properties |
PCT/US2013/063258 WO2014055758A1 (en) | 2012-10-04 | 2013-10-03 | Indication of video properties |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104704843A true CN104704843A (zh) | 2015-06-10 |
CN104704843B CN104704843B (zh) | 2018-01-12 |
Family
ID=50432647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380051796.7A Active CN104704843B (zh) | 2012-10-04 | 2013-10-03 | 视频性质的指示 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20140098851A1 (zh) |
EP (2) | EP2904793A1 (zh) |
JP (2) | JP2015532554A (zh) |
KR (1) | KR20150065838A (zh) |
CN (1) | CN104704843B (zh) |
WO (1) | WO2014055758A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108141613A (zh) * | 2015-10-20 | 2018-06-08 | 英特尔公司 | 利用后处理指示的视频译码的方法和系统 |
CN113170204A (zh) * | 2018-12-13 | 2021-07-23 | Sk电信有限公司 | 编码工具设置方法和图像解码设备 |
CN114097234A (zh) * | 2019-06-06 | 2022-02-25 | 高通股份有限公司 | 解码器侧运动矢量细化工具开/关控制 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015009676A1 (en) * | 2013-07-15 | 2015-01-22 | Sony Corporation | Extensions of motion-constrained tile sets sei message for interactivity |
GB2542282B (en) * | 2013-10-22 | 2018-08-01 | Canon Kk | Method, device, and computer program for encapsulating partitioned timed media data in a server |
FR3018417B1 (fr) * | 2014-03-04 | 2017-07-28 | Sagemcom Broadband Sas | Procede de modification d'un flux video binaire. |
US9402083B2 (en) * | 2014-04-24 | 2016-07-26 | Vidyo, Inc. | Signaling conformance points using profile space |
KR20170020780A (ko) * | 2014-06-20 | 2017-02-24 | 삼성전자주식회사 | 스케일러블 비디오 데이터의 부호화 또는 복호화 하는 방법 및 장치 |
KR102423827B1 (ko) | 2015-08-10 | 2022-07-21 | 삼성전자주식회사 | 송신 장치 및 이의 제어 방법 |
CN116684587A (zh) * | 2018-10-05 | 2023-09-01 | Lg电子株式会社 | 图像解码、编码方法及针对图像的数据的发送方法 |
US11509919B2 (en) * | 2018-10-17 | 2022-11-22 | Tencent America | Reference sample memory size restrictions for intra block copy |
US11165847B2 (en) * | 2018-10-23 | 2021-11-02 | Tencent America LLC | Techniques for multiple conformance points in media coding |
US11553210B2 (en) | 2018-12-07 | 2023-01-10 | Interdigital Vc Holdings, Inc. | Managing coding tools combinations and restrictions |
CN118250476A (zh) | 2018-12-13 | 2024-06-25 | Sk电信有限公司 | 视频编码/解码设备执行的方法和提供视频数据的方法 |
CN117692630A (zh) | 2019-05-11 | 2024-03-12 | 北京字节跳动网络技术有限公司 | 视频处理中编解码工具的选择性使用 |
KR20220073752A (ko) * | 2019-10-12 | 2022-06-03 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 비디오 코딩 툴들을 위한 상위 레벨 신택스 |
EP4062640A4 (en) | 2019-12-26 | 2023-01-11 | ByteDance Inc. | PROFILE, ROW AND LAYER INDICATION IN VIDEO CODING |
WO2021134020A1 (en) | 2019-12-26 | 2021-07-01 | Bytedance Inc. | Constraints on signaling of hypothetical reference decoder parameters in video bitstreams |
CN114902566A (zh) | 2019-12-27 | 2022-08-12 | 字节跳动有限公司 | 参数集中的子图片信令 |
CN117395441A (zh) | 2020-01-09 | 2024-01-12 | 字节跳动有限公司 | 视频流中的填充数据单元的处理 |
KR20220162742A (ko) * | 2020-03-30 | 2022-12-08 | 엘지전자 주식회사 | Sps 내 ptl, dpb 및 hrd 관련 정보를 시그널링하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 컴퓨터 판독 가능한 기록 매체 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110032999A1 (en) * | 2009-08-07 | 2011-02-10 | Ying Chen | Signaling characteristics of an mvc operation point |
CN102238386A (zh) * | 2010-05-07 | 2011-11-09 | 汤姆森特许公司 | 画面序列编码与重构方法、序列的编码数据流 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004066634A1 (en) * | 2003-01-20 | 2004-08-05 | Koninklijke Philips Electronics N.V. | Video coding |
US9445128B2 (en) * | 2006-12-08 | 2016-09-13 | Freescale Semiconductor, Inc. | System and method of determining deblocking control flag of scalable video system for indicating presentation of deblocking parameters for multiple layers |
US8494046B2 (en) * | 2007-03-23 | 2013-07-23 | Lg Electronics Inc. | Method and an apparatus for decoding/encoding a video signal by performing illumination compensation |
US8619857B2 (en) * | 2010-04-09 | 2013-12-31 | Sharp Laboratories Of America, Inc. | Methods and systems for intra prediction |
US9167252B2 (en) * | 2010-12-01 | 2015-10-20 | Texas Instruments Incorporated | Quantization matrix compression in video coding |
BR112013003102B1 (pt) * | 2011-02-22 | 2022-04-19 | Sun Patent Trust | Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, e aparelho de decodificação de imagem |
US9491487B2 (en) * | 2012-09-25 | 2016-11-08 | Apple Inc. | Error resilient management of picture order count in predictive coding systems |
US20140092988A1 (en) * | 2012-09-28 | 2014-04-03 | Sharp Laboratories Of America, Inc. | Systems and methods for reference picture set extension |
-
2013
- 2013-10-02 US US14/044,339 patent/US20140098851A1/en not_active Abandoned
- 2013-10-03 CN CN201380051796.7A patent/CN104704843B/zh active Active
- 2013-10-03 JP JP2015535783A patent/JP2015532554A/ja not_active Ceased
- 2013-10-03 EP EP13782877.8A patent/EP2904793A1/en not_active Withdrawn
- 2013-10-03 KR KR1020157011620A patent/KR20150065838A/ko not_active Application Discontinuation
- 2013-10-03 EP EP19180099.4A patent/EP3562161A1/en not_active Withdrawn
- 2013-10-03 WO PCT/US2013/063258 patent/WO2014055758A1/en active Application Filing
-
2018
- 2018-03-07 JP JP2018040825A patent/JP2018125863A/ja not_active Ceased
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110032999A1 (en) * | 2009-08-07 | 2011-02-10 | Ying Chen | Signaling characteristics of an mvc operation point |
CN102238386A (zh) * | 2010-05-07 | 2011-11-09 | 汤姆森特许公司 | 画面序列编码与重构方法、序列的编码数据流 |
Non-Patent Citations (2)
Title |
---|
THOMAS RUSERT: "Parameter set design for HEVC extensions,Document: JCTVC-K0276(v1)", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11》 * |
YE-KUI WANG: "AHG9: Indication of frame-packed or interlaced video,Document: JCTVC-K0119(v1)", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108141613A (zh) * | 2015-10-20 | 2018-06-08 | 英特尔公司 | 利用后处理指示的视频译码的方法和系统 |
US10798422B2 (en) | 2015-10-20 | 2020-10-06 | Intel Corporation | Method and system of video coding with post-processing indication |
CN108141613B (zh) * | 2015-10-20 | 2022-05-17 | 英特尔公司 | 利用后处理指示的视频译码的方法和系统 |
CN113170204A (zh) * | 2018-12-13 | 2021-07-23 | Sk电信有限公司 | 编码工具设置方法和图像解码设备 |
CN113170204B (zh) * | 2018-12-13 | 2024-04-16 | Sk电信有限公司 | 编码工具设置方法和图像解码设备 |
CN114097234A (zh) * | 2019-06-06 | 2022-02-25 | 高通股份有限公司 | 解码器侧运动矢量细化工具开/关控制 |
Also Published As
Publication number | Publication date |
---|---|
CN104704843B (zh) | 2018-01-12 |
EP3562161A1 (en) | 2019-10-30 |
US20140098851A1 (en) | 2014-04-10 |
EP2904793A1 (en) | 2015-08-12 |
JP2018125863A (ja) | 2018-08-09 |
WO2014055758A1 (en) | 2014-04-10 |
KR20150065838A (ko) | 2015-06-15 |
JP2015532554A (ja) | 2015-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104704843A (zh) | 视频性质的指示 | |
CN104823449B (zh) | 在视频译码中用信号表示关注区和逐渐解码刷新 | |
CN106464917B (zh) | 用信号表示用于位流分区的hrd参数 | |
CN105191310A (zh) | 用于视频译码的并行处理 | |
CN104221381A (zh) | 用于视频译码的波前并行处理 | |
CN104471942A (zh) | 重新使用参数集用于视频译码 | |
CN104685875A (zh) | 用于视频译码中的4:2:2样本格式的帧内译码 | |
CN104704833A (zh) | 多视图或3维视频译码中的高级视图间残差预测 | |
CN105103560A (zh) | 用于仅高级语法可缩放视频译码的层间参考图片限制 | |
CN103563378A (zh) | 存储器高效的上下文建模 | |
CN105409219A (zh) | 高效率视频译码扩展中的目标输出层的选择 | |
CN104412591A (zh) | 用于差域帧内预测的帧内模式扩展 | |
CN104488267A (zh) | 平铺块及波前并行处理 | |
CN104412600A (zh) | 译码用于视频译码的sei nal单元 | |
CN104685883A (zh) | 用于3d视频的经视图间预测运动向量 | |
CN105144715A (zh) | 后向视图合成预测 | |
CN104584557A (zh) | 构造用于多视图或3dv视频译码的参考图片列表 | |
CN104756499A (zh) | 用于视频译码的参考图片状态 | |
CN105191315A (zh) | 在shvc中有条件地调用再取样过程 | |
CN104365106A (zh) | 发信用于视频译码的长期参考图片的数据 | |
CN104685887A (zh) | 于视频译码中发信用于操作点的层识别符 | |
CN105075258A (zh) | 针对具有不同纵横比的空间可缩放性的层间参考图片建构 | |
CN104429072A (zh) | 自适应差域空间和时间参考重构及平滑 | |
CN105247868A (zh) | 使用缩放因数的再取样 | |
CN105379271A (zh) | 帧内随机接入点图片的改进的跨层对齐 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |