CN108668132A - 管理解码图像缓冲区的方法、图像解码器以及存储介质 - Google Patents

管理解码图像缓冲区的方法、图像解码器以及存储介质 Download PDF

Info

Publication number
CN108668132A
CN108668132A CN201810428643.4A CN201810428643A CN108668132A CN 108668132 A CN108668132 A CN 108668132A CN 201810428643 A CN201810428643 A CN 201810428643A CN 108668132 A CN108668132 A CN 108668132A
Authority
CN
China
Prior art keywords
image
decoding
decoded
buffering area
cache
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.)
Withdrawn
Application number
CN201810428643.4A
Other languages
English (en)
Inventor
王龙飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Singapore Pte Ltd
Original Assignee
MediaTek Singapore Pte Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by MediaTek Singapore Pte Ltd filed Critical MediaTek Singapore Pte Ltd
Priority to CN201810428643.4A priority Critical patent/CN108668132A/zh
Publication of CN108668132A publication Critical patent/CN108668132A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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/423Methods 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请公开了一种管理解码图像缓冲区的方法、图像解码器以及存储介质。其中,该管理解码图像缓冲区的方法包括:在解码待解码图像之前,从解码图像缓冲区中查找可移除缓存图像,其中,可移除缓存图像为在解码待解码图像过程中无需使用的缓存图像;移除解码图像缓冲区中的可移除缓存图像。通过上述方式,本申请能够提高解码图像缓冲区的缓冲内存的轮转速度,减少解码器等待缓冲内存的时间。

Description

