CN105659599A - 可缩放视频中的图序计数对齐 - Google Patents
可缩放视频中的图序计数对齐 Download PDFInfo
- Publication number
- CN105659599A CN105659599A CN201480056364.XA CN201480056364A CN105659599A CN 105659599 A CN105659599 A CN 105659599A CN 201480056364 A CN201480056364 A CN 201480056364A CN 105659599 A CN105659599 A CN 105659599A
- Authority
- CN
- China
- Prior art keywords
- picture
- poc
- poc value
- value
- recalculating
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/187—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/31—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/33—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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
由解码器(100、200、300、400)根据包括多层(10、20)图片(12、14、16、22、24、26)的视频流(1)的基础层(10)中的RAP图片(12)的编码表示,获取POC重新计算值。使用POC重新计算值重新计算解码器(100、200、300、400)的DPB(110、430)中的参考图片(24)的POC值。通过在RAP图片(12)中信号通知POC重新计算值,使得解码器(100、200、300、400)可正确处理具有未对齐RAP图片(12)的视频流(1)。
Description
技术领域
实施例大致涉及对视频流的图片进行编码和解码的领域,且具体地涉及包括多层图片的视频流。
背景技术
当前正将高效视频编码(HEVC)视频编码标准[1]扩展到支持可缩放层。该计划包括空间、质量和多视角可缩放扩展,其中,比特流包含基础层和数目可变的增强层。HEVC可缩放扩展的最近的草案版本是JCTVC-N1008_v3[2]。
可缩放流中的基础层遵循HEVC的第一个版本,该版本不包括任何可缩放扩展。使用HEVC的第一个版本中被定义为预留的类型来将可缩放流中的增强层标记为扩展数据。在HEVC规范中,该类型是使用高层信令指示的,并携带在网络抽象层(NAL)单元类型中。在第一个版本中规定:第一版本解码器(即,遵循HEVC的第一个版本的解码器)将会丢弃以扩展类型标记的数据。这使得遗留的或第一版本解码器可以正确地解码可缩放比特流中的基础层,同时忽略增强层。遵循HEVC的扩展的解码器将会识别扩展数据类型,并能够也对可缩放比特流中的增强层进行解码。
通常如图1中所示地示出使用可缩放性的示例图片结构。该图示出了空间可缩放性,用三幅图片14、16、18示出了低分辨率基础层和用三幅图片24、26、28示出了高分辨率增强层。图中的箭头示出了图片彼此间如何参考。如所看出的,增强层图片24、26、28使用基础层14、16、18作为参考。由于基础层图片14、16、18没有将增强层图片24、26、28作为参考,所以可以移除增强层20,这将会导致第一版本比特流(版本1比特流),第一版本比特流将会是第一版本解码器(版本1解码器)可解码的。图1包含三个时刻,每个时刻针对两幅图片14、24;16、26;18、28,一幅基础层图片和一幅增强层图片。将这些图片14、24;16、26;18、28分组并称为访问单元(AU)30。图1中存在三个访问单元,为了简化图,使用附图标记来标记其中的一个。
HEVC的第一个版本实际上在某种程度上也是可缩放的,因为其包括时间层。图2中对此进行了示出,图2示出了时间层0(图片2、4和6)20中的三幅图片14、16和18以及时间层1(图片3和5)20中的两幅图片24、26。类似于空间可缩放性示例,时间层120可被丢弃。在该示例中,结果是具有一半帧速率的比特流。图2中存在5个访问单元30,利用附图标记来标记其中的一个。
在其中移除了一个或多个高层的比特流被称为子比特流,无论该高层是时间层还是常规层。
HEVC中与所有类型的可缩放性有关的重要规则是不允许低层的图片使用高层的图片作为参考。该规则是很重要的,因为其向已移除了高层的比特流预留了可解码性。另一重要规则是如果编码器输出可缩放比特流,编码器负责每个可能的子比特流都是兼容的比特流。这意味着网络节点或任何其他实体可以盲丢弃来自可缩放比特流的任何高层组合,并确保输出是兼容的比特流。该规则一般被表示为兼容规则。
HEVC中的每幅图片具有向其指派的图序计数(POC)值。该值定义了输出图片的顺序,图片始终以POC增加的顺序输出。从解码图片缓冲器(DPB)输出图片通常是输出以显示在屏幕上。然而,本文中使用的输出还包含用于除显示之外的其他目的的输出,包括但不限于用于存储器上的存储的输出、用于转码的输出等。
所允许的POC值的范围从-231到231-1,因此,为了节约条带头中的比特,仅信号通知POC的最低有效位(LSB)(POClsb)。这是通过HEVC中的码字slice_pic_order_cnt_lsb来完成的。使用码字log2_max_pic_order_cnt_lsb_minus4来在序列参数集(SPS)中信号通知用于POClsb的比特数目,该比特数目可在4到16之间。因为在条带头中仅信号通知POClsb,根据先前图片的POC和当前图片的POClsb推导出当前图片的POC的最高有效位(MSB)(POCmsb)。HEVC在HEVC标准[1]的第8.3.1节中的等式8-1中定义了POC最高有效位的推导。
HEVC标准规定了具有不同特性的多个图片类型。图片类型的一个重要集合是帧内随机访问点(IRAP)图片类型。这些图片类型是在比特流中提供随机访问点的帧内编码图片。
可缩放比特流中的IRAP图片可以是对齐的,或是未对齐的。参见JCTVC-N1008_v3[2]中的第F.7.4.3.1.1,在[2]中可使用视频参数集(VPS)码字cross_layer_irap_aligned_flag来对其进行信号通知。如果该标记是1,且访问单元中的图片之一是IRAP图片,则该访问单元中的所有图片必须是相同IRAP类型的IRAP图片。如果在VPS中将cross_layer_irap_aligned_flag设置为0,则不要求IRAP图片对齐,且允许图3中示出的图片结构。
基础层中的IRAP图片提供其可能开始解码的点。增强层中的IRAP图片提供了有可能开始解码该层的点,假设正在解码下面的层。如果IRAP图片是对齐的,包含所有层中的IRAP图片的访问单元提供有可能开始解码任何数目的层的点。
如果IRAP图片没有对齐(例如图3中的图片),则将从在基础层中做出随机访问到某个数目的增强层被解码的过程称为逐层启动过程。该过程可总结如下:
1解码前,没有层被视为初始化的。
2当在基础层中遇到IRAP图片时,该层被立即视为初始化的。
3当在增强层中遇到IRAP图片时,如果该增强层所依存的所有层都被初始化,这该层被视为初始化的。
4当遇到非IRAP图片时,如果该图片属于初始化层,则对该图片解码,且如果该图片属于未初始化层,这丢弃该图片。
逐层启动过程将会解码图3中的灰色图片。要注意到,增强层中的IRAP图片可参考低层中的图片,而基础层中的IRAP图片不被允许参考任何其他图片。
在HEVC中存在三种类型的IRAP图片:即刻解码刷新(IDR)、净随机访问(CRA)以及断链访问(BLA)类型。
基础层中的IDR图片是刷新解码器的帧内图片。这意味着该IDR图片以及比特流中在该IDR图片之后的任何基础层图片与比特流中在该IDR图片之前的任何图片都不具有任何依存性。在HEVC中不存在针对基础层IDR图片进行信号通知的码字(POClsb),相反POC被设置为等于0。
基础层CRA图片是帧内图片,与IDR图片相比,其不刷新解码器。这使得比特流中之后的基础层图片可依存于比特流中在CRA图片之前的基础层图片。按照输出顺序在CRA图片之前的这些图片被称为居前图片,并不被允许在CRA图片之后显示,而仅在CRA图片之前显示。HEVC中的所有居前图片必须是使用特殊的图片类型可识别的。
除了将基础层CRA图片用于随机访问之外,还有可能使用CRA图片来拼接视频流,其中,参见图4,位于比特流中间的特定基础层IRAP图片以及所有的后续图片被来自于另一比特流的基础层CRA图片及其后续图片替换。由于基础层CRA图片可具有居前图片(在将该CRA图片用于拼接时其变得不可解码),HEVC标准已定义将BLA图片类型用于CRA拼接。在拼接期间,简单地将CRA图片重新分类为BLA图片,如图4所示。BLA图片类型指示解码器丢弃居前图片,且这使得拼接能够进行。另一备选会是在拼接期间移除居前图片,然而会因此需要重新计算系统缓冲器参数,因为移除了数据。
针对HEVC中除IDR图片类型之外的每幅图片信号通知POClsb,针对该IRAP图片类型,将POC设置为0。针对BLA图片将POCmsb设置为0,然而POClsb存在于BLA条带头中,且将BLA图片的POC设置为等于POClsb。如上所述使用POClsb和POCmsb计算CRA图片的POC。
HEVC中非常重要的规则是相同访问单元中的每幅图片的POC必须是相同的。该规则使得容易检测访问单元边界,只要两幅图片的POC不同,其便属于不同的访问单元,且这使得更容易检测图片丢失。该规则一般被称为POC对齐规则。
与BLA和IDR图片有关的另一规则是其重设解码器。其中,这刷新解码器并强制输出所有尚未输出的图片。要注意到,CRA图片不刷新解码器。该规则一般被称为IRAP输出规则。
与POC值有关的另一规则是当前图片及其所有短期参考图片必须在某个POC范围内,该范围是POClsb的最大值的一半。如果使用8个比特编码POClsb,则最大值是28-1=255,且允许的POC范围是255/2=127。该规则一般被称为POC范围规则。
POC对齐规则以及IDR图片始终具有等于0的POC的规则引发了由JCTVC-N1008_v3中的poc_reset_flag解决的问题(参见[2]中的第F.7.4.7.1节)。图5中示出了该问题,其中,在每幅图片12、14、16、22、24、26的内部示出了每幅图片的POC值(本文档中之后的图也在每幅图片的内部示出其POC值)。图片中仅一幅12是IRAP图片,其在图5中是IDR图片,所有其他图片14、16、22、24、26都是非IRAP图片。现在假设编码器已编码了很多图片,因此最后的POC是1032。要记住,在条带头中仅信号通知POClsb,且如果假设将8个比特用于信号通知POClsb,则由值1032%256=8信号通知最后的POC,同时推导出POCmsb1032-8=1024。现在,编码器想要将IDR图片12置于基础层10中而不使任何增强层图片22置于相同的访问单元30IRAP中。
IDR图片12将POC设置为0,且POC对齐规则宣称相同访问单元30中的所有图片12、22必须具有相同的POC值。这意味着包含IDR图片12的访问单元30中的图片12、22二者必须具有等于0的POC。这里的一个问题是增强层图片22使用增强层20中POC等于1032的图片24作为参考,且这会违反POC范围规则,该POC范围规则告知具有POC1032的图片24是短期图片(1032-0>127)。另一问题是如果针对增强层图片22将POC设置为0,该图片22得到比具有POC1032的图片24低的POC,这将会指示增强层图片22应在具有POC1032的图片24之前输出。由于IRAP输出规则,这对于基础层10不是问题,但对于增强层图片22是个问题。
JCTVC-N1008_v3[2]中的poc_reset_flag解决该问题。poc_reset_flag是增强层图片的条带头中的标记,其对解码器具有以下影响:
a)POC正常推导出,推导出POCmsb,且使用在条带头中信号通知的POC。
b)然后,每幅参考图片的POC递减所推导出的POC值。
c)最后,将增强层图片的POC设置为等于0。
信号通知针对包含IDR图片12的访问单元30的增强层图片22的等于10的POClsb(POC=POCmsb+POClsb=1024+10=1034)将会在步骤a发生之后导致图6中示出的POC数字,且图7示出了步骤a、b和c发生之后的POC数字。实际上,在本示例中,在执行步骤a、b和c时,不是所有被示出为具有负的POC值的图片都仍然是参考图片,但在此处我们假设它们都是。
可看出,图7示出POC的范围和输出的问题都被poc_reset_flag解决了。例如,维持了正确的输出顺序,且首先,在具有POC=-2的图片14、24之前输出POC=-4的图片16、26,且最后输出POC=0的图片12、22。由于0-(-2)=-2-(-4)=2<127,POC范围也是正确的。在HEVC的条带头扩展部分中发送poc_reset_flag。这是遗留或第一版本HEVC解码器将会忽略的HEVC条带头的部分.
然而,在误差回弹问题、不存在图片问题、时间层问题和比特成本问题方面,现有解决方案存在着一些问题。
误差回弹问题
考虑图8中示出的视频流。如果在发送期间丢失了图片X22,可能会基于具有POC1032的图片24计算图片Y21的POC。然后,将得到等于1026的POC(POCmsb=1024且POClsb=2)。由于在丢失了的图片X22中携带poc_reset_flag,POC值的重新计算未完成。图片X22的丢失因此导致以下问题:
·图片Y21得到POC1026,这违背了POC对齐规则(1026≠2)。
·图片Y21得到POC1026,这低于1032,且相对输出顺序不正确。
·如果已经接收到poc_reset_flag,POC1032可能已被重新计算为-2。图片Y21的POC将会是2,且因此图片Y21的参考图片集(RPS)将使用等于-4的增量POC来指示参考图片。然而,图片Y21的POC等于1026,这会指定具有POC1022的参考图片,该参考图片是不正确的。
不存在图片问题
考虑图9中示出的视频流。如果增强层20具有基础层10的一半帧速率,则不存在与IDR图片12相对应的图片。这意味着在增强层10中不能重设POC,且图9中示出的图片结构不可能。
在IDR图片处没有增强层图片的原因在于:希望任何访问单元的最大尺寸较小,且当其处不存在增强层图片时,IDR访问单元变得较小。与禁止所示出的图片结构相比,将会支持该结构的解决方案将更好。
时间层问题
考虑图10中示出的视频流。在此,增强层由两个时问层20A、20B组成,以提供时间可缩放性,且图片X42置于较高时间层20B中。如果接收到所有图片,这是没有问题的。然而,如果节点移除增强层中的时间层120A,解码器面临着不存在图片问题。因此,根据现有技术,图10中的图片结构实际上是被禁止的,这限制了编码器灵活性。
比特成本问题
此外,当前的方案强制要求将每个条带头中的一个比特用于信号通知poc_reset_flag。希望由更加成本高效的解决方案。
因此,关于可缩放比特流存在着改进空间,其中,视频流包括多个共同访问(co-called)层。
发明内容
大致目标是提供在解码器和编码器中的高效的图序计数(POC)确定。
具体的实施例是为包括未对齐随机访问点图片的视频流提供高效的POC管理。
通过本文公开的实施例,可以实现上述目的以及其他目的。
实施例的一个方案涉及一种由解码器执行的方法。方法包括:从包括多层图片的视频流的基础层中的随机访问点图片的编码表示中,获取POC重新计算值。方法还包括:使用POC重新计算值,重新计算解码器的解码图片缓冲器中的参考图片的POC值。
实施例的另一方案涉及解码器,所述解码器被配置为:根据包括多层图片的视频流的基础层中的随机访问点图片的编码表示,获取POC重新计算值。所述解码器还被配置为:使用POC重新计算值,重新计算解码器的解码图片缓冲器中的参考图片的POC值。
实施例的相关方案定义了包括以下模块的解码器:获取模块,用于从包括多层图片的视频流的基础层中的随机访问点图片的编码表示中,获取POC重新计算值。解码器还包括:重新计算模块,用于使用POC重新计算值,重新计算解码器的解码图片缓冲器中的参考图片的POC值。
实施例的另一方案涉及接收单元,该接收单元包括被配置为接收比特流的输入单元和上述的解码器。
实施例的另一个方案涉及一种由编码器执行的方法。方法包括:基于要用于访问单元的POC值,计算POC重新计算值,所述访问单元包括视频流的基础层中的随机访问点图片,所述视频流包括多层图片。方法还包括:生成包括POC重新计算值的随机访问点图片的编码表示。方法还包括:使用POC重新计算值,重新计算编码器的解码图片缓冲器中的参考图片的POC值。
实施例的另一方案涉及编码器。编码器被配置为:基于要用于访问单元的POC值,计算POC重新计算值,所述访问单元包括视频流的基础层中的随机访问点图片,所述视频流包括多层图片。编码器还被配置为:生成包括POC重新计算值的随机访问点图片的编码表示。编码器还被配置为:使用POC重新计算值,重新计算编码器的解码图片缓冲器中的参考图片的POC值。
实施例的相关方案定义了编码器,编码器包括:计算模块,用于基于要用于访问单元的POC值,计算POC重新计算值,所述访问单元包括视频流的基础层中的随机访问点图片,所述视频流包括多层图片。编码器还包括:生成模块,用于生成包括POC重新计算值的随机访问点图片的编码表示。编码器还包括:重新计算模块,用于使用POC重新计算值,重新计算编码器的解码图片缓冲器中的参考图片的POC值。
实施例的另一方案涉及发送模块,所述发送模块包括上述编码器以及被配置为发送比特流的输出单元。
实施例的又一方案涉及网络节点,所述网络节点包括上述接收单元和/或上述发送单元。
实施例的又一方案涉及包括指令的计算机程序,当在至少一个处理器上执行所述指令时,所述指令使所述至少一个处理器:根据包括多层图片的视频流的基础层中的随机访问点图片的编码表示,获取POC重新计算值。还使所述至少一个处理器:使用POC重新计算值,重新计算解码器的解码图片缓冲器中的参考图片的POC值。
实施例的又一方案涉及包括指令的计算机程序,当在至少一个处理器上执行所述指令时,所述指令使所述至少一个处理器:基于要用于访问单元的POC值,计算POC重新计算值,所述访问单元包括视频流的基础层中的随机访问点图片,所述视频流包括多层图片。还使所述至少一个处理器:生成包括POC重新计算值的随机访问点图片的编码表示。还使所述至少一个处理器:使用POC重新计算值,重新计算编码器的解码图片缓冲器中的参考图片的POC值。
实施例的相关方案定义包括上述计算机程序的载体。该载体是电子信号、光信号、电磁信号、磁信号、电信号、无线电信号、微波信号或计算机可读存储介质之一。
当前实施例提供了用于处理包括未对齐随机访问点图片的视频流的POC值的有效解决方案。实施例在随机访问点图片中信号通知POC重新计算值。因此,本文中公开的实施例解决了与例如误差回弹问题、不存在图片问题、时间层问题和比特成本问题至少之一有关的现有技术问题。
附图说明
通过参考以下结合附图的描述,能够最佳地理解实施例及其更多的目的和优点,其中:
图1是具有空间可缩放图片结构的视频流的示例;
图2是具有空间可缩放图片结构的视频流的示例;
图3是具有未对齐IRAP图片的视频流的示例;
图4示意性地示出了拼接比特流;
图5是在基础层中具有未对齐IRAP图片的视频流的示例;
图6是推导出POC值之后的视频流的示例;
图7是在推导出POC值、递减POC值并将增强层图片的POC设置为0之后的图6中的视频流的示例;
图8是示出误差回弹问题的视频流的示例;
图9是示出不存在图片问题的视频流的示例;
图10是示出时间层问题的视频流的示例;
图11是示出由根据实施例的解码器执行的方法的流程图;
图12是图11中方法的附加、可选步骤的流程图;
图13是图11中方法的附加、可选步骤的流程图;
图14是图13中方法的附加、可选步骤的流程图;
图15是图13中方法的附加、可选步骤的流程图;
图16是示出由根据实施例的编码器执行的方法的流程图。
图17是图16中方法的附加、可选步骤的流程图;
图18是图16中方法的附加、可选步骤的流程图;
图19是图16中方法的附加、可选步骤的流程图;
图20是示出图16中的方法的重新计算步骤的实施例的流程图;
图21是示出图16中的方法的计算步骤的实施例的流程图;
图22示意性地示出在接收基础层IDR时更新增强层DPB中的图片的POC;
图23A和23B示出了在实施例2的步骤a和步骤c之后的解码器示例;
图24A和24B是具有在实施例2的步骤a、b和c以及步骤步骤a、b、b、d、e之后的基础层中的未对齐IRAP图片的示例;
图25A和25B示出了在实施例3的步骤b和步骤d之后的解码器示例;
图26A和26B示出了在实施例3的步骤b和步骤e之后的编码器示例;
图27A-27C是具有在实施例4的步骤a、步骤b和添加D以及步骤C之后的基础层中的未对齐IRAP图片的示例;
图28是实施例7的示例;
图29示意性地示出具有多个层的视频流的示例;
图30示出解码器的实施例;
图31示出解码器的另一实施例;
图32示出解码器的另一实施例;
图33示出解码器的又一实施例;
图34示出接收单元的实施例;
图35示出编码器的实施例;
图36示出编码器的另一实施例;
图37示出编码器的另一实施例。
图38示出编码器的又一实施例;
图39示出发送单元的实施例;
图40示出根据实施例的用户终端(UE)以及根据实施例的计算机程序产品和计算机程序;
图41示出根据实施例的网络节点;
图42A-42C是具有在实施例8的步骤b、步骤c和步骤d之后的基础层中的未对齐IRAP图片的示例;以及
图43是基础层中的未对齐IRAP图片的示例。
具体实施方式
附图中,将相同的附图标记用于类似或对应的要素。
实施例大致涉及对视频流的图片进行编码和解码的领域,且具体地涉及包括多层图片的视频流。此外,实施例通过在视频流的基础层中的随机访问点图片中(例如,在基础层IDR图片的条带头中)信号通知重新计算值来解决在背景技术部分提及的现有技术解决方案的问题中的至少一些。重新计算值被用于重新计算参考图片的POC值。
参见图11和29,实施例的方案涉及由解码器执行的方法。该方法包括:在图11的步骤S1中,根据包括多层10、20图片12、14、16、22、24、26的视频流1的基础层10中的随机访问点图片12的编码表示,获取图序计数(POC)重新计算值。下一步骤S2包括:使用POC重新计算值,重新计算解码器的解码图片缓冲器(DPB)中存储的参考图片24的POC值。
因此,实施例使用在视频流1的基础层10中的随机访问点图片12中信号通知的信息来重新计算DPB中的参考图片24(即,DPB中存储的图片,且在对视频流1的其他图片22解码时被用作参考)的POC值。在图29中,图片24是DPB中存在的针对增强层22的下一图片的参考图片。该下一图片22还使用随机防问图片12作为参考图片。
图片12、14、16、22、24、26的POC是变量,该变量与每幅图片12、14、16、22、24、26相关联并在其他图片中唯一地标识相关联的图片12、14、16、22、24、26。在要从解码图片缓冲器输出相关联的图片12、14、16、22、24、26时,POC按照与要从解码图片缓冲器输出的其他图片的输出顺序位置相对的输出顺序指示相关联的图片12、14、16、22、24、26的位置。
解码图片缓冲器(DPB)是保存用于参考、输出重排序或输出延迟的解码图片的缓冲器或存储器。解码图片缓冲器包含图片存储缓冲器。图片存储缓冲器中的每一个可包含被标记为“用于参考”和/或保存以用于将来的输出的解码图片。解码器和编码器二者访问相应版本的解码图片缓冲器。
随机访问点图片12是在视频流中提供随机访问点的帧内编码图片。因此,视频流1的层10中的图片12的解码可开始于这样的随机访问点。
图29中示出的视频流1包括多个(即,至少两个)图像12、14、16、22、24、26层10、20。本文中使用的层指的是包括视频流1的图片12、14、16、22、24、26的任何可缩放的层或视图。层的非限制性但是示出性的示例包括可缩放视频的空间层、质量层、时间层等,还包括多视图视频的视图。在可缩放视频中,层12之一是基础层12,其不包括任何可缩放扩展,且可由此在不参考其他层20中的任何图片22、24、26的情况下解码。同样的情况适用于多视角视频,其中,视图之一被称为基础视图,在本文中视为基础层。视频流1的其他层20或视图在本文中称为增强层,且通常至少部分地基于视频流1的基础层10中的图片12、14、16和/或低层中的图片来解码。
由此,步骤S2中对DPB中的参考图片24的POC值的重新计算意味着将参考图片24的原始POC值替换为使用POC重新计算值获得的已更新POC值,其中,如背景技术部分所讨论的,参考图片24的原始POC值是使用对POC值的最低有效位进行定义的语法要素或码字slice_pic_order_cnt_lsb以及根据先前图片的POC和slice_pic_order_cnt_lsb推导出的最高有效位计算出的。
在实施例中,步骤S1包括从随机访问点图片12的条带头获取的POC重新计算值。在另一实施例中,步骤S1包括从基础层10中的即刻解码刷新(IDR)图片12获取POC重新计算值。步骤S1的优选实施例包括从基础层10中的IDR图片12的条带头获取POC重新计算值。
因此,作为随机访问点图片的优选类型,信号通知POC重新计算值的随机访问点图片12优选是IDR图片12。这还意味着:在实施例中,POC重新计算值通常不出现在其他类型的随机访问点图片(例如,净随机访问(CRA)图片和断链访问(BLA)图片)的任何条带头中。在另一实施例中,可备选地或附加地在CRA图片和/或BLA图片中(例如在CRA图片和/或BLA图片的条带头中)信号通知POC重新计算值。
根据优选地IDR图片的条带头获取POC重新计算值优选地涉及在步骤S1中解析和解码该条带头来获得POC重新计算值。
图12是示出根据各种实施例的图11中示出的方法的附加可选步骤的流程图。该方法从图11中的步骤S1继续。下一步骤S10包括将基础层中的随机访问点(RAP)图片12的POC值设置为0(零)。因此,在优选实施例中,将随机访问点图片12(优选地,IDR图片12)的POC值设置为预定值0。这还意味着:针对随机访问点图片12,不需要信号通知用于确定POC值的语法要素或码字,例如,slice_pic_order_cnt_lsb。
步骤S10已被示出为在图11中的步骤S1之后。在备选方案中,步骤S10可在步骤S1之前执行,与步骤S1并行执行,或在步骤S1之后执行,或事实上在图11的步骤S2之前执行,与步骤S2并行执行,或在步骤S2之后执行。
在实施例中,视频流1包括增强层20中的与基础层10中的随机访问点图片12在相同时刻处的图片22。在这样的情况下,增强层20中的图片22和基础层10中的随机访问点图片12被视为属于相同的所谓访问单元(AU)30。
一般而言,针对包括N个层10、20(即,基础层10和N-1个增强层20)的视频流1,包括基础层10中的随机访问点图片12的AU30可包括从1到N幅图片10、20。
图12的步骤S11涉及以下情况:除了基础层10中的随机访问点图片12之外,AU30还包括增强层20中的至少一幅附加图片22。在这样的情况下,步骤S11优选地包括将位于多个层10、20的增强层20中并与随机访问点图片12属于相同访问单元30的图片22的POC值设置为0(零)。
因此,步骤S11优选地将在相同AU30中的增强层图片22的POC值设置为与随机访问点图片12的POC值相同的POC值,如上结合图12的步骤S10所讨论地对该POC值进行设置。
然而,鉴于随机访问点图片12优选地缺少用于定义POC值的任何语法要素或码字(slice_pic_order_cnt_lsb),位于增强层20中并属于AU30的图片22优选地具有这样的语法要素或码字slice_pic_order_cnt_lsb,例如存在于其条带头中。这还意味着在确定要用于图片22的POC值时优选不使用该语法要素或码字。与之进行清楚的对照,优选将图片22的POC值设置为0,即,等于相同AU30的随机访问点图片12的POC值。这意味着视频流1将会遵循之前提到的POC对齐规则。然后,方法继续到图12的步骤S2(或事实上到步骤S1或结束)。
图13是示出图11中的重新计算步骤的实施例的流程图。该方法从图11中的步骤S1继续,并延续到步骤S20。该步骤S20优选包括:针对解码器的DPB中的参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值是基于POC重新计算值和该相应原始POC值计算的。
因此,优选将参考图片的原始POC值替换为已更新POC值,该原始POC值通常是基于POClsb值和POCmsb值确定的,POClsb值是从语法要素或码字slice_pic_order_cnt_lsb获得的,POCmsb值是根据slice_pic_order_cnt_lsb和先前图片的POC值获得的。还基于图11的步骤S1中获取的POC重新计算值以及具体参考图片24的原始POC值计算该已更新POC值。
在具体实施例中,步骤S20优选包括:针对解码器的DPB中的每幅参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值是基于POC重新计算值和该相应原始POC值计算的。
因此,在该具体实施例中,针对DPB中的所有层10、20的参考图片24执行步骤S20中的POC值替换。
在其他实施例中,不需要针对DPB中存储的所有参考图片24执行步骤S20中的POC值替换。例如,可针对DPB中存储的那些参考图片24执行POC值的替换,该参考图片24属于当前层(即,基础层10)或属于依存于当前层10的层20(即,包括通过参考基础层10中的图片12、14来解码的图片22、24的增强层20)。
在具体实施例中,使用图11的步骤S1中获取的POC重新计算值推导POC递减值。在这样的情况下,步骤S20中替换原始POC值优选地包括:针对解码器的DPB中的参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值被计算为相应的原始POC值递减POC递减值。
这意味着在优选实施例中,已更新POC值=原始POC值-POC递减值。此外,POC递减值=function(POC重新计算值),即,优选地根据POC重新计算值推导出POC递减值。
在具体实施例中,利用使用与slice_pic_order_cnt_lsb具有相同数目的比特的固定长度代码,例如在基础层10的IDR图片12的条带头中信号通知POC重新计算值。在这样的情况下,POC重新计算值可以表示POC递减值的最低有效位。然后,可使用通用可变长度码字(UVLC)获得POC递减值的最高有效位。
在具体实施例中,方法从图11的步骤S1继续,并延续到图14的步骤S30。在该实施例中,如同随机访问点图片12是非随机访问点图片那样,在POC推导过程的步骤S30中推导出POC递减值,所述非随机访问点图片使用POC重新计算值作为POC递减值的最低有效位。然后,方法继续到图13的步骤S20。在这样的情况下,步骤S20包括:针对解码器的DPB中的参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值被计算为相应的POC原始值递减POC递减值。
POC推导过程是之前讨论的过程,其中,通过将POC值的最低有效位(POClsb)设置为由语法要素或码字(slice_pic_order_cnt_lsb)表示的值,并通过基于POClsb和先前图片的POC值确定POC值的最高有效位(POCmsb),获得非随机访问点图片的POC值。
这意味着:优选地,通过将POC递减值的最低有效位设置为POC重新计算值,并通过基于POC重新计算值和先前图片14的POC值确定POC递减值的最高有效位,在步骤S30中推导POC递减值。
在具体实施例中,[1]的第8.3.1节中的等式8-1被用于计算POC递减值的最高有效位,但不同之处在于将slice_pic_order_cnt_lsb替换为POC重新计算值。
这意味着:在实施例中,参数pocLsbDelta=poc_lsb_val,其中,pocLsbDelta表示POC递减值DeltaPocVal的最低有效位,且poc_lsb_val表示POC重新计算值。表示POC递减值的最高有效位的pocMsbDelta优选地是pocLsbDelta、prevPicOrderCntLsb和prevPicOrderCntMsb的函数,其中,prevPicOrderCntLsb和prevPicOrderCntMsb表示先前图片的POC值的最低有效位和最高有效位。
在具体实施例中,如下推导pocMsbDelta:
if((pocLsbDelta<prevPicOrderCntLsb)&&((prevPicOrderCntLsb-pocLsbDelta)>=(MaxPicOrderCntLsb/2)))
PicOrderCntMsb=prevPicOrderCntMsb+MaxPicOrderCntLsb
elseif((pocLsbDelta>prevPicOrderCntLsb)&&((pocLsbDelta-prevPicOrderCntLsb)>(MaxPicOrderCntLsb/2)))
PicOrderCntMsb=prevPicOrderCntMsb-MaxPicOrderCntLsbelse
PicOrderCntMsb=prevPicOrderCntMsb
其中,MaxPicOrderCntLsb表示POC值的最低有效位的最大值,且MaxPicOrderCntLsb=2(log2_max_pic_order_cnt_lsb_minus4+4),语法要素或码字log2_max_pic_order_cnt_lsb_minus4规定在解码过程中用于图序计数的变量MaxPicOrderCntLsb的值。
在这样的情况下,将POC递减值简单地获得为:DeltaPocVal=pocMsbDelta+pocLsbDelta。
位于DPB中且被用作本文中定义的参考图片的每幅图片的POC值(PicOrderCntVal)然后递减DeltaPocVal。
在另一实施例中,根据比特流中(例如,随机访问点图片的条带头中)的码字或标记,确定POC递减值的最高有效位。该标记可以是所谓的poc_msb_val_present_flag,在被设置为(1)时,该标记定义基础层中的随机访问点图片的条带头包括对POC递减值的最高有效位进行定义的码字poc_msb_val。因此,在这样的情况下,由于使用优选地位于基础层中的随机访问点图片的条带头中的UVLC码字来信号通知POC递减值的最高有效位,不需要执行POC推导过程。
在该实施例中,将POC递减值的最高有效位(pocMsbDelta)推导为pocMsbDelta=poc_msb_val*MaxPicOrderCntLsb。该操作基本上是用于得到要在最高有效位位置处出现的poc_msb_val的值的比特移位。然后,如上所述地计算递减值,即,DeltaPocVal=pocMsbDelta+pocLsbDelta。
图15是示出图14中的步骤S30的具体实现实施例的流程图。该方法从图11中的步骤S1继续。下一步骤S40包括将POC递减值的最低有效位(LSB)设置为POC重新计算值。下一步骤S41包括根据POC重新计算值和DPB中存储的基础层10的先前图片14的POC值确定POC重新计算值的最高有效位(MSB)。
在备选实施例中,步骤S40包括将POC递减值的最低有效位(LSB)设置为POC重新计算值。下一步骤S41包括根据针对视频流1信号通知的码字确定POC重新计算值的最高有效位(MSB)。该码字优选地对应于使用来计算先前图片的POC的码字和用于MaxPicOrderCntLsb的码字。备选地,该码字优选地对应于上述poc_msb_val。
因此,根据方案提供接收单元中的方法。接收单元也被称为解码器,这应被解释为接收单元包括解码器。
图16是示出由编码器执行的对应方法的流程图。方法包括:在步骤S50中,基于要用于访问单元30的POC值,计算POC重新计算值,访问单元包括视频流1的基础层中的随机访问点图片12,视频流1包括多层10、20图片12、14、16、22、24、26。下一步骤S51包括:生成包括POC重新计算值的随机访问点图片12的编码表示。使用POC重新计算值在步骤S52中重新计算编码器的DPB中的参考图片24的POC值。
因此,用于编码视频流1的图片10、20的编码器也具有对DPB的访问权,且基本上在编码过程期间执行与解码器类似的编码图片的解码,这一般称为编码器侧的图片重构。这意味着:编码器通过与解码器类似的方式来更新DPB中的参考图片24的POC值。
在实施例中,方法包括图17中示出的附加的、可选的步骤。然后,方法开始于决定要用于访问单元30的POC值。然后,方法继续到图16的步骤S50,其中,基于该所决定的POC值计算POC重新计算值。
在实施例中,在步骤S60中将访问单元的POC值决定为遵循先前提到的POC范围规则和POC推导过程。
例如,且如图5、6、8-10中所示,访问单元的POC值优选地在每个时刻(例如,1030、1032、1034)增加。在这样的情况下,可基于向视频流的先前的(优选地,最早的)访问单元指派的POC值来决定在步骤S60中决定的访问单元的POC值。例如,POCi=POCi-1+n,其中,POCi表示要针对当前访问单元决定的POC值,POCi-1表示向先前访问单元指派的POC值,以及n是预定的递增值,该递增值是大于等于1的整数,例如1或优选是2。
步骤S51中编码表示的生成优选地包括编码基础层10中的随机访问点图片12的条带头中的POC重新计算值,且更优选地包括编码基础层中的IDR图片12的条带头中的POC重新计算值。
因此,优选地将POC重新计算值作为语法要素或码字包括在条带头中,例如包括在条带头的条带头扩展部分中。
根据用于编码随机访问点图片(例如,IDR图片)的现有技术来通过其他方式执行步骤S51中的编码表示生成,但重要的例外是将POC重新计算值作为语法要素或码字包括在所产生的编码表示中,例如包括在随机访问点图片的条带头中。
图18是图16中示出中方法的附加、可选步骤的流程图。该方法从图16中的步骤S52继续。下一步骤S70包括将随机访问点图片12的POC值设置为0(零)。
在实施例中,除了基础层10中的随机访问点图片12之外,AU30包括一个增强层20或一个以上的增强层20中的至少一个其他图片22。在这样的情况下,方法优选地包括图19中示出的附加的、优选的步骤S80。方法从步骤S52继续,并包括在步骤S80中将AU30中的所有图片12、22的POC设置为0(零)。
在实施例中,重新计算POC值包括:如图20中所示,在步骤S90中,针对编码器的DPB中的参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值是基于POC重新计算值和该相应原始POC值计算的。
在另一实施例中,图20的步骤S90包括:针对编码器的DPB中的每幅图片24,将参考图片的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值是基于POC重新计算值和该相应原始POC值计算的。
图20的步骤S90与图13的步骤S20基本上以类似的方式进行,不同之处在于如今对编码器的DPB中的参考图片执行操作,而图13涉及在解码器侧发生的对应操作。
图21是示出图16中的计算步骤的具体实施例的流程图。方法开始于步骤S100中,其中,决定要用于AU30的POC递减值。下一步骤S101包括将POC重新计算值设置为POC递减值的最低有效位。然后,方法继续到图20的步骤S90,步骤S90包括:针对编码器的DPB中的参考图片24,将参考图片的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值被计算为相应的原始POC值递减POC递减值。
优选地在步骤S100中将POC递减值确定为遵循先前提到的POC范围规则和POC推导过程。
根据实施例的方案,提供以编码器作为示例的发送单元中的方法。在该方法中,决定要用于AU30的POC,基于要用于AU30的POC计算POC重新计算值。对例如IDR图片12的条带头中的POC重新计算值进行编码,且针对DPB中的每幅图片24,将原始POC值替换为已更新POC值,已更新POC值是针对DPB中的每幅图片24,基于POC重新计算值和相应原始POC值计算的。方法还包括将AU20中的所有图片12、22的POC值设置为0。
在此将进一步描述各种实现实施例。
实施例1
在一个实施例中,针对IDR图片扩展基础层的条带头,以携带POC重新计算值D。值D出现在基础层的所有IDR图片中。备选地,仅当信号通知IRAP图片在层之间未对齐时,值D也才可以出现在基础层的所有IDR图片中。
当接收基础层中的IDR图片时,以下动作由解码器进行。
a.从基础层中的IDR图片的条带头获取POC重新计算值(图11的步骤S1)。
b.将基础层中的IDR图片的POC值设置为0(图12的步骤S10)。
c.针对DPB中的每幅图片,将原始POC值替换为已更新POC值,已更新POC值是基于DPB中每幅图片的值D和相应原始POC值计算的。(图11的步骤S2,图13的步骤S20)
图22示意性地示出在接收基础层IDR图片时更新DPB中的增强层中的图片的POC。该图示出了解码器的DPB中的两幅图像,POC分别等于POCA和POCB。更新DPB中的每幅图像的POC值的解码器接收携带值D的IDR图片。
在编码访问单元时,以下动作由编码器进行,其中,在基础层中存在IDR图片。
a.决定要用于防问单元的POC(图17的步骤S60)。
b.基于用于访问单元的POC计算POC重新计算值D(图16的步骤S60)。
c.编码IDR图片的条带头中的值D(图16的步骤S51)。
d.针对DPB中的每幅图片,将原始POC值替换为已更新POC值,已更新POC值是基于DPB中每幅图片的值D和相应原始POC值计算的(图16的步骤S52和图20的步骤S90)。
e.将访问单元中的所有图片的POC值设置为0。(图18的步骤S70和图19的步骤S80)
优选地通过可变长度代码或固定长度代码来进行POC重新计算值D的信号通知。
实施例2(32比特D)
在实施例1中,重新计算值是完整的POC递减值。
当接收基础层10中的IDR图片12时,以下动作由解码器进行。
a.从基础层10中的IDR图片12的条带头获取POC重新计算值。
b.将基础层10中的IDR图片12的POC值设置为0。
c.针对DPB中的每幅图片14、16、24、26,利用值D来递减图片14、16、24、26的POC值。
图23A示出了在步骤a之后的解码器示例,且图23B示出在步骤c之后的解码器示例。
在编码包含基础层IDR图片12的访问单元30时,以下动作由编码器进行:
a.决定要用于访问单元30的POC。
b.将重新计算值设置为POC值。
c.在IDR图片12的条带头扩展中编码重新计算值D。
d.针对DPB中的每幅图片14、16、24、26,利用值D来递减POC值。
e.将访问单元30中的所有图片12、22的POC值设置为0。
图24A示出在步骤a、b和c之后基础层10中具有未对齐IRAP图片12的示例,图24B示出在步骤a、b、c、d和e之后基础层10中具有未对齐IRAP图片12的示例。
实施例3(IDR的POC推导)
在实施例1中,当接收基础层10中的IDR图片12时,以下动作由解码器进行。
a.从基础层10中的IDR图片12的条带头获取POC重新计算值。
b.将D用作poc_cnt_lsb,且执行POC推导过程,如同图片12是非IRAP图片一样。设P是根据该过程产生的POC。
c.将基础层10中的IDR图片12的POC值设置为0。
d.针对DPB中的每幅图片14、16、24、26,利用值P来递减POC值。
图25A示出了在步骤b之后的解码器示例,且图25B示出在步骤d之后的解码器示例。
在编码包含基础层IDR图片12的访问单元30时,以下动作由编码器进行:
a.决定要用于访问单元30的POCP。
b.将D设置为所决定的POC值P的lsb,且在IDR图片12的条带头扩展中编码D。
c.针对DPB中的每幅图片14、16、24、26,利用所决定的POC值P来递减POC值。
d.将访问单元30中的所有图片12、22的POC值设置为0。
图26A示出了在步骤b之后的编码器示例,且图26B示出在步骤e之后的编码器示例。
实施例4(仅发送POClsb)
在实施例1中,由POCLSB重新计算值D表示POC重新计算值。
要求编码器生成或解码器接收的比特流应该遵循以下要求:
a.当前图片和所有短期参考图片的POC值遵循POC范围规则。
b.在接收具有基础层IDR的访问单元时,在POC重新计算之后,在DPB中的所有图片的POC值必须是负的。换言之,不能存在按照解码顺序位于IDR防问单元之前的任何增强层图片,该增强层图片在IDR访问单元之后输出。
当接收基础层10中的IDR图片12时,以下动作由解码器进行。
a.根据基础层10中的IDR图片12的条带头扩展推导出POC重新计算值。
b.将基础层10中的IDR图片12的POC值设置为0。
c.针对DPB中的每幅图片14、16、24、26,首先将D与原始POC相加,且然后将POCmsb值设置为-1。
图27A示出了在步骤a之后在基础层10中具有未对齐IRAP图片12的示例,图27B示出了在步骤b之后在基础层10中具有未对齐IRAP图片12且将D相加的示例,以及图27C示出了在步骤c之后在基础层10中具有未对齐IRAP图片12的示例。
在编码包含基础层IDR图片12的访问单元时,以下动作由编码器进行:
a.决定要用于访问单元30的POC。
b.将重新计算值D设置为MaxPicOrderCntLsb减去所决定的POC的lsb。
c.在IDR图片12的条带头扩展中编码重新计算值D。
d.针对DPB中的每幅图片14、16、24、26,首先将D与POC相加,且然后将POCmsb设置为-1。
e.将访问单元30中的所有图片12的POC值设置为0。
实施例5(D的信号通知)
在任何的先前实施例中,通过以下步骤中的任何步骤进行在条带头中对重新计算值D的信号通知:
a.使用固定长度的比特来进行信号通知。
I.该长度取值32(实施例2)。
II.该长度与用于在条带头中信号通知POClsb的长度具有相同的值(实施例3和4)。
III.通过使用可变长度的比特来显式地信号通知该长度。
b.使用可变长度的比特来进行信号通知,例如,通过使用Exp-Golomb代码。
c.使用与用于信号通知POClsb的代码具有相同数目比特的固定长度代码。在另一UVLC码字中信号通知msb周期的数目(实施例2)。
实施例6(D的条件性使用)
在任何先前实施例中,条带头中重新计算值D的存在(和使用)以另一码字/标记/语法要素为条件。
控制重新计算值D的存在和使用的码字可以是新码字,例如idr_recalculation_value_present_flag,或者是现有码字,例如cross_layer_irap_aligned_flag。在该码字指示D不存在时,将重新计算值D推断为等于0。
实施例7(限制)
对问题的另一解决方案是向poc_reset_flag强加一组限制。可如SHVC规范中以下这样来制定限制:
a.当在layer_id等于0的访问单元中存在IDRNAL单元(例如,IDR_W_RADL或IDR_N_LP)时,对于layer_id大于0的访问单元中的所有视频编码层(VLC)NAL单元而言,poc_reset_flag应该等于1。
b.否则,poc_reset_flag应该等于0。
图28示出了该实施例的示例。
在接收增强层20的图片22时,以下动作由解码器进行:
a.如果存在在基础层10中具有IDR图片12的访问单元30且针对依存于基础层10的所有层20存在图片,则使用[2]中规定的poc_reset_flag将DPB中所有图片14、16、26的POC递减推导出的POC值。
b.如果存在在基础层10中具有IDR图片12的访问单元30且在依存于基础层10的至少一个层20存在图片,则使用[2]中规定的poc_reset_flag将所有层10、20的DPB中的图片14、16、26的POC递减推导出的POC值。这是可能的,因为保证推导出的POC值(递减值)在所有层10、20中相同。要注意到,也可以将推导出的POC值应用于在IDR访问单元30中不存在图片的层。
当在layer_id等于0的防问单元中存在IDRNAL单元(例如,IDR_W_RADL或IDR_N_LP)时,编码器可通过针对layer_id大于0的访问单元中的所有VLCNAL将poc_reset_flag设置为1来使用该实施例。对于所有其他的VLCNAL单元,将poc_reset_flag设置为0。
除了如上所述对poc_reset_flag的限制之外,强制编码器确保当基础层是IDR图片时在所有层中存在时间层0图片表示。
这些限制将会防止上述的不存在问题和时间层问题,并因此解决这些问题。误差回弹问题未被完全解决,但当图片丢失且解码器必须推断应该如何更新DPBPOC值时,该有限的编码器灵活性对于解码器是有帮助的。
实施例8(当前HEVC草案中的想法的示例实现)
此处的黑色文本与[2]相比未改变,加删除线的文本是提议的删除,以及倾斜文本是提议的添加。
F.7.3.6.1一般的条带段头语法
7.4.7.1一般条带段头语义
…
Slice_segment_header_extension_length规定以字节为单位的条带段头扩展数据的长度,不包括用于信号通知slice_segment_header_extension_length的比特自身。比特流一致性的要求是:当nuh_layer_id和cross_layer_irap_aligned_flag二者都等于0时,对于IDR_W_RADL和IDR_N_LPNAL单元而言,slice_segment_header_extension_length应该大于等于4。slice_segment_header_extension_length的值应该在0到256(含)的范围中。
Poc_decrement规定要用于当前图片的图序计数递减。当不存在时,将poc_decrement的值推断为等于0。
F.8.3.1针对图序计数的解码过程
该过程的输出是PicOrderCntVal,当前图片的图序计数。
…
-
-
DPB中的每幅图片的PicOrderCntVal递减poc_decrement。
当接收基础层10中的IDR图片12时,以下动作由解码器进行。
a.根据基础层10中的IDR图片12的条带头扩展推导出POC重新计算值。
b.将基础层10中的IDR图片12的POC值设置为0。
c.针对DPB中的每幅图片14、16、24、26,将原始POC值替换为通过将原始POC值的POCmsb设置为一1而推导出的已更新POC值。
d.将值D与DPB中的每幅图片14、16、24、26的已更新POC值相加。
图42A示出了在步骤b之后在基础层10中具有未对齐IRAP图片12的示例,图42B示出了在步骤c之后(在将msb设置为-1之后)在基础层10中具有未对齐IRAP图片12且将D相加的示例,以及图42C示出了在步骤d之后在基础层10中具有未对齐IRAP图片12的示例。
在编码包含基础层IDR图片12的访问单元30时,以下动作由编码器进行:
a.决定要用于访问单元30的POC。
b.将递减值D设置为MaxPicOrderCntLsb减去所决定的POC的lsb。
c.在IDR图片12的条带头扩展中编码递减值D。
d.针对DPB中的每幅图片14、16、24、26,首先将msb设置为-1,且然后将D与POC值相加。
e.针对访问单元30中的每幅增强层图片,使用专用POC来信号通知图片的POClsb值(以信号通知用于HEVC的slice_pic_order_cnt_lsb)。
f.将访问单元30中的所有图片12的POC值设置为0。
实施例9
图43示出了由三个层和五个访问单元30(AU0-AU4)组成的视频流的一部分。在所示出的示例中,层120A中的图片21、23、26依存于基础层10(层0)中的图片16、11、13,且层220B中的图片43、46也依存于基础层10中的图片16,但不依存于层120A中的图片。
在该示例中,AU1包含由码字poc_reset_idc和poc_reset_period_id表示的POC重设语法,暗示层120A中的图片的POC值。这将启动图43中示出的所谓的POC重设周期。在AU230中,在基础层10中存在IDR12,其中poc_reset_idc=3。这将重设DPB中的层220B图片46的POC值。然后,在AU3中,将基于上述码字再次重设层1的POC值。最后,在AU4中存在参考AU0图片46的层2图片43。为了使该图片43这样做,层2图片POC需要已被AU2中的IDR图片30重设。
实施例的另一方案涉及解码器100(参见图30),所述解码器被配置为:根据包括多层10、20图片12、14、16、22、24、26的视频流1的基础层10中的随机访问点图片12的编码表示,获取POC重新计算值。解码器100还被配置为使用POC重新计算值来重新计算解码器100的DPB110中的参考图片24的POC值。
在实施例中,解码器100优选被配置为从基础层10的IDR图片12的条带头获取POC重新计算值。
在实施例中,解码器100优选被配置为将基础层中的随机访问点图片12的POC值设置为0。
在实施例中,解码器100优选被配置为将位于多个层10、20的增强层20中并与随机访问点图片12属于相同AU30的图片22的POC值设置为0。
在实施例中,解码器优选被配置为:针对解码器100的DPB110中的参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值是基于POC重新计算值和该相应原始POC值计算的。
在实施例中,解码器优选被配置为:针对解码器100的DPB110中的每幅参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值是基于POC重新计算值和该相应原始POC值计算的。
在实施例中,解码器100优选被配置为在POC推导过程中推导出POC递减值,就如同随机访问点图片12是非随机访问点图片那样,所述非随机访问点图片使用POC重新计算值作为POC递减值的最低有效位。在该实施例中,解码器100优选被配置为:针对解码器100的DPB110的参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值被计算为相应的原始POC值递减POC递减值。
在实施例中,解码器100优选被配置为将POC递减值的最低有效位设置为POC重新计算值。在该实施例中,解码器100优选还被配置为:根据POC重新计算值和DPB110中存储的基础层10的先前图片14的POC值,确定POC递减值的最高有效位。
在实施例中,解码器100优选被配置为将POC递减值的最低有效位设置为POC重新计算值。在该实施例中,解码器100优选还被配置为:根据针对视频流1信号通知的码字,确定POC递减值的最高有效位。
将会意识到的是,可通过各种方式组合和重新布置本文中描述的方法和设备。
例如,可通过硬件、或由适合的处理电路执行的软件、或其组合来实现实施例。
本文所述的步骤、功能、过程、模块和/或框可以使用任何常规技术实现在硬件中,例如分立式电路或集成电路技术,包括通用电子电路和应用专用电路。
特定示例包括一个或多个合适配置的数字信号处理器和其他已知电子电路,例如用于执行特别功能的互连的分立逻辑门、或者应用专用集成电路(ASIC)。
图32是根据实施例的解码器300的硬件实现的示意框图。解码器300包括解析和获取单元310,被配置为获取POC重新计算值。解码器300还包括计算器320,被配置为重新计算POC值。
解析和获取单元310优选地与计算器320互连,以向计算器320转发解析和获取单元310获取的POC重新计算值,来在POC值的重新计算中使用。
备选地,本文中描述的步骤、功能、过程、模块和/或框的至少一部分可以实现在软件中,例如由合适的处理电路(例如,一个或多个处理器或处理单元)来执行的计算机程序。
处理电路的示例包括但不限于,一个或多个微处理器、一个或多个数字信号处理器(DSP)、一个或多个中央处理单元(CPU)、视频加速硬件、和/或任意合适的可编程逻辑电路,例如一个或多个现场可编程门阵列(FPGA)或者一个或多个可编程逻辑控制器(PLC)。
同样,可以理解,可以重复使用实现所提出的技术的任何常规设备或单元的通用处理能力。还可以例如通过重新编程现有的软件或者通过添加新的软件组件来重新使用现有的软件。
在具体示例中,解码器200包括图31中示出的处理器210和存储器220。存储器220包括处理器210可执行的指令,由此,处理器210用于获取POC重新计算值。处理器210还用于重新计算POC值。
图31中示出的存储器220优选地包括解码器200的DPB。
图40是示出包括处理器1110和相关联的存储器1120的用户终端1100的示例的示意框图。
在该具体示例中,本文中描述的步骤、功能、过程、模块和/或框的至少一部分实现在计算机程序中,计算机程序加载到存储器1120中用于包括处理器1110的处理电路的执行。处理器1110和存储器1120彼此互连,以实现正常的软件执行。可选的输入/输出还可与处理器1110和/或存储器1120互连,以实现相关数据的输入和/或输出,例如视频流的编码表示的输入和/或解码图片的输出。
术语“处理器”应当在一般意义上解释为能够执行程序代码或计算机程序指令以执行特定处理、确定或计算任务的任意系统或设备。
包括一个或多个处理器的处理电路因此被配置为在执行计算机程序时执行良好地定义的处理任务,例如,本文中描述的任务。
处理器不是必须专用于仅执行上述步骤、功能、过程和/或块,而是还可以执行其他的任务。
在具体实施例中,计算机程序1130包括指令,当由至少一个处理器1110执行所述指令时,所述指令使所述至少一个处理器:根据包括多层图片的视频流的基础层中的随机访问点图片的编码表示,获取POC重新计算值。还使所述至少一个处理器1110:使用POC重新计算值,重新计算DPB中的参考图片的POC值。
所提议的技术还提供载体1140,载体1140包括计算机程序1130,其中,所述载体是电子信号、光信号、电磁信号、磁信号、电信号、无线电信号、微波信号或计算机可读存储介质之一。
以示例的方式,软件或计算机程序可实现为计算机程序产品,其通常携带于或存储在计算机可读介质(具体地,非易失性介质)上。计算机可读介质可包括一个或多个可移除或不可移除的存储设备,包括但不限于只读存储器(ROM)、随机存取存储器(RAM)、紧致盘(CD)、数字多用途盘(DVD)、蓝光碟、通用串行总线存储器(USB)、硬盘驱动(HDD)存储设备、闪存、磁带或者任意其他常规存储设备。因而,计算机程序可加载到计算机或等效处理设备的操作存储器中,由其处理电路来执行。
因此,当被一个或多个处理器执行时,本文提出的流程图(一个或多个)可被认为是计算机流程图。对应的解码器(参见图33)可被定义为一组功能模块410、420,其中由处理器执行的每个步骤对应于功能模块410、420。在这种情形中,功能模块410、420被实现为在处理器上运行的计算机程序。因此,解码器400可以备选地被定义为功能模块410、420的组,其中功能模块被实现为在处理器上运行的计算机程序。
因此,驻留在存储器中的计算机程序可以被组织为合适的功能模块410、420,所述功能模块被配置为:当被处理器执行时,执行本文中所述步骤和/或任务的至少一部分。图33中示出了这些功能模块的示例。
图33的解码器400包括:获取模块410,用于根据包括多层图片的视频流的基础层中的随机防问点图片的编码表示,获取POC重新计算值。解码器400还包括:重新计算模块,用于使用POC重新计算值,重新计算解码器400的DPB430中的参考图片的POC值。
根据一个方案,以解码器作为示例来提供接收单元。接收单元包括:解码单元,用于从基础层中的IDR图片的条带头获取POC重新计算值,POC设置单元,用于将基础层中的IDR图片的POC值设置为0,以及POC确定单元,针对DPB中的每幅图片,被配置为将原始POC值替换为已更新POC值,已更新POC值是基于DPB中每幅图片的POC重新计算值和相应的原始POC值计算的。
HEVC中的解码图片缓冲器(DPB)是保存用于参考、输出重排序或输出延迟的解码图片的缓冲器。图片可由其POC值识别。然而,编码器也具有DPB的拷贝。
图34是接收单元500的示出,接收单元500包括被配置为接收比特流的输入单元510以及根据前述任意实施例的解码器100、200、300、400。
因此,输入单元510接收包括视频流的图片的编码表示的比特流,并将它们转发给解码器,以如本文中所述地解码POC重新计算。
输入单元510可被实现为用于比特流的无线接收的接收机或收发机。备选地,输入单元510可被实现为用于比特流的无线接收的通信端口,例如输入端口。
实施例的另一个方案涉及编码器,参见图35。编码器600被配置为:基于要用于AU30的POC值,计算POC重新计算值,所述访问单元包括视频流的基础层10中的随机访问点图片12,所述视频流包括多层10、20图片12、14、16、22、24、26。编码器600还被配置为:生成包括POC重新计算值的随机访问点图片12的编码表示。编码器600还被配置为使用POC重新计算值来重新计算编码器的DPB610中的参考图片24的POC值。
在实施例中,编码器600优选被配置为决定要用于AU30的POC值。
在实施例中,编码器600优选被配置为在基础层10的IDR图片12的条带中编码POC重新计算值。
在实施例中,编码器600优选被配置为将随机访问点图片12的POC值设置为0。
在实施例中,编码器600优选被配置为将AU30中的所有图片12、22的POC值设置为0。
在实施例中,编码器600被配置为:针对编码器600的DPB610中的参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值是基于POC重新计算值和该相应原始POC值计算的。
在实施例中,编码器600被配置为:针对编码器600的DPB610中的每幅参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值是基于POC重新计算值和该相应原始POC值计算的。
在实施例中,编码器600被配置为决定要用于AU30的POC递减值。在该实施例中,编码器600还被配置为:将POC重新计算值设置为POC递减值的最低有效位,且针对编码器600的DPB610中的参考图片24,将参考图片24的相应的原始POC值替换为相应的已更新POC值,该相应的已更新POC值被计算为相应的原始POC值递减POC递减值。
图37是根据实施例的编码器800的硬件实现的示意框图。编码器800包括被配置为计算POC重新计算值的计算器810。编码器800还包括被配置为生成编码表示的编码单元820和被配置为重新计算POC值的重新计算器830。
计算器810优选地连接到编码单元820和重新计算器830,以向这些单元820、830转发POC重新计算值。
在具体示例中,编码器700包括图36中示出的处理器710和存储器720。存储器720包括处理器710可执行的指令,由此,处理器710用于计算POC重新计算值,生成编码表示并重新计算POC值。
图36中示出的存储器720优选地包括编码器700的DPB。
在具体实施例中,如图40中所示,计算机程序1130包括指令,当由至少一个处理器1110执行所述指令时,所述指令使所述至少一个处理器:基于POC值计算POC重新计算值,以用于AU压缩包括多层图片的视频流的基础层中的随机访问点图片。还使所述至少一个处理器1110:生成包括POC重新计算值的随机访问点图片的编码表示。所述至少一个处理器1110还被配置为:使用POC重新计算值,重新计算DPB中的参考图片的POC值。
因此,驻留在存储器中的计算机程序可以被组织为合适的功能模块910、92、930,所述功能模块被配置为:当被处理器执行时,执行本文中所述步骤和/或任务的至少一部分。图38中示出了这些功能模块的示例。
图38的编码器900编码器包括:计算模块910,用于基于要用于AU的POC值,计算POC重新计算值,所述AU压缩视频流的基础层中的随机访问点图片,所述视频流包括多层图片。编码器900还包括:生成模块920,用于生成包括POC重新计算值的随机访问点图片的编码表示。编码器900还包括:重新计算模块930,用于使用POC重新计算值,重新计算DPB940中的参考图片的POC值。
根据一个方案,提供了一种由以编码器作为示例的发送单元。编码器包括:POC决定单元,被配置为决定要用于访问单元的POC,POC重新计算值计算单元,被配置为基于用于访问单元的POC计算POC重新计算值。其还包括:编码单元,用于例如在IDR图片的条带头中编码POC重新计算值,以及POC更新单元,被配置为针对DPB中的每幅图片,将原始POC值替换为已更新POC值,该已更新POC值是基于DPB中每幅图片的POC重新计算值和相应的原始POC值计算的,POC更新单元还被配置为将访问单元中的所有图片的POC值设置为0。
图39示出发送单元1000的实施例,发送单元1000包括根据本文中所述的任何实施例的编码器600、700、800、900以及被配置为发送比特流的输出单元1010。
因此,编码器600、700、800、900编码视频流的图片,以生成图片的编码表示,该图片形成要由输出单元1010发送的比特流。
输出单元1010可被实现为用于比特流的无线发送的发射机或收发机。备选地,输出单元1010可被实现为用于比特流的无线发送的通信端口,例如输出端口。
可在视频相机中或任何其他设备中实现发送单元和/或接收单元。还可以在网络节点中实现发送单元和/或接收单元。可通过包括处理器和存储器的计算机分别实现编码器和解码器。相应存储器包含所述处理器可执行的指令,由此,所述编码器用于执行本文中公开的方法,且所述解码器用于执行本文中公开的方法。实施例改进了在可缩放视频编码中IRAP图片未对齐时针对POC对齐的支持。与现有解决方案相比,其导致更大的编码器侧灵活性,并解决了误差回弹问题、不存在图片问题和时间层问题。
图41示意性地示出通信网络1200,通信网络1200包括网络节点(例如,以无线电基站、节点E或其他网络节点类型作为示例),网络节点包括根据实施例的接收单元500和/或发送单元1000。
当前在增强层图片中发送增量POC信息。对于解码器而言,接收IDR图片非常重要,如果没有IDR图片,解码器完全不知所措,因为由于所有的层都依存于IDR,解码器将不能够解码任何层。如果丢失了增强层图片,解码器可继续解码基础层。这将会是较低的质量,但不会导致灾难。因此,可以认为与任何其他图片相比,IDR图片得到更好的保护。
通过在基础层IDR图片中信号通知POC递减值,我们将与如何重新计算POC值有关的信息从较不重要的增强层移到我们认为正确接收到的IDR图片。
上述实施例被理解为本发明的几个说明性示例。本领域技术人员将理解,在不脱离本发明的范围的前提下,可以对实施例作出各种修改、合并和改变。尤其是,不同实施例中的不同部分的方案可在其他技术上可行配置中进行组合。然而,本发明的范围由所附权利要求限定。
参考文献
[1]ITU-T,TelecommunicationStandardizationSectorofITU,SeriesH:Audiovisualandmultimediasystems,H.265,Infrastructureofaudiovisualservices-Codingofmovingvideo,Highefficiencyvideocoding,April2013
[2]JointCollaborativeTeamonVideoCoding(JCT-VC)ofITU-TSG16WP3andISO/IECJTC1/SC29/WG11,14thMeeting:Vienna,AT,25July-2Aug.2013,Highefficiencyvideocoding(HEVC)scalableextensiondraft3,JCTVC-N1008_v3
Claims (46)
1.一种由解码器(100、200、300、400)执行的方法,所述方法包括:
从包括多层(10、20)图片(12、14、16、22、24、26)的视频流(1)的基础层(10)中的随机访问点图片(12)的编码表示中获取(S1)图序计数POC重新计算值;以及
使用所述POC重新计算值,重新计算(S2)所述解码器(100、200、300、400)的解码图片缓冲器(110、430)中的参考图片(24)的POC值。
2.根据权利要求1所述的方法,其中,获取(S1)所述POC重新计算值包括:从所述基础层(10)中的即刻解码刷新IDR图片(12)的条带头中获取(S1)所述POC重新计算值。
3.根据权利要求1或2所述的方法,还包括:将所述基础层(10)中的所述随机访问点图片(12)的POC值设置(S10)为0。
4.根据权利要求3所述的方法,还包括:将位于所述多个层(10、20)中的增强层(20)中并与所述随机访问点图片(12)属于相同访问单元(30)的图片(22)的POC值设置为0。
5.根据权利要求1至4中任一项所述的方法,其中,重新计算(S2)POC值包括:针对所述解码器(100、200、300、400)的所述解码图片缓冲器(110、430)中的所述参考图片(24),将所述参考图片(24)的相应的原始POC值替换(S20)为基于所述POC重新计算值和所述相应的原始POC值计算得到的相应的已更新POC值。
6.根据权利要求5所述的方法,其中,替换(S20)所述相应的原始POC值包括:针对所述解码器(100、200、300、400)的所述解码图片缓冲器(110、430)中的每幅参考图片(24),将所述参考图片(24)的所述相应的原始POC值替换(S20)为基于所述POC重新计算值和所述相应的原始POC值计算得到的所述相应的已更新POC值。
7.根据权利要求5或6所述的方法,还包括:
如同所述随机访问点图片(12)是非随机访问点图片那样,在POC推导过程中推导出(S30)POC递减值,所述非随机访问点图片使用所述POC重新计算值作为所述POC递减值的最低有效位,
其中,替换(S20)所述相应的原始POC值包括:针对所述解码器(100、200、300、400)的所述解码图片缓冲器(110、430)中的所述参考图片(24),将所述参考图片(24)的所述相应的原始POC值替换(S20)为相应的已更新POC值,所述相应的已更新POC值被计算为所述相应的原始POC值递减所述POC递减值。
8.根据权利要求7所述的方法,其中,推导(S30)所述POC递减值包括:
将所述POC递减值的所述最低有效位设置(S40)为所述POC重新计算值;以及
根据所述POC重新计算值和所述解码图片缓冲器(110、430)中存储的所述基础层(10)的先前图片(14)的POC值,确定(S41)所述POC递减值的最高有效位。
9.根据权利要求7所述的方法,其中,推导(S30)所述POC递减值包括:
将所述POC递减值的所述最低有效位设置(S40)为所述POC重新计算值;以及
根据针对所述视频流(1)信号通知的码字,确定(S41)所述POC递减值的最高有效位。
10.一种由编码器(600、700、800、900)执行的方法,所述方法包括:
基于要用于访问单元(30)的POC值,计算(S50)图序计数POC重新计算值,所述访问单元(30)包括视频流(1)的基础层(10)中的随机访问点图片(12),所述视频流包括多层(10、20)图片(12、14、16、22、24、26);
生成(S51)包括所述POC重新计算值的所述随机访问点图片(12)的编码表示;以及
使用所述POC重新计算值,重新计算(S52)所述编码器(600、700、800、900)的解码图片缓冲器(610、940)中的参考图片(24)的POC值。
11.根据权利要求10所述的方法,还包括:决定(S60)要用于所述访问单元(30)的所述POC值。
12.根据权利要求10或11所述的方法,其中,生成(S51)所述编码表示包括:在所述基础层(10)中的即刻解码刷新IDR图片(12)的条带头中编码(S51)所述POC重新计算值。
13.根据权利要求10至12中任一项所述的方法,还包括:将所述随机访问点图片(12)的POC值设置(S70)为0。
14.根据权利要求13所述的方法,其中,设置(S70)所述POC值包括:将所述访问单元(30)中的所有图片(12、22)的POC值设置(S80)为0。
15.根据权利要求10至14中任一项所述的方法,其中,重新计算(S52)POC值包括:针对所述编码器(600、700、800、900)的所述解码图片缓冲器(610、940)中的所述参考图片(24),将所述参考图片(24)的相应的原始POC值替换(S90)为基于所述POC重新计算值和所述相应的原始POC值计算得到的相应的已更新POC值。
16.根据权利要求15所述的方法,其中,替换(S90)所述相应的原始POC值包括:针对所述编码器(600、700、800、900)的所述解码图片缓冲器(610、940)中的每幅参考图片(24),将所述参考图片(24)的所述相应的原始POC值替换(S90)为基于所述POC重新计算值和所述相应的原始POC值计算得到的所述相应的已更新POC值。
17.根据权利要求15或16所述的方法,还包括:
决定(S100)要用于所述访问单元(30)的POC递减值;以及
将所述POC重新计算值设置(S101)为所述POC递减值的最低有效位,
其中,替换(S90)所述相应的原始POC值包括:针对所述编码器(600、700、800、900)的所述解码图片缓冲器(610、940)中的所述参考图片(24),将所述参考图片(24)的所述相应的原始POC值替换(S90)为相应的已更新POC值,所述相应的已更新POC值被计算为所述相应的原始POC值递减所述POC递减值。
18.一种解码器(100、200、300),其中
所述解码器(100、200、300)被配置为:从包括多层(10、20)图片(12、14、16、22、24、26)的视频流(1)的基础层(10)中的随机访问点图片(12)的编码表示中获取图序计数POC重新计算值;以及
所述解码器(100、200、300)被配置为:使用所述POC重新计算值重新计算所述解码器(100、200、300)的解码图片缓冲器(110)中的参考图片(24)的POC值。
19.根据权利要求18所述的解码器,其中,所述解码器(100、200、300)被配置为:从所述基础层(10)中的即刻解码刷新IDR图片(12)的条带头中获取所述POC重新计算值。
20.根据权利要求18或19所述的解码器,其中,所述解码器(100、200、300)被配置为:将所述基础层(10)中的所述随机访问点图片(12)的POC值设置为0。
21.根据权利要求20所述的解码器,其中,所述解码器(100、200、300)被配置为:将位于所述多个层(10、20)中的增强层20中并与所述随机访问点图片(12)属于相同访问单元(30)的图片(22)的POC值设置为0。
22.根据权利要求18至21中任一项所述的解码器,其中,所述解码器(100、200、300)被配置为:针对所述解码器(100、200、300)的所述解码图片缓冲器(110)中的所述参考图片(24),将所述参考图片(24)的相应的原始POC值替换为基于所述POC重新计算值和所述相应的原始POC值计算得到的相应的已更新POC值。
23.根据权利要求22所述的解码器,其中,所述解码器(100、200、300)被配置为:针对所述解码器(100、200、300)的所述解码图片缓冲器(110)中的每幅参考图片(24),将所述参考图片(24)的所述相应的原始POC值替换为基于所述POC重新计算值和所述相应的原始POC值计算得到的所述相应的已更新POC值。
24.根据权利要求22或23所述的解码器,其中,
所述解码器(100、200、300)被配置为:如同所述随机访问点图片(12)是非随机访问点图片那样,在POC推导过程中推导出POC递减值,所述非随机访问点图片使用所述POC重新计算值作为所述POC递减值的最低有效位;以及
所述解码器(100、200、300)被配置为:针对所述解码器(100、200、300)的所述解码图片缓冲器(110)中的所述参考图片(24),将所述参考图片(24)的所述相应的原始POC值替换为相应的已更新POC值,所述相应的已更新POC值被计算为所述相应的原始POC值递减所述POC递减值。
25.根据权利要求24所述的解码器,其中,
所述解码器(100、200、300)被配置为:将所述POC递减值的所述最低有效位设置为所述POC重新计算值;以及
所述解码器(100、200、300)被配置为:根据所述POC重新计算值和所述解码图片缓冲器(110)中存储的所述基础层(10)的先前图片(14)的POC值,确定所述POC递减值的最高有效位。
26.根据权利要求24所述的解码器,其中,
所述解码器(100、200、300)被配置为:将所述POC递减值的所述最低有效位设置为所述POC重新计算值;以及
所述解码器(100、200、300)被配置为:根据针对所述视频流(1)信号通知的码字,确定所述POC递减值的最高有效位。
27.根据权利要求18至26中任一项所述的解码器,还包括:
处理器(210);以及
存储器(220),所述存储器(220)包含所述处理器(210)可执行的指令,其中
所述处理器(210)用于获取所述POC重新计算值;以及
所述处理器(210)用于重新计算所述POC值。
28.根据权利要求18至26中任一项所述的解码器,还包括:
解析和获取单元(310),被配置为获取所述POC重新计算值;以及
计算器(320),被配置为重新计算所述POC值。
29.一种解码器(400),包括;
获取模块(410),用于从包括多层(10、20)图片(12、14、16、22、24、26)的视频流(1)的基础层(10)中的随机访问点图片(12)的编码表示中获取图序计数POC重新计算值;以及
重新计算模块(420),用于使用所述POC重新计算值,重新计算所述解码器(400)的解码图片缓冲器(430)中的参考图片(24)的POC值。
30.一种接收单元(500),包括:
输入单元(510),被配置为接收比特流;以及
根据权利要求18至29中任一项所述的解码器(100、200、300、400)。
31.一种编码器(600、700、800),其中
所述编码器(600、700、800)被配置为:基于要用于访问单元(30)的POC值,计算图序计数POC重新计算值,所述访问单元(30)包括视频流(1)的基础层(10)中的随机访问点图片(12),所述视频流包括多层(10、20)图片(12、14、16、22、24、26);
所述编码器(600、700、800)被配置为:生成包括所述POC重新计算值的所述随机访问点图片(12)的编码表示;以及
所述编码器(600、700、800)被配置为:使用所述POC重新计算值重新计算所述编码器(600、700、800)的解码图片缓冲器(610)中的参考图片(24)的POC值。
32.根据权利要求31所述的编码器,其中,所述编码器(600、700、800)被配置为:决定要用于所述访问单元(30)的所述POC值。
33.根据权利要求31或32所述的编码器,其中,所述编码器(600、700、800)被配置为:在所述基础层(10)中的即刻解码刷新IDR图片(12)的条带头中编码所述POC重新计算值。
34.据权利要求31至33中任一项所述的编码器,其中,所述编码器(600、700、800)被配置为:将所述随机访问点图片(12)的POC值设置为0。
35.根据权利要求34所述的编码器,其中,所述编码器(600、700、800)被配置为:将所述访问单元(30)中的所有图片(12、22)的POC值设置为0。
36.根据权利要求31至34中任一项所述的编码器,其中,所述编码器(600、700、800)被配置为:针对所述编码器(600、700、800)的所述解码图片缓冲器(610)中的所述参考图片(24),将所述参考图片(24)的相应的原始POC值替换为基于所述POC重新计算值和所述相应的原始POC值计算得到的相应的已更新POC值。
37.根据权利要求36所述的编码器,其中,所述编码器(600、700、800)被配置为:针对所述编码器(600、700、800)的所述解码图片缓冲器(610)中的每幅参考图片(24),将所述参考图片(24)的所述相应的原始POC值替换为基于所述POC重新计算值和所述相应的原始POC值计算得到的所述相应的已更新POC值。
38.根据权利要求36或37所述的编码器,其中,
所述编码器(600、700、800)被配置为:决定要用于所述访问单元(30)的POC递减值;
所述编码器(600、700、800)被配置为:将所述POC重新计算值设置为所述POC递减值的最低有效位;以及
所述编码器(600、700、800)被配置为:针对所述编码器(600、700、800)的所述解码图片缓冲器(610)中的所述参考图片(24),将所述参考图片(24)的所述相应的原始POC值替换为相应的已更新POC值,所述相应的已更新POC值被计算为所述相应的原始POC值递减所述POC递减值。
39.根据权利要求31至38中任一项所述的编码器,还包括:
处理器(710);以及
存储器(720),所述存储器(720)包含所述处理器(710)可执行的指令,其中
所述处理器(710)用于计算所述POC重新计算值;
所述处理器(710)用于生成所述编码表示;以及
所述处理器(710)用于重新计算所述POC值。
40.根据权利要求31至38中任一项所述的编码器,还包括:
计算器(810),被配置为计算所述POC重新计算值;
编码单元(820),被配置为生成所述编码表示;以及
重新计算器(830),被配置为重新计算所述POC值。
41.一种编码器(900),包括:
计算模块(910),用于基于要用于访问单元(30)的POC值,计算图序计数POC重新计算值,所述访问单元(30)包括视频流(1)的基础层(10)中的随机访问点图片(12),所述视频流包括多层(10、20)图片;
生成模块(920),用于生成包括所述POC重新计算值的所述随机访问点图片(12)的编码表示;以及
重新计算模块(930),用于使用所述POC重新计算值重新计算所述编码器(900)的解码图片缓冲器(940)中的参考图片(24)的POC值。
42.一种发送单元(1000),包括:
根据权利要求31到41中的任一项所述的编码器(600、700、800、900);以及
输出单元(1010),被配置为发送比特流。
43.一种网络节点(1210),包括根据权利要求30所述的接收单元(500)和/或根据权利要求42所述的发送单元(1000)。
44.一种包括指令的计算机程序(1130),当在至少一个处理器(1110)上执行所述指令时,所述指令使所述至少一个处理器(1110):
从包括多层(10、20)图片(12、14、16、22、24、26)的视频流(1)的基础层(10)中的随机访问点图片(12)的编码表示中获取图序计数POC重新计算值;以及
使用所述POC重新计算值,重新计算解码图片缓冲器(110、430)中的参考图片(24)的POC值。
45.一种包括指令的计算机程序(1130),当在至少一个处理器(1110)上执行所述指令时,所述指令使所述至少一个处理器(1110):
基于要用于访问单元(30)的POC值,计算图序计数POC重新计算值,所述访问单元(30)包括视频流(1)的基础层(10)中的随机访问点图片(12),所述视频流包括多层(10、20)图片(12、14、16、22、24、26):
生成包括所述POC重新计算值的所述随机访问点图片(12)的编码表示;以及
使用所述POC重新计算值重新计算解码图片缓冲器(610、940)中的参考图片(24)的POC值。
46.一种载体(1140),所述载体(1140)包括根据权利要求44或45所述的计算机程序(1130),其中,所述载体(1140)是电子信号、光信号、电磁信号、磁信号、电信号、无线电信号、微波信号或计算机可读存储介质之一。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361890449P | 2013-10-14 | 2013-10-14 | |
US61/890,449 | 2013-10-14 | ||
PCT/SE2014/050783 WO2015057124A1 (en) | 2013-10-14 | 2014-06-25 | Picture order count alignment in scalble video |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105659599A true CN105659599A (zh) | 2016-06-08 |
CN105659599B CN105659599B (zh) | 2019-04-12 |
Family
ID=51205542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480056364.XA Active CN105659599B (zh) | 2013-10-14 | 2014-06-25 | 可缩放视频中的图序计数对齐 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10306245B2 (zh) |
EP (1) | EP3058733B1 (zh) |
CN (1) | CN105659599B (zh) |
HU (1) | HUE032227T2 (zh) |
MX (1) | MX352916B (zh) |
WO (1) | WO2015057124A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018086363A1 (zh) * | 2016-11-14 | 2018-05-17 | 珠海格力电器股份有限公司 | 一种图像输出装置、方法及解码器 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9602822B2 (en) | 2013-04-17 | 2017-03-21 | Qualcomm Incorporated | Indication of cross-layer picture type alignment in multi-layer video coding |
WO2015056182A2 (en) * | 2013-10-15 | 2015-04-23 | Nokia Technologies Oy | Video encoding and decoding |
CN104754358B (zh) * | 2013-12-27 | 2019-02-19 | 中兴通讯股份有限公司 | 码流的生成和处理方法、装置及系统 |
US9832481B2 (en) * | 2014-01-03 | 2017-11-28 | Qualcomm Incorporated | Support of base layer of a different codec in multi-layer video coding |
WO2015105399A1 (ko) * | 2014-01-13 | 2015-07-16 | 삼성전자 주식회사 | 멀티 레이어 비디오 부호화 방법 및 장치, 멀티 레이어 비디오 복호화 방법 및 장치. |
WO2015140401A1 (en) * | 2014-03-17 | 2015-09-24 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding and decoding |
US9866851B2 (en) * | 2014-06-20 | 2018-01-09 | Qualcomm Incorporated | Full picture order count reset for multi-layer codecs |
US10455242B2 (en) * | 2015-03-04 | 2019-10-22 | Qualcomm Incorporated | Signaling output indications in codec-hybrid multi-layer video coding |
US10063861B2 (en) * | 2015-10-07 | 2018-08-28 | Qualcomm Incorporated | Methods and systems of performing predictive random access using a background picture |
US10623755B2 (en) * | 2016-05-23 | 2020-04-14 | Qualcomm Incorporated | End of sequence and end of bitstream NAL units in separate file tracks |
US11184607B2 (en) * | 2019-06-13 | 2021-11-23 | Qualcomm Incorporated | Same picture order count (POC) numbering for scalability support |
US11539957B2 (en) * | 2019-06-20 | 2022-12-27 | Tencent America LLC | Layered random access with reference picture resampling |
EP3984227A4 (en) * | 2019-07-27 | 2022-08-17 | Beijing Bytedance Network Technology Co., Ltd. | TOOL USE RESTRICTIONS BASED ON TYPES OF REFERENCE IMAGES |
US11356698B2 (en) | 2019-12-30 | 2022-06-07 | Tencent America LLC | Method for parameter set reference constraints in coded video stream |
US11228777B2 (en) * | 2019-12-30 | 2022-01-18 | Tencent America LLC | Method for layerwise random access in a coded video stream |
WO2021251886A1 (en) * | 2020-06-09 | 2021-12-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Providing semantic information with encoded image data |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523892A (zh) * | 2003-02-19 | 2004-08-25 | 松下电器产业株式会社 | 动态图像编码方法及动态图像解码方法 |
US20060013297A1 (en) * | 2004-07-14 | 2006-01-19 | Ntt Docomo, Inc. | Moving picture decoding method, moving picture decoding program, moving picture decoding apparatus, moving picture encoding method, moving picture encoding program, and moving picture encoding apparatus |
WO2013048311A1 (en) * | 2011-09-27 | 2013-04-04 | Telefonaktiebolaget L M Ericsson (Publ) | Decoders and methods thereof for managing pictures in video decoding process |
CN105122814A (zh) * | 2013-04-08 | 2015-12-02 | 高通股份有限公司 | 可包含未对准irap图片的多层位流的跨层poc对准 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140030143A1 (en) * | 2012-07-27 | 2014-01-30 | Alexander Siobhan | Money Air Freshner |
US9628820B2 (en) * | 2013-11-19 | 2017-04-18 | Qualcomm Incorporated | POC value design for multi-layer video coding |
-
2014
- 2014-06-25 MX MX2016004449A patent/MX352916B/es active IP Right Grant
- 2014-06-25 US US14/786,116 patent/US10306245B2/en active Active
- 2014-06-25 HU HUE14739576A patent/HUE032227T2/en unknown
- 2014-06-25 CN CN201480056364.XA patent/CN105659599B/zh active Active
- 2014-06-25 EP EP14739576.8A patent/EP3058733B1/en active Active
- 2014-06-25 WO PCT/SE2014/050783 patent/WO2015057124A1/en active Application Filing
-
2019
- 2019-03-29 US US16/370,001 patent/US10743006B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523892A (zh) * | 2003-02-19 | 2004-08-25 | 松下电器产业株式会社 | 动态图像编码方法及动态图像解码方法 |
US20060013297A1 (en) * | 2004-07-14 | 2006-01-19 | Ntt Docomo, Inc. | Moving picture decoding method, moving picture decoding program, moving picture decoding apparatus, moving picture encoding method, moving picture encoding program, and moving picture encoding apparatus |
WO2013048311A1 (en) * | 2011-09-27 | 2013-04-04 | Telefonaktiebolaget L M Ericsson (Publ) | Decoders and methods thereof for managing pictures in video decoding process |
CN105122814A (zh) * | 2013-04-08 | 2015-12-02 | 高通股份有限公司 | 可包含未对准irap图片的多层位流的跨层poc对准 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018086363A1 (zh) * | 2016-11-14 | 2018-05-17 | 珠海格力电器股份有限公司 | 一种图像输出装置、方法及解码器 |
Also Published As
Publication number | Publication date |
---|---|
WO2015057124A1 (en) | 2015-04-23 |
MX352916B (es) | 2017-12-14 |
CN105659599B (zh) | 2019-04-12 |
US10743006B2 (en) | 2020-08-11 |
US10306245B2 (en) | 2019-05-28 |
US20160088306A1 (en) | 2016-03-24 |
MX2016004449A (es) | 2016-06-21 |
US20190230371A1 (en) | 2019-07-25 |
EP3058733B1 (en) | 2017-01-04 |
HUE032227T2 (en) | 2017-09-28 |
EP3058733A1 (en) | 2016-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105659599A (zh) | 可缩放视频中的图序计数对齐 | |
JP2015517277A (ja) | ストリーム適応およびスプライシングに対するサポートが強化されたビデオコーディング | |
US9686542B2 (en) | Network abstraction layer header design | |
HUE028853T2 (en) | Indication of reference image | |
CN105025303A (zh) | 视频序列图像的解码和编码 | |
US10097836B2 (en) | Method and device to mark a reference picture for video coding | |
JP2023507348A (ja) | ビデオストリームにおいて異なるnalユニットタイプのnalユニットを混合するためのデコーダ、エンコーダおよび方法 | |
US11770547B2 (en) | Methods of reference picture indication for video coding and related apparatuses | |
JP7414856B2 (ja) | ビデオコーディングレイヤアップスイッチング指示 | |
JP3609814B2 (ja) | 可変長復号化方法及び装置 | |
US20140233653A1 (en) | Decoder and encoder for picture outputting and methods thereof | |
JP3766426B2 (ja) | 可変長符号化方法及び装置 | |
JP3579411B2 (ja) | 可変長符号化方法及び装置 | |
JP3233360B2 (ja) | 可変長復号化方法及び装置 | |
JP3609813B2 (ja) | 可変長符号化方法及び装置 | |
JP3869342B2 (ja) | 可変長復号化方法及び装置 | |
JP3579410B2 (ja) | 可変長符号化方法及び装置 | |
JP3612314B2 (ja) | 可変長符号化方法及び装置 | |
JP3866687B2 (ja) | 可変長符号化方法及び装置 | |
JP3944049B2 (ja) | 可変長復号化方法及び装置 | |
JP3764466B2 (ja) | 可変長復号化方法及び装置 | |
JP3822630B2 (ja) | 可変長復号化方法及び装置 | |
JP2001308716A (ja) | 可変長符号化方法及び装置 | |
JP2001007708A (ja) | 可変長符号化方法及び装置 | |
JP2003198380A (ja) | 可変長符号化方法及び装置 |
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 |