使用编码图片缓存器的视频编码的制作方法
未命名
10-09
阅读:98
评论:0
1.本技术涉及视频编码和编码图片缓存器在视频编码中的使用。
背景技术:
2.假设参考解码器及其用于检查比特流和解码器一致性的用途是每个视频编码标准(例如,vvc)的基本组成部分。
3.为了进行这种一致性检查,规定了hrd缓存器模型,其包括假设流调度器(hss)、编码图片缓存器(cpb)、解码过程(其被认为是瞬时的)、解码图片缓存器(dbp)和输出裁剪过程,如图17所示。
4.该模型定义了比特流被馈送到编码图片缓存器的定时和比特率、其解码单元(在低延迟操作模式下为接入单元或vcl nal单元)从cpb中移除并立即被解码的时间、以及图片从dpb中输出的输出时间。
5.只有通过这样做,才有可能定义解码器所需的cpb大小,以避免缓存器上溢(发送给解码器的数据多于可以保留在cpb中的数据)或下溢(较少的数据以低于所需的比特率发送给解码器),并且来自au的必要数据未在正确的解码时间出现在解码器处。
6.最新的视频编码标准规定了不同的参数来描述比特流和hrd要求以及缓存器模型。
7.例如,在hevc中,hrd_parameters是针对子层来定义的,并且描述了bitrate(i)和cpbsize(i)的一个或多个元组,这些元组指示如果hss以bitrate(i)的比特率馈送大小为cpbsize(i)的cpb,将不会发生上溢或下溢。换言之,当遵守这些比特率和cpb大小元组时,可以保证连续的解码。
8.结合hrd_parameter语法元素,附加定时信息存在于比特流中,该附加定时信息规定每个图片自cpb的移除时间,即,该信息指示属于每个图片的vcl nal单元向解码发送的时间。
9.相关信息存在于具有语法元素或变量initialcpbremovaldelay(i)、initialcpbremovaldelayoffset(i)和aucpbremovaldelay的缓存周期sei消息中以及存在于具有aucpbremovaldelay的图片定时sei消息中。
10.然而,取决于应用和传输信道,将会需要有关针对许多比特率的hrd参数的信息,以便能够根据比特率进行微调。然而,这将需要大量hrd参数的消耗比特的传输用于bitrate(i)的密集选择。针对以合理的开销发送hrd信息的大量比特率来说,如果手边有允许正确的hrd参数化的概念,即不导致cpb下溢或上溢的概念,这将是有利的。
技术实现要素:
11.因此,本发明的目的是提供一种使用编码图片缓存操作的视频编解码器,该编码图片缓存操作在用于hrd信号化的比特消耗的一方面与针对许多比特率场景确定hrd参数的有效方式之间产生更好的折衷。
12.实施例可以具有用于视频解码的装置,所述装置具有编码图片缓存器和解码图片缓存器(dpb),被配置为接收数据流,该数据流具有按照编码顺序编码到其中的视频的图片作为接入单元序列,使用所选择的比特率将所述接入单元序列顺序地馈送到cpb中,其中暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直至达到所述虚拟可用时间,所述时间帧移除光栅针对按照所述编码顺序的第一接入单元提前所选择的时间移除延迟,而针对按照所述编码顺序的后续接入单元提前所选择的时间移除延迟与所选择的时间偏移之和;使用时间光栅[removaltime]逐au地从cpb中移除au,从数据流中提取与第一操作点相关的第一cpb参数和与第二操作点相关的第二cpb参数,所述第一cpb参数和第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,所述第一cpb参数至少在预定比特率方面不同于所述第二cpb参数,通过以所选择的比特率在由所述第一cpb参数指示的预定时间偏移与由所述第二cpb参数指示的预定时间偏移之间进行插值来确定所选择的时间偏移,以及通过以所选择的比特率在由所述第一cpb参数指示的预定时间移除延迟与由所述第二cpb参数指示的预定时间移除延迟之间进行插值来确定所选择的时间移除延迟,使用根据存储在dpb中的被参考的参考图片的图片间预测对从cpb移除的当前au进行解码,以获得解码图片,以及将所述解码图片插入到dpb中,向存储在dpb中的每个参考图片指派作为短期参考图片、长期参考图片、以及不用于参考的图片之一的分类,从当前au中读取dpb模式信息,如果所述dpb模式信息指示第一模式,则根据fifo策略,从dpb中移除被分类为短期图片的一个或多个参考图片,如果dpb模式信息指示第二模式,则读取所述当前au中的具有至少一个命令的存储器管理控制信息,并执行所述至少一个命令以改变指派给存储在dpb中的参考图片中的至少一个的分类,以及使用dpb中的参考图片的分类,以管理从dpb中的参考图片移除。
[0013]
另一实施例可以具有用于将视频编码为数据流的装置,其中,应通过将数据流馈送到包括编码图片缓存器(cpb)的解码器来解码数据流,所述装置被配置为:将按照编码顺序进行编码的视频的图片编码到数据流作为接入单元au序列,确定与第一操作点相关的第一cpb参数和与第二操作点相关的第二cpb参数,所述第一cpb参数和所述第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,所述第一cpb参数至少在预定比特率方面不同于所述第二cpb参数,以及执行所述确定,使得以多个所选择的比特率中的每个所选择的比特率在所述第一cpb参数的预定时间偏移与所述第二cpb参数的预定时间偏移之间进行插值产生插值后的时间偏移和插值后的时间移除延迟,从而通过以下方式经由cpb将数据流馈送到解码器:使用相应的所选择的比特率将所述au序列顺序地馈送到cpb中,其中暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直到达到所述虚拟可用时间,所述虚拟可用时间针对按照所述编码顺序的第一接入单元提前插值后的时间移除延迟,而针对按照所述编码顺序的后续接入单元提前插值后的时间移除延迟与插值后的时间偏移之和;使用时间光栅逐au地从cpb中移除au,不导致任何下溢和任何上溢,以及将cpb参数编码到数据流中,其中,所述装置被配置为:在对所述au进行编码时,使用根据存储在dpb中的被参考的参考图片的图片间预测,将当前图片编码到当前au中,以及将dpb中的当前图片的解码版本插入到dpb中,向存储在dpb中的每个参考图片指派作为短期参考图片、长期参考图片、以及不用于参考的图片之一的分类,将dpb模式信息写入当前au,如果dpb模式信息指示第一模式,则根据fifo策略从dpb中移除被
分类为短期图片的一个或多个参考图片,如果dpb模式信息指示第二模式,则将具有至少一个命令的存储器管理控制信息写入当前au,所述命令指示改变指派给存储在dpb中的参考图片中的至少一个的分类,其中,dpb中的参考图片的分类用于管理从dpb中的参考图片移除。
[0014]
根据另一实施例,一种通过使用编码图片缓存器和解码图片缓存器(dpb)进行视频解码的方法可以具有以下步骤:接收数据流,该数据流具有按照编码顺序编码到其中的视频的图片作为接入单元序列,使用所选择的比特率将所述接入单元序列顺序地馈送到cpb中,其中暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直至达到所述虚拟可用时间,所述时间帧移除光栅针对按照所述编码顺序的第一接入单元提前所选择的时间移除延迟,而针对按照所述编码顺序的后续接入单元提前所选择的时间移除延迟与所选择的时间偏移之和;使用时间光栅[removaltime]逐au地从cpb中移除au,从数据流中提取与第一操作点相关的第一cpb参数和与第二操作点相关的第二cpb参数,所述第一cpb参数和第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,所述第一cpb参数至少在预定比特率方面不同于所述第二cpb参数,通过以所选择的比特率在由所述第一cpb参数指示的预定时间偏移与由所述第二cpb参数指示的预定时间偏移之间进行插值来确定所选择的时间偏移,以及通过以所选择的比特率在由所述第一cpb参数指示的预定时间移除延迟与由所述第二cpb参数指示的预定时间移除延迟之间进行插值来确定所选择的时间移除延迟,使用根据存储在dpb中的被参考的参考图片的图片间预测对从cpb移除的当前au进行解码,以获得解码图片,以及将所述解码图片插入到dpb中,向存储在dpb中的每个参考图片指派作为短期参考图片、长期参考图片、以及不用于参考的图片之一的分类,从当前au中读取dpb模式信息,如果所述dpb模式信息指示第一模式,则根据fifo策略,从dpb中移除被分类为短期图片的一个或多个参考图片,如果dpb模式信息指示第二模式,则读取所述当前au中的具有至少一个命令的存储器管理控制信息,并执行所述至少一个命令以改变指派给存储在dpb中的参考图片中的至少一个的分类,以及使用dpb中的参考图片的分类,以管理从dpb中的参考图片移除。
[0015]
另一实施例可以具有视频被编码到其中并且具有第一cpb参数和第二cpb参数的数据流,使得上述发明方法不导致cpb上溢和下溢。
[0016]
本发明的基本思想是,可以使用以所选择的比特率显式地用信号发送的cpb(或hrd)参数之间的插值来实现cpb参数传输容量与cpb参数化有效性之间的良好折衷,并且可以具体地以有效方式进行,即,以导致安全和正确的cpb操作而没有下溢和上溢的方式和以下方式,根据该方式,例如由显式地用信号发送的cpb参数指示的cpb大小不必被提供有安全偏移来考虑插值相关的意外情况,即使显式地用信号发送的cpb参数除了指示针对显式地用信号发送的操作点的cpb大小和比特率之外还指示针对这些操作点的预定时间偏移和预定时间移除延迟。具体地,根据该思想,在解码侧,针对所选择的比特率的时间偏移和时间移除延迟二者可以根据用信号发送的cpb参数通过以所选择的比特率在该偏移与延迟的对应值之间进行插值来确定。然后,这种插值后的/所选择的时间偏移可以用于使用所选择的比特率(即,通过暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直到达到所述虚拟可用时间,所述虚拟可用时间针对按照编码顺序的第一接入单元提前所选择的/插值后的时间移除延迟,而针对按照编码顺序的后续接入单元提前所选择的/
插值后的时间移除延迟与所选择的时间偏移之和),将视频数据流的接入单元序列顺序地馈送到编码图片缓存器中。使用时间光栅,然后可以从编码图片缓存器中移除接入单元。尽管在解码侧仅必须执行插值来确定所选择的时间偏移和所选择的时间移除延迟,但编码器根据操作点的cpb参数,以考虑插值的方式(即,以使得针对时间偏移和时间移除延迟的相应的所选择的/插值后的值不导致下溢或上溢的方式),对显式用信号发送的与显式准备的视频数据流的操作点相关的cpb参数进行设置。
附图说明
[0017]
下面参考附图描述本技术的实施例,在附图中:
[0018]
图1示出了根据其可以实现本技术的实施例的编码器的可能实现的框图;
[0019]
图2示出了根据其可以实现本技术的实施例的解码器的可能实现的框图,并且该解码器适合于图1的编码器;
[0020]
图3示出了根据本技术的实施例的用于解码的装置的框图;
[0021]
图4示出了cpb参数编码和其间插值的示意图;
[0022]
图5在左侧示出了cpb馈送器的填充状态图,并且在右侧示出了cpb填充状态图,其中,上半部分示出了后续的、非第一接入单元不使用时间偏移的示例,以及下半部分示出了后续的、非第一接入单元使用时间偏移的示例;
[0023]
图6至图14示出了针对cpb参数比特率、其间所选择的比特率和时间偏移设置的不同示例的cpb缓存器填充状态;
[0024]
图15示出了图3的用于管理dpb的装置的操作模式的示例的示意图;
[0025]
图16示出了根据本技术的实施例的用于编码的装置的框图;以及
[0026]
图17示出了已知hrd缓存器模型的框图。
具体实施方式
[0027]
在继续描述本说明书的介绍部分并说明在针对hrd操作的操作点方面提供高度灵活性的愿望所涉及的问题之前,提供了视频编解码器的初步示例,随后描述的实施例可以在其中建立。然而,应注意,视频编解码器的这些示例不应被视为限制本技术后续说明的实施例。
[0028]
图1示出了被配置为将视频12编码为比特流14的编码器10。编码器10使用图片编码顺序将视频12的图片16编码为比特流14,该图片编码顺序可以不同于在呈现视频12时顺序地呈现或输出图片16的呈现时间顺序18。图1还示出了编码器10的可能实施方式,但再次注意,关于图1阐述的细节不限制下面更详细描述的本技术的实施例。尽管随后应用,但编码器10的编码可以不包括帧内预测、可以不包括帧间预测、可以不按块进行操作、可以不使用变换残差编码、可以有损或无损或以其组合操作。
[0029]
图1的编码器10通过使用预测执行编码。以逐块方式,编码器10预测当前图片,或更准确地说,预测该图片的当前编码部分,并通过在减法器22处从当前图片26的原始版本减去预测信号24来形成预测残差20。然后,残差编码器28将预测残差20编码到比特流14中,其中,残差编码可以是有损的,并且例如可以包括使残差信号20变换到变换域并对从变换得到的变换系数进行熵编码。为了基于视频12的已编码部分的可重构版本来获得预测信号
24,残差解码器30反转残差编码并通过反变换从变换系数中产生残差信号32,该残差信号32与残差信号20相差由残差编码器28引入的损失。为了重构当前图片,或更准确地说,重构当前图片的当前编码块,通过加法器34将残差信号32与预测信号24相加以产生重构信号36。可选地,环路滤波器38使重构信号38经受某种环路滤波,并且滤波后的信号40被输入到环路缓存器42中。因此,环路缓存器42分别缓存已编码图片的重构版本和当前图片的重构部分。基于这些重构版本44,以及可选地,基于当前图片的已编码部分的未滤波重构版本36,预测级46确定预测信号24。
[0030]
编码器10使用率失真优化来执行许多编码决策。例如,预测器46选择若干编码模式之一,该若干编码模式包括例如一种或多种帧间预测模式和一种或多种帧内预测模式、以及可选地,它们以编码块的粒度的组合。以这些编码块的粒度,或备选地,以这些编码块被进一步细分成的预测块的粒度,预测器46确定适合于所选择的预测模式的预测参数,例如针对帧间预测块的一个或多个运动矢量、或针对帧内预测块的帧内预测模式。残差编码器28以残差块的粒度执行残差编码,该残差块可选地可以与编码块或预测块中的任何一个重合,或可以是这些块中的任何一个块的进一步细分或可以来自当前图片到残差块的另一独立细分。甚至前述细分也是由编码器10确定的。这些编码决策(即,细分信息、预测模式、预测参数和残差数据)由编码器10使用例如熵编码编码到比特流14中。
[0031]
每个图片16由编码器10编码到比特流14的连续部分48(被称为接入单元)中。因此,比特流14中的接入单元48的序列具有顺序地(即,按照前述图片编码顺序)编码到其中的图片16。
[0032]
图2示出了适合于图1的编码器10的解码器100。解码器100通过从每个接入单元48解码视频12’的相应图片16’,从比特流14中解码图1的视频12的重构版本12’。为此,解码器100在内部被解释为如图1的编码器10的预测环路的重构部分。也就是说,解码器100包括从比特流14重构残差信号32的残差解码器130。预测信号124在加法器134处与该残差信号132相加以产生重构信号136。可选的环路滤波器138对重构信号136进行滤波以产生滤波后的重构信号140,然后该滤波后的重构信号140被缓存在环路缓存器142中。缓存且滤波后的重构信号144由解码器100从该缓存器中输出,即,缓存且重构的信号包含重构图片16’,并且按照呈现时间顺序从缓存器142输出这些图片16’。此外,预测器或预测单元146基于信号144、以及可选地,重构信号136来执行预测,以产生预测信号124。解码器例如使用熵解码从比特流14获得用于解码并由编码器10使用率/失真优化确定的所有必要信息,例如细分信息、预测模式决策、预测参数和残差数据。如上所述,残差数据可以包括变换系数。
[0033]
编码器10可以以使得平均而言视频12以特定比特率在比特流14中被编码(即,使得平均而言图片16使用特定比特数被编码到比特流14中)的方式执行其编码任务。然而,由于不同的图片内容复杂度、改变的场景内容和不同编码的图片(例如i帧、p帧和b帧),针对每个图片16在比特流14中花费的比特数可以变化。即,每个接入单元48的大小或比特的数量可以变化。为了保证在解码器100处无中断地播放视频12’,编码器10为比特流14提供cpb参数。倘若以某种预定义方式经由解码图片缓存器200向解码器100进行馈送,则这些cpb参数保证解码器100进行这种无中断或无问题的解码。也就是说,cpb参数是指图3所示的装置,其中,馈送器202经由编码图片缓存器200向解码器100馈送,馈送器202接收比特流14并且经由编码图片缓存器200向解码器100馈送比特流14,使得解码器100继而及时接入比特
流14的接入单元48,从而可以按照呈现时间顺序无中断地输出视频12’的图片16’。
[0034]
针对若干个所谓的操作点opi,cpb参数由编码器10写入比特流14。每个操作点opi是指馈送器202将比特流14(即,接入单元48的序列)馈送到编码图片缓存器200中的不同bitrate(i)。也就是说,针对每个操作点opi,cpb参数300指示它们应用的比特率。此外,cpb参数300指示编码图片缓存器200的编码图片缓存器大小,当以相应比特率向解码器100馈送时,该编码图片缓存器大小足以包含最完整的状态。此外,由cpb参数300i指示的信息指示时间延迟,以该时间延迟,相对于比特流14的第一比特被输入到编码图片缓存器200中的时间点,分别地,第一接入单元从编码图片缓存器200中移除并传递给解码器100。术语“第一”可以指图片编码顺序和某一缓存周期,即图片的子序列。此外,cpb参数300i指示时间偏移,以该时间偏移,允许跟随前述第一接入单元的后续接入单元的馈送在它们的由常规时间光栅确定、被延迟前述时间延迟的常规馈送之前被馈送到解码图片缓存器200中。图4中未示出,但可选地,cpb参数300i指示另一信息,例如揭示或指示或允许从中导出以下内容的信息:逐接入单元地从编码图片缓存器200中移除的刚刚提到的比特流14所在的时间光栅,以由解码器100进行解码,如刚刚所提到,该时间光栅被延迟该时间延迟。因此,时间光栅与视频12的帧速率相关,以便允许解码器100以足以以该帧速率输出这些图片16’的速率恢复图片16’。时间光栅的可选指示可以是所有操作点来说是公共的,并且针对所有操作点在比特流中公共地指示。此外,代替用信号发送关于时间光栅的任何信息,该信息可以是固定的并且编码器和解码器预先已知。
[0035]
图4示出了针对两个操作点opi的cpb参数300i,即,两个操作点op
i-1
和opi是指两个不同的比特率和cpb大小。针对这些比特率bitrate(i-1)与bitrate(i)之间的比特率,比特流14中不存在这种cpb参数的其他实例。如上面已经指示的,本技术的实施例将通过以下可能性来填补这一间隙:通过插值导出针对bitrate(i-1)与bitrate(i)之间的某个所选择的比特率的cpb参数的这种缺失实例。
[0036]
注意,由于前述时间光栅与帧速率相关的事实,编码器10可以公共地针对所有cpb参数或cpb参数的所有实例(或甚至换言之,公共地针对所有操作点)仅指示该时间光栅或关于其的信息一次。此外,甚至可以没有关于时间光栅的信息在数据流中传送,那么时间光栅在编码器与解码器之间是预先已知的,例如,由于在编码器与解码器之间预知关于视频12和12’分别的预定帧速率,以及某一图片组(gop)结构和图片编码顺序(一方面)与呈现时间顺序18(另一方面)的关系。
[0037]
现在继续对本说明书的介绍部分的描述。如上所述,cpb参数可以通过sei消息来传送。initialcpbremovaldelay对应于图4的时间延迟,并且initialcpbremovaldelayoffset对应于图4的时间偏移。aucpbremovaldelay指示时间光栅,即从dpb中移除连续au之间的时间距离。如所说明的,图4的cpb参数可以在缓存周期sei消息中传送,该缓存周期sei消息指示针对所谓的缓存周期(即,与包括该缓存周期的第一接入单元和后续接入单元的某一接入单元序列相对应的视频的图片序列)经由编码图片缓存器200向解码器100馈送的正确调度。
[0038]
如本说明书的介绍部分所说明的那样,已知cpb参数要在比特流中传输,但这些cpb参数指某些特定的比特率。
[0039]
针对最基本的操作,仅使用initialcpbremovaldelay(i)和aucpbremovaldelay。
[0040]
在那种情况下,被解码的第一接入单元是具有其相应缓存周期sei消息的随机接入点,并且时间0被定义为随机接入点的第一比特进入cpb的时间。然后,在时间initialcpbremovaldelay(i、),从cpb中移除与该随机接入点相对应的图片。针对另一非rap图片,cpb的移除发生在initialcpbrevovaldelay(i)+aucpbremovaldelay(传统编解码器可以定义一些附加参数以将所指示的延迟转换为时间增量,即clocktick,但这里为了简化忽略了这一点)。
[0041]
当下一个rap到来时,像以前一样针对非rap图片计算移除时间,即initialcpbrevovaldelay(i)+aucpbremovaldelay,并且该新值用作到另一rap的其他增量的锚,即anchortime=initialcpbremovaldelay(i)+aucpbremovaldelay,然后图片的移除变为anchortime+aucpbremovaldelay,并且anchortime在下一个rap处使用缓存sei消息进行更新,anchortime=anchortime+aucpbremovaldelay等。
[0042]
换言之,初始化解码器的第一接入单元(具有缓存周期sei的au)的removaltime计算如下:
[0043]
removaltime[0]=initialcpbremovaldelay(i)
[0044]
注意,initialcpbremovaldelay可以从比特流中导出为initial_cpb_removal_delay[i]
÷
90000。
[0045]
au(不是初始化解码器的第一接入单元,而是另一缓存周期的第一au(即,具有缓存周期sei消息的au,该au不是初始化解码器的第一au))的removaltime被计算为:
[0046]
removaltime[n]=removaltime[nb]+aucpbremovaldelay
[0047]
其中,nb是指前一缓存周期的第一au(也具有缓存周期sei消息的当前au之前的au)的索引,并且aucpbremovaldelay可以从比特流中导出为tc*cpb_removal_delay(n),并且tc是clockticks(给出cpb_removal_delay语法以将给定值转换为时间的单位)。
[0048]
au(既不是初始化解码器的第一接入单元,也不是另一缓存周期的第一au(即,具有缓存周期sei消息的au,该au不是初始化解码器的第一au))的removaltime被计算为:
[0049]
removaltime[n]=removaltime[nb]+aucpbremovaldelay其中,nb是指当前缓存周期的第一au(具有缓存周期sei消息的当前au之前的au)的索引,并且aucpbremovaldelay可以从比特流中导出为tc*cpb_removal_delay(n),并且tc是clockticks(给出cpb_removal_delay语法以将给定值转换为时间的单位)。
[0050]
所描述模型的缺点是所定义的initialcpbremovaldelay隐式地设置了关于可用/可使用的cpb大小的限制。因此,为了使用cpb缓存器,将需要用于移除第一接入单元的大时间延迟(initialcpbremovaldelay)。事实上,假设解码器处的编码图片在它们被编码之后立即被发送,每个图片到达解码器的时间将不早于以下时间:
[0051]
initarrivalearliesttime[n]=removaltime[n]-initcpbremovaldelay(i)即,它的移除时间减去initialcpbremovaldelay,其是解码器自从在cpb中接收到该au的相应第一比特以来等待移除第一au的时间。
[0052]
或者,在当前图片之前的图片太大以至于它的最后比特到达(aufinalarrivaltime[n-1])晚于removaltime[n]-initcpbremovaldelay(i)的情况下,初始到达时间(当前图片的第一比特被馈送到cpb中的时间)等于:
[0053]
initarrivaltime[n]=max(aufinalarrivaltime[n-1],
initarrivalearliesttime[n])
[0054]
这意味着,例如,如果后续具有新缓存周期sei消息的au不能早于其移除时间的initialcpbremovaldelay(i)进入cpb,则不可能实现大于cpba的cpbb,因为在initialcpbremovaldelay(i)期间以bitrate(i)向cpb馈送仅实现cpba的cpb充满度。
[0055]
为了解决这个问题,思想是假设发送器(或图17中的hss或图4中的馈送器202)以给定时间偏移initialcpbremovaldelayoffset(i)延迟具有缓存sei消息的第一rap的调度,如图5所示。
[0056]
也就是说,图5的上部在左侧示出了以图17的hss或图3的馈送器202的虚拟缓存器充满度向编码图片缓存器200馈送,假设该“发送器”瞬时地获得前述移除光栅处的接入单元,其中,发送器使用可从图中的斜率导出的特定比特率顺序地将接入单元序列发送到编码图片缓存器中。右侧示出了接收器侧,并且更准确地说,示出了cpb充满度,其揭示了将au到cpb中的馈送以及接入单元从编码图片缓存器中的移除。移除是瞬时发生的,以特定比特率进行馈送。同样,比特率可从右侧图中的斜率导出。该图中的后沿指示接入单元序列逐接入单元地从cpb中移除并输入解码器的实例。然而,它们出现在时间光栅处,该时间光栅被延迟了在第一接入单元t
ai1
的第一比特的到达与指示其移除的第一下降沿之间的开始处的时间延迟。
[0057]
图5的下半部分示出了具有时间偏移的效果:可用或可使用的cpb大小不受由用于移除第一接入单元的时间延迟确定的量的限制。相反,时间偏移使得能够在提前了时间移除延迟的时间光栅之前的时间实例处,即在时间偏移的时间提前时间的最大值处,在第一接入单元之后馈送后续接入单元。这里,在图5的示例中,相应地,对于馈送来说,可以在第四接入单元之后立即恢复馈送第五接入单元,而不必等待或停止馈送直到达到根据仅提前了该时间延迟的时间光栅的针对该第五接入单元的时间。
[0058]
通过这样,调度改变如下:
[0059]
initarrivalearliesttime[n]=removaltime[n]-initcpbremovaldelay(i)-initialcpbremovaldelayoffset(i)
[0060]
这意味着大于cpba的cpbb的cpb大小可以对应于通过以针对initcpbremovaldelay(i)+initialcpbremovaldelayoffset(i)的bitrate(i)向cpb馈送而实现的大小。
[0061]
总结之前描述的工作原理,在如何计算initarrivalearliesttime的方面,存在两种类型的帧。针对缓存周期(即,缓存周期被定义为从具有缓存周期sei消息的au直到携带缓存周期sei消息的下一个au的周期)中的第一图片(或接入单元),initarrivalearliesttime被计算为其removaltime减去initcpbremovaldelay。针对缓存周期内的不是第一au的任何其他au(即,不携带缓存周期sei消息的au),initarrivalearliesttime被计算为其removaltime减去initcpbremovaldelay减去initialcpbremovaldelayoffset。
[0062]
编码器通常发送具有单个值或几个值(被称为调度选项)、具有与hrd操作相关的参数的比特流。例如,解码器操作其cpb所使用的不同速率值,即可以向cpb馈送的速率。
[0063]
然而,可能存在期望使用不同速率的场景。例如,当信道以突发方式向解码器发送数据时,以高比特率发送数据(只要任何数据可用),而在没有视频数据要发送时使用信道发送其他数据。
[0064]
为了解决这个问题,需要通过某种拟合来计算hrd或cpb参数,该拟合可以是逐段线性拟合/回归。
[0065]
例如,假设存在两个参数集对应于两个速率r0和r1,其中r0<r1,如图4中300
i-1
处所示。并且假设选择r
sel
使得其位于r0和r1内并且对应于与90%r0和10%r1之和相等的值。可以通过使用相同的公式(即,在该示例的情况下,新的cpb大小等于90%cpb0和10%cpb1之和的线性拟合)来类似地计算针对这种速率的值(如cpb大小)。
[0066]
然而,当涉及到确定每个图片最早到达时间的偏移(即,initialcpbremovaldelayoffset)时,无法进行相同的计算。对于这一点,存在以下不同的原因:
[0067]
1)缓存器充满度(针对其cpb大小是最终限制)受所使用的馈送速率和initialcpbremovaldelayoffset共同的影响,因此initialcpbremovaldelayoffset值的线性拟合不起作用。
[0068]
2)实际初始到达时间不是最早可能到达时间,而是前一接入单元的最终到达时间与最早可能到达时间之间的最大值,即,initarrivaltime[n]=max(aufinalarrivaltime[n-1],initarrivalearliesttime[n])
[0069]
因此,在每个接入单元处,由于initialcpbremovaldelayoffset而被馈送到缓存器中的附加数据与max(initarrivaltime[n]-aufinalarrivaltime[n-1],0)成比例。
[0070]
当计算离散参数中未用信号通知的操作点的拟合不遵循逐段线性拟合而是更复杂的拟合(例如,三次或多项式拟合)时,该问题的计算可能变得更加复杂。
[0071]
因此,根据本技术的实施例,当使用操作点(包括由一个操作点指示的时间偏移与由另一操作点指示的时间偏移之间的插值版本)之间的插值来管理编码图片缓存器200的馈送和清空时,接收侧可以依赖于无问题的操作模式(即,没有下溢和上溢的操作模式)。编码器注意所得到的插值不会导致缓存器问题。
[0072]
也就是说,根据实施例,图3的装置操作如下。该装置将接收作为接入单元序列48的比特流14。馈送器202将使用位于一个操作点op
i-1
的bitrate(i-1)与另一操作点opi的bitrate(i)之间某处的所选择的比特率302将接入单元序列顺序地馈送到编码缓存器200中,针对该操作点op
i-1
和另一操作点opi的cpb参数300
i-1
和300i被图1的编码器10写入比特流14。然而,馈送器200以所选择的比特率不连续地向编码图片缓存器200馈送,而是可以暂停或停止对某些接入单元的馈送。具体地,馈送器202停止或暂停对尚未达到如由时间移除光栅所定义的虚拟可用时间(在前面描述中被称为initarrivalearliesttime)的任何接入单元的馈送,直到达到该虚拟可用时间为止,该时间帧移除光栅针对按照图片编码顺序的第一接入单元提前插值后的时间移除延迟,而针对按照图片编码顺序的后续接入单元提前插值后的时间移除延迟与插值后的时间偏移之和。同样,由于计算这些时间的差异,与第一接入单元相比,不是第一接入单元的接入单元可以在编码图片缓存器200中停留更长时间。例如,如果针对某一接入单元,时间移除光栅指示移除时间t
removal
,但t
removal
减去插值后的时间移除延迟(在接入单元是第一接入单元的情况下)或t
removal
减去插值后的时间移除延迟与(加上)插值后的时间偏移之和(在接入单元是后续接入单元但不是第一接入单元的情况下)尚未到达,则延迟将该接入单元馈送到编码图片缓存器200中,直到达到该时间。在上面的描述中,前面描述中的initarrivalearliesttime,暂停或停止是通过上面讨论的max
函数来体现的,initialcpbremovaldelayoffset用于指示时间偏移,并且时间光栅由数组removaltime来定义。newinitialcpbremovaldelayoffset在下文中用于表示插值后的时间偏移。如上所述,时间光栅可以以第一接入单元的移除与后续接入单元中的每一个的移除之间的时间差(例如,针对每个后续au的差)的形式从数据流14中导出,测量该au的移除与(当前缓存周期的)第一au的移除之间的时间。
[0073]
然而,图3的装置使用时间光栅从编码图片缓存器200逐接入单元地移除接入单元。由于馈送已经被提前了时间移除延迟的事实,第一接入单元的移除实际上发生在该时间移除延迟处。解码器100接收所移除的接入单元,对它们进行解码,并输出解码/重构图片。
[0074]
为了获得插值后的值,图3的装置执行以下操作。它从比特流14中提取与第一操作点op
i-1
相关的第一cpb参数300
i-1
和与第二操作点opi相关的第二cpb参数300i,其中,第一cpb参数和第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,cpb参数300
i-1
和300i用于不同的预定比特率。然后,该装置通过以所选择的比特率302在由第一cpb参数300
i-1
指示的预定时间偏移与由第二cpb参数300i指示的预定时间偏移之间进行插值来确定插值后的时间偏移,以及该装置通过以所选择的比特率302在由第一cpb参数300
i-1
指示的预定时间移除延迟与由第二cpb参数300i指示的预定时间移除延迟之间进行插值来确定插值后的时间移除延迟。稍后描述具体实施例,其例如指示插值可以是线性插值。也就是说,图3的装置可以在由cpb参数300
i-1
与300i指示的预定时间偏移之间线性地插值,并且在由这些相邻cpb参数指示的预定时间移除偏移之间线性地插值。然而,可以备选地使用不同种类的插值。甚至可以是编码器决定一个或多个插值参数来参数化插值并在数据流中发送一个或多个插值参数,图3的装置从数据流14中导出该信息并相应地执行插值。时间偏移和时间移除延迟的插值方式可以相同。此外,附加地,图3的装置还可以以所选择的比特率302在由第一cpb参数300
i-1
指示的cpb大小与由第二cpb参数300i指示的cpb大小之间进行插值以获得插值后的cpb大小,并且图3的装置可以依赖于以下事实:针对cpb 200的该插值后的cpb大小足以适应在使用针对时间移除延迟和时间偏移的插值后的值来馈送并清空编码图片缓存器200时出现的任何充满状态。如前所述,编码器确保该承诺成立。例如,针对比特率bitrate(i-1)与bitrate(i)之间的某一离散中间比特率集(例如,以这些比特率之间的间隔的十分之一或另一分数为单位),编码器可以将该承诺限制在解码侧。然后,编码器可以测试是否发生任何上溢或下溢情况,如果是,则相应地调整任何值。例如,如果发生上溢,则编码器可以增大分别由操作点opi和op
i-1
指示的cpb大小之一。备选地,编码器可以再次恢复比特流的整个编码以及cpb参数的确定和插值后的值的无冲突检查。
[0075]
换言之,根据实施例,编码器可以确保所指示的离散initialcpbremovaldelayoffset值中两个值的加权线性组合可以被计算并用作newinitialcpbremovaldelayoffset以用于计算最早到达时间,使得当从相应指示的离散值拟合cpb和比特率曲线时计算的hrd限制(针对cpb大小和比特率)导致有效的解码器操作。如前面所讨论的,cpb大小和比特率曲线的曲线拟合可以是:
[0076]
·
线性的
[0077]
·
三次的
[0078]
·
多项式的
[0079]
也就是说,编码器和解码器可以使用除了操作点的opi值之间(并且具体地,在它们针对时间偏移的值initcpbremovaldelayoffseti之间)的逐段线性插值之外的插值。
[0080]
根据实施例,编码器可以指示要用于插值的权重(下面的α0和α1),即,
[0081]
newinitialcpbremovaldelayoffset=α0*initcpbremovaldelayoffset0+α1*initcpbremovaldelayoffset1[0082]
作为另一备选方案,不是像前一等式那样用信号发送α0和α1,而是提供两个其他权重(β0和β1),这两个其他权重与所选择的速率(r
sel
)一起允许计算实际使用的(α0和α1)。
[0083]
α0等于β0/r
sel
,并且α1等于β1/r
sel
[0084]
作为另一备选方案,所提供的权重(β0和β1)可以等于针对离散操作点的比特率,并且所计算的α0和α1分别通过所选择的速率r
sel
与所提供的作为hrd参数r0和r1的比特率之间的归一化距离进行缩放。也就是说,该插值可以是newinitialcpbremovaldelayoffset=(r
sel-r0)/(r
1-r0)*(r0/r
sel
)*initcpbremovaldelayoffset0+(1-(r
sel-r0)/(r
1-r0))*(r1/r
sel
)*initcpbremovaldelayoffset1[0085]
其中,r0和r1是操作点op0和op1的比特率,针对所述操作点op0和op1的cpb参数3000和3001分别指示为时间偏移initcpbremovaldelayoffset0和initcpbremovaldelayoffset1,并且所选择的速率是r
sel
。也就是说,在这里,该插值是通过使用(r
sel-r0)/(r
1-r0)*(r0/r
sel
)对initcpbremovaldelayoffset0进行加权并且使用(1-(r
sel-r0)/(r
1-r0))*(r1/r
sel
)对initcpbremovaldelayoffset1进行加权来执行的,即,使用两个比率的乘积。
[0086]
编码器再次确保所提供的比特流和指示不仅应用于给定的离散操作点,而且应用于可以在其间计算的值。为了做到这一点,编码器可以对给定的离散值之间的不同的值进行采样,并确保针对这种值不存在缓存器下溢或上溢。
[0087]
比特流的一个实施例是以比特率r0和r1的形式传送所描述的权重,以便计算中间初始移除偏移。接收由如上所述的编码器产生的比特流的比特流处理设备(例如或包括客户端侧的视频解码器)将必须依赖于编码器以满足上述时间限制的方式产生比特流的事实。该设备可以对比特流进行检查以确保它实际上是合法的比特流,并且这种检查可以是常规解码过程的一部分。该检查可以包括:对传送cpb和定时信息(例如,初始移除偏移)的相应比特流语法进行解析,通过它们各自的等式导出直接关联的变量和其他变量,以及监测所述变量的值以遵守如比特流的其他语法(例如,级别指示符)中所指示的时间上的级别限制。此外,由编码器和解码器组成的系统可以包括检查所述比特流特性的步骤。
[0088]
图6和图7示出了针对r0和r1分别等于13.5和16mbps的两个操作点的cpb缓存器填充水平。cpb大小cpb0和cpb1分别是1400和1000兆字节。并且上述偏移,即initcpbremovaldelayoffset0和initcpbremovaldelayoffset1分别是30和0毫秒。
[0089]
下图示出了针对r
sel
的值等于14.75mbps(即,恰好在13.5和16mbps之间)和newinitialcpbremovaldelayoffset的不同值的cpb充满度。在图8中,后者等于initcpbremovaldelayoffset0(30ms),导致上溢,而在图9中,后者等于initcpbremovaldelayoffset1(0ms),导致下溢。当仅使用给定操作点initcpbremovaldelayoffset0和initcpbremovaldelayoffset1(15ms)的线性拟合时,结果
是图10的情况。使用上面讨论的计算值(16.3ms),结果是图11的情况。图12示出了使用initcpbremovaldelayoffset0与initcpbremovaldelayoffset1之间的任意值(20ms),也导致上溢。可以看出,等于initcpbremovaldelayoffset0和initcpbremovaldelayoffset1的偏移的任意数量可能导致问题,即缓存器下溢或上溢。在上述示例中,线性拟合导致有效的操作值以及上面讨论的所提供的显式加权预配置。然而,在其他情况下,线性拟合可能导致上溢(如果编码器不在意的话)。例如,图13中描绘了针对r0和r1等于14.5和18mbps以及cpb0和cpb1分别是1250和1300兆字节并且initcpbremovaldelayoffset0和initcpbremovaldelayoffset1分别等于15和40的情况的线性拟合。这里,导致上溢。在图14中,示出了使用具有双因子权重的插值的插值。
[0090]
图3的解码器100从每个进入的au中重构相应的图片16’,其中,可能的但可选的可以单独地或组合地应用的实现细节已经在上面关于图2进行了描述。下面更详细地描述了用于实现解码器和编码器的一些选项。
[0091]
第一选项涉及对解码图片16’的处理以及它们对解码图片缓存器的缓存。图2的环路缓存器142可以包括这种dpb。在图3中,dpb可以是解码器100的一部分。
[0092]
根据实施例,图3的装置在两种类型(即,短期和长期)的参考图片之间进行区分。编码器在解码期间的每个时间点模拟解码器100的dpb填充状态时做同样的事情。参考图片可以在不再被需要用于预测参考时被标记为“不用于参考”。这三种状态(短期、长期和不用于参考)之间的转换由解码参考图片标记过程来控制。存在两种备选的解码参考图片标记机制,隐式滑动窗口过程和显式存储器管理控制操作(mmco)过程。针对每个当前解码图片或每个当前解码au,在数据流14中用信号发送关于哪个过程将用于dpb管理。当参考帧的数量等于给定的最大数量(sps中的max-num-ref-frames)时,滑动窗口过程将短期参考图片标记为“不用于参考”。短期参考图片以先进先出的方式存储,使得最近解码的短期图片保留在dpb中。显式mmco过程经由多个mmco命令来控制。如果为当前au或当前解码图片选择了该模式,则比特流针对该au或在该au中包含这些命令中的一个或多个。mmco命令可以是以下中的任何一个:1)将一个或多个短期或长期参考图片标记为“不用于参考”,2)将所有图片标记为“不用于参考”,或3)将当前参考图片或现有的短期参考图片标记为长期,并将长期图片索引指派给该长期图片。参考图片标记操作和从dpb中的图片的任何输出(为了呈现)和移除可以在图片已经被解码之后执行。
[0093]
也就是说,返回到图3,根据实施例,解码器1 00可以对从cpb 200移除并因此从cpb 200接收的当前au 402进行解码400以获得解码图片16’。解码器100可以使用基于由前述环路缓存器142包括的、在前述dpb 406中存储的被参考的参考图片404的图片间预测。解码图片16’可以被插入408到dpb 406中。可以针对每个当前解码图片16’执行插入408,即,每个解码图片可以在其解码400之后被放置在dpb 406中。插入408可以瞬时(即,在忽略解码时间时的au 402的cpb移除时间,或cpb移除时间加上所需的解码时间)发生。然而,插入408还可以附加地取决于特定事实进行,如410处所指示的,例如每个新解码图片都被插入到dpb 406中,除非它要在其cpb移除时间被输出412,即,除非它是立即输出图片,即,要立即输出以呈现的图片,并且它是非参考图片,这种情况可以通过相应的语法元素在相应的au 402中指示。该装置可以向存储在dpb 406中的每个参考图片414指派作为短期参考图片、长期参考图片、以及不用于参考的图片之一的分类。该装置进一步从当前au 402中读取
dpb模式信息416,并且如果模式信息416指示固有模式或第一模式,则固有dpb管理过程418被激活并根据fifo策略,从dpb 406中移除424被分类为短期图片的一个或多个参考图片414。如果模式信息416指示显式模式或第二模式,则显式dpb管理过程420被激活,并执行包含在由当前au 402包括的存储器管理控制信息中的一个或多个命令以改变指派给dpb 406中存储的参考图片414中的至少一个的分类,并使用dpb 406中的参考图片414的分类来管理从dpb 406中的参考图片移除424。无论针对当前图片16’选择了过程418还是420,dpb 406中的其图片输出时间已达到的任何图片414都被输出422以进行呈现。从dpb 406中移除424不再被输出且被分类为不用于参考的图片414。
[0094]
下面讨论图15的参考图片标记机制的一些可能细节。1)第一方面涉及帧号中的间隙和不存在的图片。尽管上面未说明,dpb 406中的每个参考图片414可以与帧号相关联,该帧号可以由图3的装置从au 402中的帧号语法元素导出,该帧号语法元素指示按照解码顺序的au排序。通常,针对每个参考图片414,该帧号增加1,但可以通过将相应的高级别(例如,序列级别)标志(其可以被称为parameter-gaps-in-frame-num-allowed-flag)设置为1来允许帧号中的间隙,例如,以便允许编码器或mane(媒体感知网络元件)可以传送在其中针对参考图片的帧号相对于按照解码顺序的前一参考图片增加多于1的比特流。为了支持时间可缩放性,这可能是有利的。图3的接收具有帧号中间隙的au序列的装置可以被配置为创建不存在的图片来填充间隙。不存在的图片在间隙中被指派有帧号值,并在解码参考图片标记期间被视为参考图片,但将不用于输出(因此不显示)。不存在的图片确保dpb的关于驻留在其中的图片的帧号的状态针对接收了图片的解码器与未接收图片的解码器是相同的。
[0095]
另一可能的方面涉及在使用滑动窗口时参考图片的丢失。当参考图片丢失时,图3的装置可以尝试隐藏该图片,并且如果在检测到丢失时反馈信道是可用的,则可能向编码器报告丢失。如果不允许帧号中的间隙,则帧号值的不连续性指示参考图片的意外丢失。如果允许帧号中的间隙,则帧号值的不连续性可能是由于时间层或子序列的故意移除或意外图片丢失引起的,并且解码器(例如,图3的装置)应仅在不存在的图片在帧间预测过程中被引用时才推断图片丢失。隐藏图片的图片顺序计数可能是未知的,这可能导致解码器(例如,图3的装置)在对b图片进行解码时使用不正确的参考图片而没有检测到任何错误。
[0096]
另一可能的方面涉及利用mmco的参考图片的丢失。当丢失包含将短期参考图片标记为“不用于参考”的mmco命令的参考图片时,则dpb中的参考图片状态变得不正确,因此,针对丢失图片之后的若干图片的参考图片列表可能变得不正确。如果包含与长期参考图片相关的mmco命令的图片丢失,则存在dpb中的长期参考图片的数量与在接收到图片时将会是长期参考图片的数量不同的风险,从而导致针对所有后续图片的“不正确”的滑动窗口过程。也就是说,编码器和解码器(即,图3的装置)将包含不同数量的短期参考图片,导致滑动窗口过程的不同步行为。使情况更糟的是,解码器将不一定知道滑动窗口过程不同步。
[0097]
以下的图示出了上述可能的mmco命令。这些命令中一个或多个或全部可以应用以产生不同的实施例:
[0098][0099][0100]
现在描述针对解码器和编码器的实现的另一选项,可以可选地与之前描述的关于dpb管理的选项组合,并且涉及将某个语法元素(例如,变换系数形式的残差数据)熵解码到比特流中14。有损量化变换系数的无损熵编码是高效视频编解码器的关键部分。一种这样的方法被称为上下文自适应可变长度编码(cavlc),其中,编码器在各种语法元素的不同可变长度代码(vlc)表之间切换,其取决于以上下文自适应方式的同一片中的先前发送的语法元素的值。编码器和解码器可以使用cavlc。由于通过将相应码字(该码字是已经从上下文自适应选择的代码表中针对该语法元素选择的)写入比特流中来将每个语法元素编码到比特流14中的事实,比特流中的每个cavlc编码比特可以关联到单个语法元素。因此,当使用cavlc时,关于以扫描顺序出现在比特流14中的变换系数级别的相关信息可以作为语法元素以可直接接入的形式获得。编码器和解码器可以使用cavlc来用信号发送比特流14中的变换系数。可以使用以下语法元素,即具有以下语义的语法元素:
[0101]-指示变换块中的非零变换系数级别的总数的一个语法元素(由coefftoken指示)
[0102]-指示结尾为1的变换系数级别的数量的一个或多个语法元素,即,以扫描顺序扫描语法元素直到最后一个非零语法元素(都是1)的结束时出现的一系列语法元素以及它们的符号
[0103]-针对除了结尾为1的变换系数之外的每个非零变换系数的一个或多个语法元素,其指示变换系数级别值
[0104]-指示零值变换系数级别的总数的一个语法元素
[0105]-指示按照扫描顺序在遇到非零值变换系数级别之前从当前扫描位置向前具有零值的连续变换系数级别的数量的语法元素。
[0106]
备选地或附加地,编码器可以在cabac的使用(因此上下文自适应二进制算术编码)与cavlc的使用之间进行选择并在比特流14中用信号发送该选择,解码器读取该信号并使用所指示的解码残差数据的方式。
[0107]
现在描述用于解码器和编码器的实现的另一选项,可以可选地与之前描述的关于dpb管理的选项和关于cavlc的选项中的任一选项进行组合,并且涉及四分之一像素插值滤波器。为了允许以比常规全像素样本网格更精细的粒度进行帧间预测,使用样本插值过程来导出子像素样本位置处的样本值,该子像素样本位置的范围可以从半像素位置到四分之一像素位置。编码器和解码器可以使用一种执行四分之一像素插值的方法,并且该方法如下。首先,使用6抽头fir滤波器在半像素位置生成样本值,然后通过插值对所生成的半像素位置样本值进行平均,以生成亮度分量的四分之一像素位置处的样本值。
[0108]
为了完整起见,图16示出了适合图3的装置的编码器,即将视频12编码为比特流14的编码器,该编码器可能但不一定根据图1,并且以使得要由图3的装置进行的插值产生无下溢和上溢的操作的方式为比特流14提供cpb参数300。
[0109]
因此,以下实施例或方面可从以上描述导出,并且以下实施例或方面继而可通过以上任何细节和事实单独地或组合地进一步扩展。
[0110]
根据第一方面,用于视频解码的装置可以包括编码图片缓存器200,并且被配置为接收数据流14,该数据流14具有按照编码顺序编码到其中的视频12的图片16作为接入单元48的序列,使用所选择的比特率302将接入单元48的序列顺序地馈送到cpb中,其中暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直至达到所述虚拟可用时间,所述时间帧移除光栅针对按照所述编码顺序的第一接入单元提前所选择的时间移除延迟,而针对按照所述编码顺序的后续接入单元提前所选择的时间移除延迟与所选择的时间偏移之和;使用时间光栅[removaltime]逐au地从cpb中移除au,从数据流中提取与第一操作点相关的第一cpb参数300
i-1
和与第二操作点相关的第二cpb参数300i,第一cpb参数和第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,第一cpb参数300
i-1
至少在预定比特率方面不同于第二cpb参数300i,通过以所选择的比特率在由第一cpb参数300
i-1
指示的预定时间偏移与由第二cpb参数300i指示的预定时间偏移之间进行插值来确定所选择的时间偏移、以及通过以所选择的比特率在由第一cpb参数300
i-1
指示的预定时间移除延迟与由第二cpb参数300i指示的预定时间移除延迟之间进行插值来确定所选择的时间移除延迟。
[0111]
根据第二方面,当返回参考第一方面时,该装置可以被配置为:从数据流导出一个或多个插值参数并使用所述一个或多个插值参数对插值进行参数化。
[0112]
根据第三方面,当返回参考第一方面或第二方面时,该装置可以被配置为:使用由第一权重加权的由所述第一cpb参数指示的预定时间偏移与由第二权重加权的由所述第二cpb参数指示的预定时间偏移的加权和来执行所述插值。
[0113]
根据第四方面,当返回参考第三方面时,该装置可以被配置为:基于所选择的比特率、由所述第一cpb参数指示的预定比特率和由所述第二cpb参数指示的预定比特率来确定所述第一权重和所述第二权重。
[0114]
根据第五方面,当返回参考第三方面时,该装置可以被配置为:通过将所选择的比特率与由所述第一cpb参数指示的预定比特率之间的差除以由所述第一cpb参数指示的预定比特率与由所述第二cpb参数指示的预定比特率之间的差来计算线性插值权重;以及使用所述线性插值权重来确定第一权重和第二权重。
[0115]
根据第六方面,当返回参考第五方面时,该装置可以被配置为:确定第一权重,使得所述第一权重是所述线性插值权重或其中的一个因子是所述线性插值权重的乘积;以及确定第二权重,使得所述第二权重是所述线性插值权重与1之间的差或其中的一个因子是所述线性插值权重与1之间的差的乘积。
[0116]
根据第七方面,当返回参考第五方面时,该装置可以被配置为:确定第一权重,使得第一权重是如下乘积:所述乘积的第一因子是所述线性插值权重,并且所述乘积的第二因子是由所述第一cpb参数指示的预定比特率除以所选择的比特率;以及确定第二权重,使得所述第二权重是如下乘积:所述乘积的一个因子是所述线性插值权重与1之间的差,并且所述乘积的第二因子是由所述第二cpb参数指示的预定比特率除以所选择的比特率。
[0117]
根据第八方面,当返回参考第一方面至第七方面中的任一方面时,该装置还可以包括解码图片缓存器(dpb)并且被配置为:使用根据存储在dpb中的被参考的参考图片404的图片间预测对从cpb 200移除的当前au402进行解码,以获得解码图片16’,并将解码图片插入408到dpb中,向存储在dpb中的每个参考图片414指派作为短期参考图片、长期参考图片、以及不用于参考的图片之一的分类,从当前au中读取dpb模式信息416,如果所述dpb模式信息指示第一模式,则根据fifo策略从dpb中移除424被分类为短期图片的一个或多个参考图片,如果所述dpb模式信息指示第二模式,则读取当前au中的包括至少一个命令的存储器管理控制信息,并执行所述至少一个命令以改变指派给存储在dpb中的参考图片中的至少一个的分类,以及使用dpb中的参考图片的分类,一管理从dpb中的参考图片移除424。
[0118]
根据第九方面,当返回参考第八方面时,该装置可以被配置为:从当前au中读取关于解码图片是否不用于图片间预测的指示;如果所述解码图片未被指示为不用于图片间预测或不直接被输出,则执行将所述解码图片插入到所述dpb中,以及如果所述解码图片被指示为不用于图片间预测且直接被输出,则直接输出所述解码图片,而不在所述dpb中缓存所述解码图片。
[0119]
根据第十方面,当返回参考第八方面或第九方面时,该装置可以被配置为:将帧索引指派给dpb中的被分类为长期图片的每个参考图片,以及如果指派给dpb中的被分类为长期图片的预定参考图片的帧索引在当前au中被参考,则使用所述预定参考图片作为dpb中的被参考的参考图片。
[0120]
根据第十一方面,当返回参考第十方面时,该装置可以被配置为执行以下中的一项或多项:如果当前au中的至少一个命令是第一命令,则将dpb中的被分类为短期参考图片的参考图片重新分类为不用于参考的图片;如果当前au中的至少一个命令是第二命令,则将所述dpb中的被分类为长期参考图片的参考图片重新分类为不用于参考的图片;如果当前au中的至少一个命令是第三命令,则将dpb中的被分类为短期图片的参考图片重新分类
为长期参考图片,并将帧索引指派给所述重新分类的参考图片;如果当前au中的至少一个命令是第四命令,则根据第四命令来设置帧索引上限,并将dpb中的被分类为长期图片且已经向其指派了超过所述帧索引上限的帧索引的所有参考图片重新分类为不用于参考的图片;如果当前au中的至少一个命令是第五命令,则将当前图片分类为长期图片,并将帧索引指派给当前图片。
[0121]
根据第十二方面,当返回参考第八方面至第十一方面中的任一方面时,该装置可以被配置为:从dpb中移除被分类为不用于参考的图片且不再被输出的任何参考图片。
[0122]
根据第十三方面,当返回参考第一方面至第十二方面中的任一方面时,该装置可以被配置为:从数据流中读取熵编码模式指示符,以及如果所述熵编码模式指示符指示上下文自适应可变长度编码模式,则使用所述上下文自适应可变长度编码模式从当前au中解码出预测残差数据,以及如果熵编码模式指示符指示上下文自适应二进制算术编码模式,则使用所述上下文自适应二进制算术编码模式从当前au中解码出预测残差数据。
[0123]
根据第十四方面,当返回参考第一方面至第十三方面中的任一方面时,该装置可以被配置为:基于当前au中的运动矢量并使用6抽头fir滤波器以导出半像素值并对相邻半像素值进行平均,来导出被参考的参考图片中的四分之一像素值。
[0124]
根据第十五方面,当返回参考第一方面至第十四方面中的任一方面时,该装置可以被配置为:通过第一接入单元的移除与后续接入单元中的每一个的移除之间的时间差,从数据流中导出关于时间光栅的信息。
[0125]
根据第十六方面,当返回参考第一方面至第十五方面中的任一方面时,该装置可以被配置为:以所选择的比特率302在由第一cpb参数300
i-1
指示的cpb大小与由第二cpb参数300i指示的cpb大小之间进行插值,以获得插值后的cpb大小,从而确定编码图片缓存器200的最小cpb大小。
[0126]
根据第十七方面,当返回参考第一方面至第十六方面中的任一方面时,在该装置中,所选择的比特率可以在由第一cpb参数300
i-1
指示的预定比特率与由第二cpb参数300i指示的预定比特率之间。
[0127]
根据第十八方面,当返回参考第一方面至第十七方面中的任一方面时,该装置可以被配置为:以缓存周期为单位进行操作,按照编码顺序的第一接入单元是当前缓存周期的第一接入单元。
[0128]
根据第十九方面,一种用于将视频编码为数据流的装置,其中,所述数据流应通过将所述数据流馈送到包括编码图片缓存器(cpb)的解码器来解码,该装置可以被配置为:将按照编码顺序进行编码的视频的图片编码到数据流中作为接入单元(au)序列,确定与第一操作点相关的第一cpb参数和与第二操作点相关的第二cpb参数,所述第一cpb参数和所述第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,所述第一cpb参数至少在预定比特率方面不同于所述第二cpb参数,以及执行所述确定,使得以多个所选择的比特率中的每个所选择的比特率在所述第一cpb参数的预定时间偏移与所述第二cpb参数的预定时间偏移之间进行插值产生插值后的时间偏移和插值后的时间移除延迟,从而通过以下方式经由cpb将数据流馈送到解码器:使用相应的所选择的比特率将所述au序列顺序地馈送到cpb中,其中暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直到达到所述虚拟可用时间,所述虚拟可用时间针对按照
所述编码顺序的第一接入单元提前插值后的时间移除延迟,而针对按照所述编码顺序的后续接入单元提前插值后的时间移除延迟与插值后的时间偏移之和;使用时间光栅逐au地从cpb中移除au,不导致任何下溢和任何上溢,以及将所述cpb参数编码到所述数据流中。
[0129]
根据第二十方面,当返回参考第十九方面时,在该装置中,可以使用插值参数对插值进行参数化,以及该装置可以被配置为将所述插值参数编码到所述数据流中。
[0130]
根据第二十一方面,当返回参考第十九或第二十方面时,在该装置中,使用由第一权重加权的由所述第一cpb参数指示的预定时间偏移与由第二权重加权的由所述第二cpb参数指示的预定时间偏移的加权和来执行所述插值。
[0131]
根据第二十二方面,当返回参考第二十一方面时,在该装置中,基于所选择的比特率、由所述第一cpb参数指示的预定比特率、以及由所述第二cpb参数指示的预定比特率来确定所述第一权重和所述第二权重。
[0132]
根据第二十三方面,当返回参考第二十一方面时,在该装置中,通过将所选择的比特率与由所述第一cpb参数指示的预定比特率之间的差除以由所述第一cpb参数指示的预定比特率与由所述第二cpb参数指示的预定比特率之间的差所确定的线性插值权重可以用于确定所述第一权重和所述第二权重。
[0133]
根据第二十四方面,当返回参考第二十三方面时,在该装置中,可以确定第一权重,使得所述第一权重是线性插值权重或其中的一个因子是线性插值权重的乘积;以及可以确定第二权重,使得所述第二权重是所述线性插值权重与1之间的差或其中的一个因子是所述线性插值权重与1之间的差的乘积。
[0134]
根据第二十五方面,当返回参考第二十三方面时,在该装置中,确定第一权重,使得第一权重是如下乘积:所述乘积的第一因子是所述线性插值权重,并且所述乘积的第二因子是由所述第一cpb参数指示的预定比特率除以所选择的比特率;以及可以确定第二权重,使得所述第二权重是如下乘积:所述乘积的一个因子是所述线性插值权重与1之间的差,并且所述乘积的第二因子是由所述第二cpb参数指示的预定比特率除以所选择的比特率。
[0135]
根据第二十六方面,当返回参考第十九方面至第二十五方面中的任一方面时,该装置可以被配置为:在对所述au进行编码时,使用根据存储在dpb中的被参考的参考图片的图片间预测,将当前图片编码到当前au中,以及将dpb中的当前图片的解码版本插入到dpb中,向存储在dpb中的每个参考图片指派作为短期参考图片、长期参考图片、以及不用于参考的图片之一的分类,将dpb模式信息写入当前au,如果dpb模式信息指示第一模式,则根据fifo策略从dpb中移除被分类为短期图片的一个或多个参考图片,如果dpb模式信息指示第二模式,则将包括至少一个命令的存储器管理控制信息写入当前au,所述命令指示改变指派给存储在dpb中的参考图片中的至少一个的分类,其中,dpb中的参考图片的分类用于管理从dpb中的参考图片移除。
[0136]
根据第二十七方面,当返回参考第二十六方面时,该装置可以被配置为:将所述解码图片是否不用于图片间预测的指示写入当前au;其中,如果所述解码图片未被指示为不用于图片间预测或不直接被输出,则所述解码图片将被插入到所述dpb中,以及如果所述解码图片被指示为不用于图片间预测且直接被输出,则所述解码图片将被直接输出,而不在所述dpb中缓存所述解码图片。
[0137]
根据第二十八方面,当返回参考第二十六或第二十七方面时,在该装置中,帧索引将被指派给dpb中的被分类为长期图片的每个参考图片,以及如果指派给dpb中的被分类为长期图片的预定参考图片的帧索引在当前au中被参考,则使用所述预定参考图片作为dpb中的被参考的参考图片。
[0138]
根据第二十九方面,当返回参考第二十八方面时,在该装置中,执行以下中的一项或多项:如果当前au中的至少一个命令是第一命令,则dpb中的被分类为短期参考图片的参考图片将被重新分类为不用于参考的图片;如果当前au中的至少一个命令是第二命令,则dpb中的被分类为长期参考图片的参考图片将被重新分类为不用于参考的图片;如果当前au中的至少一个命令是第三命令,则dpb中的被分类为短期图片的参考图片将被重新分类为长期参考图片,并且帧索引将被指派给重新分类的参考图片;如果当前au中的至少一个命令是第四命令,则帧索引上限将根据第四命令来设置,并且dpb中的被分类为长期图片且已经向其指派了超过所述帧索引上限的帧索引的所有参考图片将被重新分类为不用于参考的图片;如果当前au中的至少一个命令是第五命令,则当前图片将被分类为长期图片,并将帧索引指派给当前图片。
[0139]
根据第三十方面,当返回参考第二十六方面至第二十九方面中的任一方面时,在该装置中,被分类为不用于参考的图片且不再被输出任何参考图片将从dpb中移除。
[0140]
根据第三十一方面,当返回参考第十九方面至第三十方面中的任一方面时,该装置可以被配置为:将熵编码模式指示符写入数据流,以及如果所述熵编码模式指示符指示上下文自适应可变长度编码模式,则使用所述上下文自适应可变长度编码模式将预测残差数据编码到当前au中,以及如果熵编码模式指示符指示上下文自适应二进制算术编码模式,则使用所述上下文自适应二进制算术编码模式将预测残差数据编码到当前au中。
[0141]
根据第三十二方面,当返回参考第十九方面至第三十一方面中的任一方面时,该装置可以被配置为:基于当前au中的运动矢量并使用6抽头fir滤波器以导出半像素值并对相邻半像素值进行平均,来导出被参考的参考图片中的四分之一像素值。
[0142]
根据第三十三方面,当返回参考第十九方面至第三十二方面中的任一方面时,该装置可以被配置为:通过第一接入单元的移除与后续接入单元中的每一个的移除之间的时间差,为数据流提供关于时间光栅的信息。
[0143]
根据第三十四方面,当返回参考第十九方面至第三十三方面中的任一方面时,在该装置中,将以所选择的比特率302在由第一cpb参数300
i-1
指示的cpb大小与由第二cpb参数300i指示的cpb大小之间执行插值,以获得插值后的cpb大小,从而确定编码图片缓存器200的最小cpb大小。
[0144]
根据第三十五方面,当返回参考第十九方面至第三十四方面中的任一方面时,在该装置中,所选择的比特率可以在由第一cpb参数300
i-1
指示的预定时间偏移与由第二cpb参数300i指示的预定时间偏移之间。
[0145]
根据第三十六方面,当返回参考第十九方面至第三十五方面中的任一方面时,该装置可以被配置为:以缓存周期为单位进行操作,按照编码顺序的第一接入单元是当前缓存周期的第一接入单元。
[0146]
根据第三十七方面,当返回参考第十九方面至第三十六方面中的任一方面时,该装置可以被配置为:通过确定第一cpb参数和第二cpb参数的初步版本来执行确定;以多个
所选择的比特率执行插值,以获得针对多个所选择的比特率中的每一个的插值后的时间偏移和插值后的时间移除延迟;以及针对多个所选择的比特率中的每一个,检查使用针对各个所选择的比特率获得的插值后的时间偏移和插值后的时间移除延迟经由cpb向解码器馈送数据流是否导致下溢和上溢,并且如果是,则以不同方式恢复编码,修改第一cpb参数和第二cpb参数的初步版本,或使用不同方式恢复插值,并且如果不是,则确定第一cpb参数和第二cpb参数等于初步版本。
[0147]
根据第三十八方面,一种利用编码图片缓存器200进行视频解码的方法可以具有以下步骤:接收数据流14,该数据流14具有按照编码顺序编码到其中的视频12的图片16作为接入单元48的序列,使用所选择的比特率302将所述接入单元48的序列顺序地馈送到cpb中,其中暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直至达到所述虚拟可用时间,所述时间帧移除光栅针对按照所述编码顺序的第一接入单元提前所选择的时间移除延迟,而针对按照所述编码顺序的后续接入单元提前所选择的时间移除延迟与所选择的时间偏移之和;使用时间光栅[removaltime]逐au地从cpb中移除au,从数据流中提取与第一操作点相关的第一cpb参数300
i-1
和与第二操作点相关的第二cpb参数300i,第一cpb参数和第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,第一cpb参数300
i-1
至少在预定比特率方面不同于第二cpb参数300i,通过以所选择的比特率在由第一cpb参数300
i-1
指示的预定时间偏移与由第二cpb参数300i指示的预定时间偏移之间进行插值来确定所选择的时间偏移、以及通过以所选择的比特率在由第一cpb参数300
i-1
指示的预定时间移除延迟与由第二cpb参数300i指示的预定时间移除延迟之间进行插值来确定所选择的时间移除延迟。
[0148]
第三十九方面可以具有视频可以被编码到其中并且可以包括第一cpb参数和第二cpb参数的数据流,使得根据第三十八方面所述的方法不导致cpb上溢和下溢。
[0149]
根据第四十方面,用于将视频编码为数据流的方法(其中,所述数据流应通过将所述数据流馈送到包括编码图片缓存器(cpb)的解码器来解码)可以具有以下步骤:将按照编码顺序进行编码的视频的图片编码到数据流中作为接入单元(au)序列,定与第一操作点相关的第一cpb参数和与第二操作点相关的第二cpb参数,所述第一cpb参数和所述第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,所述第一cpb参数至少在预定比特率方面不同于所述第二cpb参数,以及执行所述确定,使得以多个所选择的比特率中的每个所选择的比特率在所述第一cpb参数的预定时间偏移与所述第二cpb参数的预定时间偏移之间进行插值产生插值后的时间偏移和插值后的时间移除延迟,从而通过以下方式经由cpb将数据流馈送到解码器:使用相应的所选择的比特率将所述au序列顺序地馈送到cpb中,其中暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直到达到所述虚拟可用时间,所述虚拟可用时间针对按照所述编码顺序的第一接入单元提前插值后的时间移除延迟,而针对按照所述编码顺序的后续接入单元提前插值后的时间移除延迟与插值后的时间偏移之和;使用时间光栅逐au地从cpb中移除au,不导致任何下溢和任何上溢,以及将cpb参数编码到数据流中。
[0150]
第四十一方面可以具有通过根据第四十方面所述的方法生成的数据流。
[0151]
应理解,在本说明书中,线上的信号有时由线的附图标记来命名,或有时由归属于线的附图标记本身来表示。因此,该标记方式使得具有某一信号的线指示信号本身。线可以
是硬连线实现中的物理线路。然而,在计算机化实现中,物理线路不存在,但该线所表示的信号从一个计算模块发送给另一计算模块。
[0152]
尽管已在框图的上下文(其中,块表示实际的或逻辑的硬件组件)中描述了本发明,但本发明也可以通过计算机实现的方法来实现。在后者的情况下,块表示相应方法步骤,其中这些步骤代表由对应逻辑或实体硬件块执行的功能。
[0153]
尽管已经在装置的上下文中描述了一些方面,但将清楚的是,这些方面还表示对应方法的描述,其中,块或装置对应于方法步骤或方法步骤的特征。类似地,在方法步骤的上下文中描述的方面也表示对对应块或对应装置的项或特征的描述。可以由(或使用)硬件设备(诸如,微处理器、可编程计算机或电子电路)来执行一些或全部方法步骤。在一些实施例中,可以由这种装置来执行最重要方法步骤中的某一个或多个方法步骤。
[0154]
本发明的经传输或编码的信号可以存储在数字存储介质上或可以在诸如无线传输介质或有线传输介质(比如互联网)的传输介质上传输。
[0155]
取决于某些实现要求,可以在硬件中或在软件中实现本发明的实施例。可以通过使用其上存储有电子可读控制信号的数字存储介质(例如,软盘、dvd、blu-ray、cd、rom、prom和eprom、eeprom或闪存)来执行所述实现方案,所述控制信号与可编程计算机系统协作(或能够与之协作),从而执行相应方法。因此,数字存储介质可以是计算机可读的。
[0156]
根据本发明的一些实施例包括具有电子可读控制信号的数据载体,其能够与可编程计算机系统协作以便执行本文所述的方法之一。
[0157]
通常,本发明的实施例可以实现为具有程序代码的计算机程序产品,程序代码可操作以在计算机程序产品在计算机上运行时执行方法之一。程序代码可以例如存储在机器可读载体上。
[0158]
其他实施例包括存储在机器可读载体上的计算机程序,该计算机程序用于执行本文所述的方法之一。
[0159]
换言之,本发明方法的实施例因此是具有程序代码的计算机程序,该程序代码用于在计算机程序在计算机上运行时执行本文所述的方法之一。
[0160]
因此,本发明方法的另一实施例是数据载体(或诸如数字存储介质或计算机可读介质的非暂时性存储介质),包含记录于其上的用于执行本文所述方法之一的计算机程序。数据载体、数字存储介质或记录介质通常是有形的和/或非暂时性的。
[0161]
因此,本发明方法的另一实施例是表示用于执行本文所述方法之一的计算机程序的数据流或信号序列。数据流或信号序列可以例如被配置为经由数据通信连接(例如,经由互联网)传送。
[0162]
另一实施例包括处理装置,例如,计算机或可编程逻辑器件,所述处理装置被配置为或适于执行本文所述的方法之一。
[0163]
另一实施例包括其上安装有计算机程序的计算机,该计算机程序用于执行本文所述的方法之一。
[0164]
根据本发明的另一实施例包括被配置为向接收器(例如,以电子方式或以光学方式)传送计算机程序的装置或系统,该计算机程序用于执行本文所述的方法之一。接收器可以是例如计算机、移动设备、存储设备等。装置或系统可以例如包括用于向接收器传输计算机程序的文件服务器。
[0165]
在一些实施例中,可编程逻辑器件(例如,现场可编程门阵列)可以用于执行本文所述的方法的一些或全部功能。在一些实施例中,现场可编程门阵列可以与微处理器协作以执行本文所述的方法之一。通常,这些方法可以由任何硬件设备来执行。
[0166]
上述实施例对于本发明的原理仅是说明性的。应当理解的是,本文所述的布置和细节的修改和变形对于本领域其他技术人员将是显而易见的。因此,旨在仅由所附专利权利要求的范围来限制而不是由借助对本文的实施例的描述和解释所给出的具体细节来限制。
[0167]
参考文献
[0168]
[1]sjoberg,rickard等,
″
overview of hevc high-level syntax and reference picture management.
″
ieee transactions on circuits and systems for video technology 22.12(2012):1858-1870。
技术特征:
1.一种用于视频解码的装置,所述装置包括编码图片缓存器cpb和解码图片缓存器dpb,被配置为:接收数据流,所述数据流具有按照编码顺序编码到其中的视频的图片作为接入单元au序列,使用所选择的比特率将所述接入单元序列顺序地馈送到cpb中,其中暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直至达到所述虚拟可用时间,所述时间帧移除光栅针对按照所述编码顺序的第一接入单元提前所选择的时间移除延迟,而针对按照所述编码顺序的后续接入单元提前所选择的时间移除延迟与所选择的时间偏移之和;使用所述时间光栅逐au地从所述cpb中移除au,从所述数据流中提取与第一操作点相关的第一cpb参数和与第二操作点相关的第二cpb参数,所述第一cpb参数和所述第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,所述第一cpb参数至少在所述预定比特率方面不同于所述第二cpb参数,通过以所选择的比特率在由所述第一cpb参数指示的预定时间偏移与由所述第二cpb参数指示的预定时间偏移之间进行插值来确定所选择的时间偏移,以及通过以所选择的比特率在由所述第一cpb参数指示的预定时间移除延迟与由所述第二cpb参数指示的预定时间移除延迟之间进行插值来确定所选择的时间移除延迟,使用根据存储在所述dpb中的被参考的参考图片的图片间预测,对从所述cpb移除的当前au进行解码,以获得解码图片,以及将所述解码图片插入到所述dpb中,向存储在所述dpb中的每个参考图片指派作为短期参考图片、长期参考图片、以及不用于参考的图片之一的分类,从所述当前au中读取dpb模式信息,如果所述dpb模式信息指示第一模式,则根据先进先出fifo策略,从所述dpb中移除被分类为短期图片的一个或多个参考图片,如果所述dpb模式信息指示第二模式,则读取所述当前au中的包括至少一个命令的存储器管理控制信息,并执行所述至少一个命令以改变指派给存储在所述dpb中的参考图片中的至少一个的分类,以及使用所述dpb中的所述参考图片的分类,以管理从所述dpb中的参考图片移除,所述装置被配置为从所述dpb中移除被分类为不用于参考的图片且不再被输出的任何参考图片。2.一种用于将视频编码为数据流的装置,其中,所述数据流应通过将所述数据流馈送到包括编码图片缓存器cpb的解码器来解码,所述装置被配置为:按照编码顺序将视频的图片编码到数据流中,作为接入单元au序列,确定与第一操作点相关的第一cpb参数和与第二操作点相关的第二cpb参数,所述第一cpb参数和所述第二cpb参数中的每个cpb参数指示cpb大小、预定时间偏移、预定时间移除延迟和预定比特率,其中,所述第一cpb参数至少在所述预定比特率方面不同于所述第二cpb参数,以及执行所述确定,使得以多个所选择的比特率中的每个所选择的比特率在所述
第一cpb参数的预定时间偏移与所述第二cpb参数的预定时间偏移之间进行插值产生插值后的时间偏移和插值后的时间移除延迟,从而通过以下方式经由所述cpb将所述数据流馈送到所述解码器:使用相应的所选择的比特率将所述au序列顺序地馈送到所述cpb中,其中暂停对尚未达到根据时间帧移除光栅的虚拟可用时间的接入单元的馈送,直至达到所述虚拟可用时间,所述时间帧移除光栅针对按照所述编码顺序的第一接入单元提前插值后的时间移除延迟,而针对按照所述编码顺序的后续接入单元提前插值后的时间移除延迟与插值后的时间偏移之和;使用所述时间光栅逐au地从所述cpb中移除au,不导致任何下溢和任何上溢,以及将所述cpb参数编码到所述数据流中,其中,所述装置被配置为:在对所述au进行编码时,使用根据存储在解码图片缓存器dpb中的被参考的参考图片的图片间预测,将当前图片编码到当前au中,以及将所述dpb中的当前图片的解码版本插入到所述dpb中,向存储在所述dpb中的每个参考图片指派作为短期参考图片、长期参考图片、以及不用于参考的图片之一的分类,将dpb模式信息写入所述当前au,如果所述dpb模式信息指示第一模式,则根据fifo策略,从所述dpb中移除被分类为短期图片的一个或多个参考图片,如果所述dpb模式信息指示第二模式,则将包括至少一个命令的存储器管理控制信息写入所述当前au,所述命令指示改变指派给存储在所述dpb中的参考图片中的至少一个的分类,其中,所述dpb中的参考图片的分类用于管理从所述dpb中的参考图片移除,其中,被分类为不用于参考的图片且不再被输出的任何参考图片将从所述dpb中移除。
技术总结
公开了使用编码图片缓存器的视频编码,其中使用以所选择的比特率在显式地用信号发送的CPB(或HRD)参数之间进行插值来实现CPB参数传输容量与CPB参数化有效性之间的良好折衷,并且具体地,可以以有效方式进行。可以以有效方式进行。可以以有效方式进行。
技术研发人员:亚戈
受保护的技术使用者:弗劳恩霍夫应用研究促进协会
技术研发日:2023.05.29
技术公布日:2023/10/8
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