管理解码图像缓冲区的方法、图像解码器以及存储介质
技术领域
本申请涉及音视频编解码领域,特别涉及一种管理解码图像缓冲区的方法、图像解码器以及存储介质。
背景技术
在多媒体技术领域,多媒体文件的存储和传输是该技术领域发展的关键。但是由于多媒体源文件所需的资源都比较大,这使得多媒体源文件存在不易存储和传输等问题。为了更好地完成多媒体文件的存储和传输,在多媒体文件进行存储和传输之前,需要采用编解码技术对多媒体源文件进行压缩,以使得多媒体文件的所需资源变小。
现有的视频编解码技术中,由于每一幅图像均可以将自身的重建图像作为后续图像的参考图像,需要将每一幅图像的重建图像存储在参考图像缓冲区的缓存单元中,作为后续图像的参考图像,占用解码图像缓冲区;而解码器在解码不同图像时所需的时间不同,而图像显示帧率则相对恒定,因此会出现解码图像缓冲区的缓存空间不够的情况,此时解码器则需要等待空余的缓存空间,才能继续对图像进行解码,因此解码器需要较长的等待空余缓存空间的时间,导致解码器的播放性能变差。
发明内容
本申请提供的管理解码图像缓冲区的方法、图像解码器以及存储装置,能够提高解码图像缓冲区的缓冲内存的轮转速度,减少解码器等待缓冲内存的时间。
为解决上述技术问题,本申请采用的一个技术方案是:提供一种管理解码图像缓冲区的方法,包括:在解码待解码图像之前,从所述解码图像缓冲区中查找可移除缓存图像,其中,所述可移除缓存图像为在解码所述待解码图像过程中无需使用的缓存图像;以及移除所述解码图像缓冲区中的所述可移除缓存图像。
为解决上述技术问题,本申请采用的另一个技术方案是:提供一种图像解码器,该图像解码器包括:处理器和存储器,所述处理器连接所述存储器,所述存储器包括解码图像缓冲区,所述存储器储存有所述处理器执行的计算机程序;所述处理器运行计算机程序,以实现上述管理解码图像缓冲区的方法。
为解决上述技术问题,本申请采用的又一个技术方案是:提供一种存储介质,存储有程序数据,所述程序数据能够被运行以执行上述管理解码图像缓冲区的方法。
本申请的有益效果是:区别于现有技术,本申请的管理解码图像缓冲区的方法包括:在解码待解码图像之前,从解码图像缓冲区中查找可移除缓存图像,其中,可移除缓存图像为在解码待解码图像过程中无需使用的缓存图像;移除解码图像缓冲区中的可移除缓存图像。通过在待解码图像解码之前,将解码待解码图像过程中不需要的图像从解码图像缓冲区中移除,即可以在解码待解码图像之前,为待解码图像提供足够的存储空间,并将待解码图像存入存储区内,为待解码图像增加了可用的缓冲内存,进而提高了缓冲内存的轮转速度,继而减少了解码器等待空缓冲的时间,从而提升了播放性能。
附图说明
图1是本申请管理解码图像缓冲区的方法第一实施例的流程示意图;
图2是解码图像缓冲区中存储数据的示意图;
图3a-3e是本申请管理解码图像缓冲区的方法第一实施例的原理示意图;
图4是本申请管理解码图像缓冲区的方法第二实施例的流程示意图;
图5是图4中步骤S203的流程示意图;
图6是本申请管理解码图像缓冲区的方法第三实施例的流程示意图;
图7是图6中步骤S301的流程示意图;
图8是图7中步骤S3013的流程示意图;
图9是本申请管理解码图像缓冲区的方法第四实施例的流程示意图;
图10是本申请图像解码器一实施例的结构示意图;
图11是本申请存储介质一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,图1是本申请管理解码图像缓冲区的方法第一实施例的流程示意图。如图1所示,本实施例可包括如下步骤:
S101、在解码待解码图像之前,从解码图像缓冲区中查找可移除缓存图像。
本实施例为解码待解码图像时不需要在等待解码图像缓冲区(Decoded PictureBuffer,DPB)中的缓存空间,因此在解码待解码图像之前执行。一般来说,根据视频编码技术标准AVS.2、H.264或者VP9,解码视频序列应保证参考图像缓冲区中的图像和场景图像缓冲区中的图像总数在解码过程中始终不超过解码图像缓冲区大小。可以理解的是,本实施例中所说的待解码图像指的是当前的待解码图像。
解码图像缓冲区中存储有若干图像,其中,一部分图像作为待解码图像在解码过程中作为参考图像的缓存图像,而另一部分则是在解码待解码图像前不满足输出条件而没有输出的已解码图像,换言之,存储在解码图像缓冲区中图像满足被参考或者未输出两条件之一。本实施例中,可移除缓存图像指的即为解码待解码图像过程中无需使用的缓存图像,也就是在解码待解码图像时不被参考且已输出的缓存图像。
如图2所示,实线圆框表示解码图像缓冲区中存储的解码后可移除缓存图像,虚线圆框中表示解码图像缓冲区中存储的用于后续解码待解码图像时需要的参考图像,二者交集的部分表示解码后继续作为解码后续图像的参考图像的部分缓存图像,可以理解的是,解码后可移除缓存图像以及后续解码待解码图像时需要的参考图像全部存储在解码图像缓冲区中,会占用解码图像缓冲区中的较多的存储空间,而实线圆框中除去可作为参考图像的部分缓存图像,其余的解码后可移除缓存图像在后续解码图像的过程中并不会用到,则可将这部分图像在解码待解码图像前进行移除,以保证在解码待解码图像时,解码图像缓冲区能够有足够的空图像缓冲区。
本实施例中,会在解码图像缓冲区中对参考图像进行标记。即在解码图像缓冲区中进行查找,查找到的满足作为参考图像条件的缓存图像则标记为参考图像,其中,参考图像条件为已经标记为“被参考”,且解码顺序索引等于待解码图像的解码顺序索引和该查找到的图像的解码顺序偏移量之差。此外,对G图像或者GB图像进行标记,标记为场景参考图像,标记的参考图像和场景参考图像则不会被移除。
S102、移除解码图像缓冲区中的可移除缓存图像。
将步骤S101中在解码图像缓冲区中查找到的可移除缓存图像后,则将可移除缓存图像从解码图像缓冲区移除,以使解码图像缓冲区有足够的缓存空间存储解码待解码图像之后得到的解码图像。
对本实施例的实现原理进行说明:
(1)加速图像渲染
如图3a所示,假设解码图像缓冲区能够存储5张图像,图像6、图像8、图像9和图像10被标记为参考图像,图像11为待解码图像(图像11未被解码,没有存储在解码图像缓冲区内)。如图3b所示,根据现有AVS2实施方案,将在解码图像11完成后根据图像11头部信息将已解码图像6加入渲染队列,使得图像8完成渲染后需要等待图像11解码完成才能渲染图像6。本实施例,如图3c所示,在解码图像11前,提前根据图像11头部信息,将图像6加入渲染队列,在图像8完成渲染后,即可渲染图像6,不必依赖图像11解码完成,从而加速图像渲染。
(2)缩短等待可用解码缓冲区时间
如图3d所示,假设解码图像缓冲区能够存储5张图像,图像6、图像8、图像9和图像10被标记为参考图像,图像11被标记为非参考图像,待解码图像为图像12(图像12未被解码,没有存储在解码图像缓冲区内),而解码图像缓冲区内存储的图像6在解码图像12完成后被标记为非参考图像,即图像6不作为图像12的参考图像。现有AVS2实施方案,图像6将在图像12解码完成后被移除,而5张图像已经占满了解码图像缓冲区的缓存空间,此时若需要解码图像12,但解码图像缓冲区中没有空图像缓冲区用于放置解码图像12后的解码图像,因此对于待解码的图像12,必须需要等待图像11完成渲染并输出后腾出图像11占用的缓存空间之后,才能进行解码。进而使图像的解码速度受到影响。进一步如图3e所示,本实施例则会在解码图像12之前,将不作为图像12的参考图像的图像6进行移除,进而在解码图像12之前即为图像12提供了足够的空图像缓冲区,解码图像12可以不必等待图像11完成渲染并输出,即可进行解码并将解码后的图像存储至原来图像6占用的缓冲区,提升了播放性能。
本实施例通过在解码待解码图像之前,将解码待解码图像时不被参考,并且已输出的缓存图像进行移除,以提前将待解码图像存储至解码图像缓冲区,使解码待解码图像时不需要再等待空余的缓存空间,进而提高了缓冲内存的轮转速度,继而减少了解码器等待空图像缓冲区的时间,从而提升了播放性能。
进一步,参阅图4,图4是本申请管理解码图像缓冲区的方法第二实施例的流程示意图。图4所示,本实施例可包括如下步骤:
S201、在解码待解码图像之前,获取待解码图像的头部信息。
本实施例中,获取的待解码图像的头部信息至少可包括待解码图像的解码顺序索引(Decode order index,DOI)和待移除图像对应的参考图像配置集,此外,待解码图像的头部信息还可以包括时间层标识(Temporal id)等信息。
待解码图像的上述头部信息能够指示出解码待解码图像时,解码图像缓冲区中的哪些缓存图像需要被用作参考图像,哪些缓存图像不需要被用作参考图像,进而继续执行步骤S202。
S202、根据头部信息,在解码图像缓冲区中查找不属于待解码图像的参考图像的已输出的缓存图像,并将缓存图像作为可移除缓存图像。
根据步骤S201中获取到的包括待解码图像的图像类型、解码顺序索引和参考图像配置集等在内的头部信息,利用头部信息在解码图像缓冲区中查找解码待解码图像过程中无需作为参考图像的缓存图像,将这一部分图像标记为非参考图像,即将查找出的解码待解码图像过程中无需作为参考图像的已输出的缓存图像为可移除缓存图像,其中,已输出的缓存图像为已渲染的缓存图像。
在一实施方式中,头部信息至少包括图像类型、待解码图像的解码顺序索引、标记为非参考图像的缓存图像的解码顺序偏移量以及时间层标识。此时,根据头部信息,在解码图像缓冲区中查找不属于待解码图像的参考图像的缓存图像具体为在解码图像缓冲区中查找满足可标记为非参考图像条件的缓存图像,将满足可标记为非参考图像条件的缓存图像标记为非参考图像,标记的非参考并且已输出(已渲染)的缓存图像即为可移除缓存图像。
其中,解码顺序索引为8位无符号整数,说明当前的待解码图像的解码顺序索引值(GB图像的解码顺序索引应等于其解码顺序的前一幅图像的解码顺序索引)。可标记为非参考图像解码顺序偏移量(Delta doi of removed picture[i][j])为6位无符号整数,取值范围应是1~63,说明从当前遍历的图像开始不会被参考的图像与当前的待解码图像解码顺序的差值,其中,i是参考图像配置集的编号,j是可标记为非参考图像的编号,对同一参考图像配置集而言,不同编号的可标记为非参考图像解码顺序偏移量的值各不相同。时间层标识为3位无符号整数,时间层标识的取值范围是0~最大时间层标识(Max Temporalid),G图像或GB图像的时间层标识应为0,如果位流中不存在时间层标识,则当前的待解码图像的时间层标识应为0,且时间层标识为0说明是最低层。
本实施例在解码待解码图像前,通过对缓冲图像进行标记,以将标记的缓存图像作为可移除缓存图像。具体的,在解码待解码图像前,输出可输出图像,并将解码待解码图像时不被参考的缓存图像标记为非参考图像,将同时具备可输出图像和非参考图像属性的图像均记为可移除缓存图像。
本实施例中,待解码图像可以是I图像、P图像、F图像、S图像、G图像和/或GB图像。
本实施例中,在解码待解码图像前,对待解码图像进行参考图像或非参考图像的标记,具体的:如果待解码图像不是GB图像,且其对应的参考图像配置集中的被参考标志为1(refered_by_others_flag[i]),则将该待解码图像标记为普通参考图像属性,其中i为待解码图像对应的参考图像配置集的编号。如果待解码图像不是G或GB图像,并且其对应的参考图像配置集中被参考标志为0(refered_by_others_flag[i]),则将该待解码图像标记为非参考图像属性,其中,i为待解码图像对应的参考图像配置集的编号。如果待解码图像即没有标记普通参考图像属性,也没有标记场景参考图像属性,则将其标记为非参考图像,否则标记为参考图像。
本实施例中,对已解码的缓存图像进行非参考图像的标记,具体为:如果待解码图像是G图像或GB图像,则去除解码图像缓存区中之前解码的G图形和GB图像的场景图像参考的属性标识;遍历解码图像缓冲区,如果待解码图像的解码顺序索引(DOI)减去解码图像缓冲区中已解码的某一图像(不为GB图像)的解码顺序索引(DOI),得到的差值在待解码图像对应的参考图像配置集的待移出图像解码顺序偏移量集合(elat doi of removedpicture[i][j])中,但不在待解码图像对应的参考图像配置集的参考图像解码顺序偏移量集合(delat doi of reference picture[i][j])中;则去除该已解码的图像的普通参考图像属性。如果解码图像缓冲区中某图像没有普通参考图像属性标识或场景参考图像属性标识,则该图像被标记为非参考图像。
在本实施例中,解码待解码图像之前,输出满足输出条件的缓存图像,即将解码待解码图像前,标记为未输出图像的缓存图像。此外,遍历解码图像缓冲区,如果解码图像缓冲区中的某一图像被标记为未输出,且其解码顺序索引与该图像输出延迟之和小于或等于待解码图像解码顺序索引,且该图像的显示顺序索引小于待解码图像的显示顺序索引,则该图像被标记为可输出图像;进一步,按显示顺序索引由小到大的顺序,输出标记为可输出图像的缓存图像,并将输出的缓存图像标记为已输出,以在后续步骤中移除。
此时,本实施例中可移除的缓存图像符合如下条件中的任意一个:被标记为已输出且被标记为非参考图像的缓存图像;或,不是GB图像,且与待解码图像的解码顺序索引的差值大于63的缓存图像;又或;不是GB图像,且与待解码图像的解码顺序索引的差值的绝对值大于或等于128的缓存图像。
在其他实施方式中,可移除条件可以根据头部信息包含的内容不同而进行调整。
可以理解的是,上述三种不同的可移除条件可同时作为在解码图像缓冲区中查找不属于待解码图像的参考图像的缓存图像的条件,换言之,在解码图像缓冲区中查找到的满足上述任意一种可移除条件的图像均可作为不属于待解码图像的参考图像的缓存图像。
S203、移除解码图像缓冲区中的可移除缓存图像。
将步骤S101中在解码图像缓冲区中查找到的可移除缓存图像后,则将可移除缓存图像从解码图像缓冲区移除,以使解码图像缓冲区有足够的缓存空间来存储待解码图像的解码图像。
由于可能会出现待解码图像满足上述任意一种可移除条件的情况,进一步,参考图5,如图5所示,步骤S203可包括如下步骤:
S2031、判断查找到的可移除缓存图像是否是待解码图像。
根据步骤S202的查找方式对可移除缓存图像进行查找,可能存在待解码图像正好满足步骤S202中的可移除条件,若直接对满足可移除条件的图像进行移除,则可能将待解码图像进行移除,导致出现移除错误,使图像播放出现问题。因此,本实施例中,在步骤S202查找可移除缓存图像之后,进一步判断查找到的可移除缓存图像是否为待解码图像,根据判断结果选择后续执行步骤。
S2032、移除查找到的可移除缓存图像。
若步骤S2031中的判断结果为查找到的可移除缓存图像不是待解码图像,则可以确定可移除缓存图像可以直接移除,即执行移除可移除缓存图像的步骤。可以理解的是,若步骤S2031的判断结果为查找到的可移除图形是待解码图像,则继续执行步骤S202,继续查找不是待解码图像的可移除缓存图像。
参阅图6,图6是本申请管理解码图像缓冲区的方法第三实施例的流程示意图。如图6所示,本实施例可包括如下步骤:
S301、在解码待解码图像之前,输出解码图像缓冲区中的可输出缓存图像,并将所述可输出缓存图像的属性标识记为已输出;其中,可输出缓存图像为满足输出条件的已解码图像。
可理解的是,当前的待解码图像之前的已经解码的图像也可能存储在解码图像缓冲区内,对解码当前待解码图像所需的解码图像缓冲区的空图像缓冲区造成影响。因此,本实施例在解码待解码图像之前,先对已解码,且满足输出调节的已解码图像进行查找,并将查找到的满足输出条件的已解码图像进行输出。本实施例中,对输出的缓存图像的属性标识记为已输出,以便于后续步骤中将这部分缓存图像移除。
本实施例在解码当前的待解码图像之前,将不是当前解码的可输出缓存图像进行输出,从而在码流起播时能提前一个解码周期输出图像,进而达到减少等待起播时间的目的,提高播放性能。
进一步,参阅图7,如图7所示,步骤S301可包括如下步骤:
S3011、在解码待解码图像之前,从待解码图像的头部信息中获取待解码图像的图像输出延迟和待解码图像的解码顺序索引。
在对当前的待解码图像进行解码之前,获取到待解码图像的头部信息。本实施例中获取的头部信息至少包括待解码图像的图像输出延迟和待解码图像的解码顺序索引。待解码图像的图像输出延迟和待解码图像的解码顺序索引用于在后续步骤中对解码图像缓冲区中的缓存图像是否满足输出条件进行判断。
S3012、根据获取信息,在解码图像缓冲区中查找满足输出条件的已解码图像作为可输出缓存图像。
本实施例中,输出条件为待解码图像不是GB图像;且在解码图像缓冲区中解码顺序索引为第二解码顺序索引的缓存图像,其中,第二解码顺序索引与待解码图像的图像输出延迟之和小于或等于待解码图像的解码顺序索引。
根据AVS2编码标准规定,GB图像不作为可输出图像,因此本实施例中查找满足输出条件的已解码图像时,会将GB图像排除,在不是GB图像的其余图像中进行查找。而已解码图像的解码顺序索引应小于待解码图像的解码顺序索引,因此,查找的满足输出条件的已解码图像的解码顺序索引与待解码图像的图像输出延迟之和应小于或等于待解码图像的解码顺序索引。
S3013、按照显示顺序索引从小到大的顺序依次输出可输出缓存图像。
步骤S3013中查找到满足输出条件的已解码图像后,将查找到的满足输出条件的已解码图像作为可输出缓存图像,并输出可输出缓存图像。本实施例会获取查找到的可输出缓存图像的显示顺序索引,根据显示顺序索引从小到大的顺序依次输出可输出缓存图像。
可以理解的是,若待解码图像的图像输出延迟为0,则步骤S3012中查找到的满足输出条件的已解码图像中会包含待解码图像,为了避免误将待解码图像输出的情况,进一步参阅图8,如图8所示,步骤S3013可包括如下步骤:
S3131、判断查找到的满足输出条件的已解码图像是否为待解码图像。
由于待解码图像的图像输出延迟可能为0,则此时查找到的满足输出条件的已解码图像可包括当前的待解码图像,而待解码图像实际上是未解码的图像,不应被输出。因此,本实施例在查找到满足上述输出条件的已解码图像之后,对查找到的图像进行判断,若查找到的满足上述输出条件的已解码图像是待解码图像,则继续执行步骤S3012,继续查找一下张图像;若查找到的满足输出条件的已解码图像不是待解码图像,则执行步骤S3132。
S3132、按照显示顺序索引从小到大的顺序依次输出可输出缓存图像。
获取查找到的满足输出条件的已解码图像的显示顺序索引,根据显示顺序索引从小到大的顺序对满足输出条件的已解码图像依次进行输出。
请继续回到图6的流程图。
S302、从解码图像缓冲区中查找可移除缓存图像,其中,可移除缓存图像为在解码待解码图像过程中无需使用的缓存图像。
在步骤S301对满足输出条件的已解码图像进行输出后,继续在解码图像缓冲区中查找可移除缓存图像。本实施例中步骤S302可与图1所示的方法第一实施例的步骤S101相同;此外,从解码图像缓冲区中查找可移除缓存图像的具体执行内容也可以与图4所示的方法第二实施例的步骤S201和步骤S202的执行内容相同,此处不再赘述。
S303、移除解码图像缓冲区中的可移除缓存图像。
在步骤S302之后,即可将查找到的可移除缓存图像进行移除。本实施例中,移除查找到的可移除缓存图像的执行内容可以与图1所示的步骤S102或图4所示的步骤S203相同。
进一步的,本实施例中的步骤S303还可以如图5所示的步骤S203的实施方式相同,即在步骤S302查找到可移除缓存图像之后,判断查找到的可移除缓存图像是否是待解码图像。若可移除缓存图像不是当前的待解码图像,则可以确定查找到的可移除缓存图像可以直接移除,即执行移除可移除缓存图像的步骤;若查找到的可移除图形是当前的待解码图像,则继续执行步骤S302,继续查找下一张可移除缓存图像。
进一步,参阅图9,图9是本申请管理解码图像缓冲区的方法第四实施例的流程示意图。本实施例是在图1至图8所示的管理解码图像缓冲区的方法第一实施例至第三实施例的基础上进一步改进得到的。
如图9所示,本实施例可包括如下步骤:
S401、在解码待解码图像之前,从解码图像缓冲区中查找可移除缓存图像。
S402、移除解码图像缓冲区中的可移除缓存图像。
本实施例中步骤401和步骤402可以参见图1至5所示的管理解码图像缓冲区的方法第一实施例或第二实施例中查找可移除缓存图像以及移除可移除缓存图像的步骤,具体请参将上述对方法第一实施例或第二实施例的详细说明,此处不再赘述。
S403、在解码图像缓冲区中寻找空图像缓冲区,其中,空图像缓冲区包括移除可移除缓存图像后的缓冲区。
在解码图像缓冲区中寻找用于缓存待解码图形的空图像缓冲区。由于前面的步骤中,已经输出了满足输出条件的已解码图像以及移除了满足移除条件的可移除缓存图像,因此,本实施例中查找到的空图像缓冲区包括满足尚未使用的空缓冲区以及可移除缓存图像占用的缓冲区。
可以理解的是,本实施例中寻找空图像缓冲区是在解码待解码图像之前,且输出了满足输出条件的已解码图像以及移除了满足移除条件的可移除缓存图像之后执行的,因此如果能找到空的缓冲区,从而进行解码,减少了解码器等待空图像缓冲区的情景。
S404、在空图像缓冲区中选择一缓冲区用于缓存待解码图像经解码得到的解码图像。
在寻找的空图像缓冲选择合适的缓冲区,当解码待解码图像时,将待解码图像解码后得到的解码图像放入选择的缓冲区。
根据视频编码技术标准AVS.2、H.264或者VP9,解码完一幅图像后,会对该解码完成的图像进行属性标记的操作。
下面以AVS2技术标准实施例说明属性标记过程:具体的,若当前解码图像是G或者GB图像,则将待解码图像解码后加上场景参考图像属性。若当前解码图像不是GB图像,则将当前图像标记为未输出图像并且进行进一步判断:若当前解码图像对应的被参考标志(ReferedByOthersFlag[i])的值为1,则对当前解码图像加上普通参考图像属性。最后,如果当前解码图像带有场景参考图像或者普通参考图像属性,则标记为参考图像,否则标记为非参考图像。
其中,被参考标志(ReferedByOthersFlag[i])也是参考图像配置集中的原值,是一个二值变量,若被参考标志的值为1,说明该图像可用做参考图像,若被参考标志的值为0,表示该图像不应用做参考图像,i的参考图像配置集的编号。
S405、在待解码图像解码后,输出解码图像缓冲区中的可输出缓存图像。
本实施例中,待解码图像解码后的解码图像放入缓冲区后,被标记为未输出图像。因此,解码待解码图像得到的解码图像可作为解码图像缓冲区中的可输出缓存图像被输出,以便为下一个待解码图像腾出存储空间。
本实施例中,解码图像后,输出解码图像缓冲区中的可输出缓存图像的具体执行内容请参阅图6和图7中的步骤S301,具体请参见上述对图6和图7中步骤S301的详细说明,其中,可输出缓存图像的判断条件如下:
(1)遍历解码图像缓冲区,如果解码图像缓冲区的某一图像,其被标记为未输出并且其解码顺序索引与其图像输出延迟之和等于或小于待解码图像解码顺序索引,则该图像标记为可输出图像;
(2)如果当前解码图像的输出延迟(Picture Output Delay)的值为0,则当前解码图像完成解码图像后,也是可输出图像。
具体图像输出过程,此处不再赘述。
S406、移除解码图像缓冲区中的可移除缓存图像。
本实施例中,待解码图像解码后的解码图像放入缓冲区后,即可作为后续的待解码图形的参考图像,或是解码后续待解码图像时无需使用的缓存图像。因此,解码待解码图像得到的解码图像可作为解码图像缓冲区中的可移除缓存图像被移除,以便为下一个待解码图像腾出存储空间。
参阅图10,图10是本申请图像解码器一实施例的结构示意图。如图10所示,本实施例的图像解码器500包括相互连接的处理器501和存储器502,该存储器502包括解码图像缓冲区,此外,存储器502中存储有处理器501执行的计算机程序。
本实施例的图像解码器500中,处理器501用于根据计算机程序对解码图像缓冲区进行管理,具体的,处理器501执行的解码图像缓冲区的管理方法可与图1至图9所示的管理解码图像缓冲区的方法第一实施例至第四实施例的任一实施例相同,具体实施内容参见上述对方法第一实施例至第四实施例的详细说明,此处不再赘述。
进一步,本实施例中,解码图像缓冲区包括参考图像缓冲区或者场景图像缓冲区。标记为场景参考图像和普通参考图像的缓存图像只存储一份数据在解码图像缓冲区中,通过标记其作为场景参考像图或者普通参考图像区分其处于参考图像缓冲区或者场景图像缓冲区。
进一步,本实施例中图像解码器的视频编码技术标准可以是AVS.2、H.264或者VP9。此外,图像解码器还用于解码待解码图像。
进一步,本申请还公开一存储介质实施例,本实施例中的存储介质601存储有程序数据6011,如图11所示,该存储介质601可包括至少一个存储块,程序数据分别存储在至少一个存储块中,或存储在部分存储块中。该程序数据能够被执行以实现如管理解码图像缓冲区的方法第一实施例至第四实施例的任一实施例,具体实施内容参见上述对方法第一实施例至第四实施例的详细说明,此处不再赘述。
以上仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围。

Claims (13)

1.一种管理解码图像缓冲区的方法,其特征在于,所述方法包括:
在解码待解码图像之前,从所述解码图像缓冲区中查找可移除缓存图像,其中,所述可移除缓存图像为在解码所述待解码图像过程中无需使用的缓存图像;以及
移除所述解码图像缓冲区中的所述可移除缓存图像。
2.根据权利要求1所述的管理解码图像缓冲区的方法,其特征在于,所述从所述解码图像缓冲区中查找可移除缓存图像的步骤,包括:
获取所述待解码图像的头部信息;
根据所述头部信息,在所述解码图像缓冲区中查找不属于所述待解码图像的参考图像的已输出的缓存图像,并将所述缓存图像作为所述可移除缓存图像。
3.根据权利要求2所述的管理解码图像缓冲区的方法,其特征在于,所述头部信息至少包括所述待解码图像的属性标识;
根据所述头部信息,在所述解码图像缓冲区中查找不属于所述待解码图像的参考图像的已输出的缓存图像的步骤包括:
在所述解码图像缓冲区中查找满足以下可移除条件的缓存图像,其中,所述可移除条件包括:所述缓存图像的属性标识为非参考图像和已输出图像的缓存图像。
4.根据权利要求2所述的管理解码图像缓冲区的方法,其特征在于,所述头部信息至少包括所述待解码图像的解码顺序索引;
根据所述头部信息,在所述解码图像缓冲区中查找不属于所述待解码图像的参考图像的已输出的缓存图像的步骤,包括:
在所述解码图像缓冲区中查找满足以下可移除条件的缓存图像,其中,所述可移除条件包括:所述待解码图像不是场景图像,且所述缓存图像的显示顺序索引值与所述待解码图像的显示顺序索引值的差值的绝对值大于或等于128,其中,所述待解码图像的显示顺序索引值为所述待解码图像的解码顺序索引、所述待解码图像的图像输出延迟以及所述待解码图像的图像重排列延迟之和;或
所述待解码图像不是场景图像,且所述缓存图像的解码顺序索引与当前解码图像对应的参考图像配置集中移除图像偏移量之和等于当前解码图像解码顺序索引;或
所述待解码图像不是场景图像,并且所述缓存图像的解码顺序索引与待解码图像的解码索引差值大于63。
5.根据权利要求1所述的管理解码图像缓冲区的方法,其特征在于,
在所述从解码图像缓冲区中查找可移除缓存图像之前,所述方法还包括:
在解码待解码图像之前,输出解码图像缓冲区中的可输出缓存图像,并将所述可输出缓存图像的属性标识记为已输出;其中,所述可输出缓存图像为满足输出条件的已解码图像。
6.根据权利要求5所述的管理解码图像缓冲区的方法,其特征在于,所述方法还包括:
对所述待解码图像的属性标识进行标记;
对所述解码图像缓冲区中的缓存图像的属性标识进行标记。
7.根据权利要求6所述的管理解码图像缓冲区的方法,其特征在于,所述对所述待解码图像的属性标识进行标记,包括:
确定所述待解码图像的图像类型;
若所述待解码图像不是场景图像,且所述待解码图像对应的参考图像配置集中的被参考标志为1,则将所述待解码图像的属性标识设置为普通参考图像;
若所述待解码图像不是场景图像,且所述待解码图像对应的参考图像配置集中的被参考标志为0,则将所述待解码图像的属性标识设置为非参考图像;
若所述待解码图像是场景图像,则将所述待解码图像的属性标识设置为场景参考图像。
8.根据权利要求6所述的管理解码图像缓冲区的方法,其特征在于,所述对所述解码图像缓冲区中的缓存图像的属性标识进行标记,包括:
在所述解码图像缓冲区中查找满足以下非参考图像条件的缓存图像,将查找到的缓存图像的属性标识设置为非参考图像;
其中,所述非参考图像条件包括:
所述缓存图像的解码顺序索引与所述待解码图像的解码顺序索引的差值在所述待解码图像的参考图像配置集的待移出图像解码顺序偏移量集合中,且不在所述待解码图像的参考图像配置集的参考图像解码顺序偏移量集合中;或
当所述待解码图像为场景图像时,所述解码图像缓冲区中的场景图像。
9.根据权利要求1所述的管理解码图像缓冲区的方法,其特征在于,在所述移除所述解码图像缓冲区中的所述可移除缓存图像之后,所述方法还包括:
在所述解码图像缓冲区中寻找空图像缓冲区,其中,所述空图像缓冲区包括移除所述可移除缓存图像后的缓冲区;
在所述空图像缓冲区中选择一缓冲区用于缓存所述待解码图像经解码得到的解码图像;
在所述待解码图像解码后,输出所述解码图像缓冲区中的可输出缓存图像;以及
移除所述解码图像缓冲区中的所述可移除缓存图像。
10.一种图像解码器,其特征在于,所述图像解码器包括:处理器和存储器,所述处理器连接所述存储器,所述存储器储存有所述处理器执行的计算机程序,所述存储器包括解码图像缓冲区;
所述处理器运行计算机程序,以实现权利要求1至9任一项所述的方法。
11.根据权利要求10所述的图像解码器,其特征在于,所述解码图像缓冲区包括参考图像缓冲区或者场景图像缓冲区;
对同时做场景参考图像和普通参考图像的缓存图像只存储一份数据,通过标记其作为场景参考像图或者普通参考图像区分其处于参考图像缓冲区或者场景图像缓冲区。
12.根据权利要求10所述的图像解码器,其特征在于,所述图像解码器的视频编码技术标准是AVS.2、H.264或者VP9;
所述处理器还用于解码待解码图像。
13.一种存储介质,其特征在于,存储程序数据,所述程序数据能够被运行以执行权利要求1-9任一项所述的方法。
CN201810428643.4A 2018-05-07 2018-05-07 管理解码图像缓冲区的方法、图像解码器以及存储介质 Withdrawn CN108668132A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810428643.4A CN108668132A (zh) 2018-05-07 2018-05-07 管理解码图像缓冲区的方法、图像解码器以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810428643.4A CN108668132A (zh) 2018-05-07 2018-05-07 管理解码图像缓冲区的方法、图像解码器以及存储介质

Publications (1)

Publication Number Publication Date
CN108668132A true CN108668132A (zh) 2018-10-16

Family

ID=63778649

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810428643.4A Withdrawn CN108668132A (zh) 2018-05-07 2018-05-07 管理解码图像缓冲区的方法、图像解码器以及存储介质

Country Status (1)

Country Link
CN (1) CN108668132A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110012295A (zh) * 2019-05-07 2019-07-12 杭州当虹科技股份有限公司 一种avs2解码器参考图像管理的容错方法
WO2020156175A1 (zh) * 2019-02-01 2020-08-06 浙江大学 位流检验方法、解码方法及其装置
CN112055231A (zh) * 2020-08-31 2020-12-08 浙江大华技术股份有限公司 视频解码方法、解码装置、解码器及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060002479A1 (en) * 2004-06-22 2006-01-05 Fernandes Felix C A Decoder for H.264/AVC video
CN101317459A (zh) * 2005-10-11 2008-12-03 诺基亚公司 用于可伸缩视频编码的有效解码图像缓存管理
US20130089134A1 (en) * 2011-10-10 2013-04-11 Qualcomm Incorporated Efficient signaling of reference picture sets
CN103873872A (zh) * 2012-12-13 2014-06-18 联发科技(新加坡)私人有限公司 参考图像管理方法及装置
CN104243988A (zh) * 2013-06-14 2014-12-24 浙江大学 视频编解码方法及装置、传输视频码流的方法及视频码流
CN107592543A (zh) * 2016-07-06 2018-01-16 北京大学 视频解码处理方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060002479A1 (en) * 2004-06-22 2006-01-05 Fernandes Felix C A Decoder for H.264/AVC video
CN101317459A (zh) * 2005-10-11 2008-12-03 诺基亚公司 用于可伸缩视频编码的有效解码图像缓存管理
US20130089134A1 (en) * 2011-10-10 2013-04-11 Qualcomm Incorporated Efficient signaling of reference picture sets
CN103873872A (zh) * 2012-12-13 2014-06-18 联发科技(新加坡)私人有限公司 参考图像管理方法及装置
CN104243988A (zh) * 2013-06-14 2014-12-24 浙江大学 视频编解码方法及装置、传输视频码流的方法及视频码流
CN107592543A (zh) * 2016-07-06 2018-01-16 北京大学 视频解码处理方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020156175A1 (zh) * 2019-02-01 2020-08-06 浙江大学 位流检验方法、解码方法及其装置
US11758147B2 (en) 2019-02-01 2023-09-12 Zhejiang University Methods and apparatus of bitstream verifying and decoding
CN110012295A (zh) * 2019-05-07 2019-07-12 杭州当虹科技股份有限公司 一种avs2解码器参考图像管理的容错方法
CN110012295B (zh) * 2019-05-07 2021-05-25 杭州当虹科技股份有限公司 一种avs2解码器参考图像管理的容错方法
CN112055231A (zh) * 2020-08-31 2020-12-08 浙江大华技术股份有限公司 视频解码方法、解码装置、解码器及电子设备
CN112055231B (zh) * 2020-08-31 2021-10-15 浙江大华技术股份有限公司 视频解码方法、解码装置、解码器及电子设备

Similar Documents

Publication Publication Date Title
US9961398B2 (en) Method and device for switching video streams
CN108668132A (zh) 管理解码图像缓冲区的方法、图像解码器以及存储介质
CN103747317B (zh) 一种播放库在不稳定网络下的流畅播放控制方法
CN105900401B (zh) 用于对层间依赖性进行编码的方法、装置和计算机程序
US20040060068A1 (en) Method and system for emulating an HTTP server through a broadcast carousel
CN110830838A (zh) 一种安防高清录像倒播方法及装置
CN103747259A (zh) 视频处理方法及装置
CN106231225A (zh) 一种网络硬盘录像机数据处理方法和系统
KR20180137592A (ko) 네트워크 장치 및 오류 처리
TW200833117A (en) Method and apparatus for decoding/encoding of a video signal
EP3457654B1 (en) Apparatus and method for delivering and receiving multimedia data in hybrid network
CN108093293A (zh) 一种视频渲染方法及系统
CN104394450B (zh) 一种多媒体帧的处理方法及装置
CN112929755B (zh) 进度拖动过程中的视频文件播放方法及装置
CN112653904B (zh) 一种基于pts与dts修改的快速视频裁剪方法
CN106331840A (zh) 一种基于hls协议的音视频的跳转播放方法及装置
CN109963176A (zh) 视频码流处理方法、装置、网络设备和可读存储介质
CN103270764B (zh) 用于处理视频信号的方法和设备
CN107273310A (zh) 一种多媒体数据的读取方法、装置、介质及设备
CN107027052B (zh) Svc视频自适应降帧率的方法及系统
US20020081098A1 (en) Compressed-data processing arrangement and related method
WO2018014546A1 (zh) 一种视频数据的处理方法及装置
CN108521611B (zh) 一种抗抖动视频数据存取方法以及计算机设备
CN110213643A (zh) 一种流媒体缓存方法、装置及终端设备
CN105744297A (zh) 码流传输方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20181016