视频编解码方法、装置及生成的视频码流的制作方法

文档序号:7801052阅读:220来源:国知局
视频编解码方法、装置及生成的视频码流的制作方法
【专利摘要】本发明公开了一种视频编解码方法及装置、传输视频码流的方法,其中,视频编码方法包括:确定编码的第i个序列输出延时的帧数,并为编码的第i个序列分配一个大小不小于此帧的图像存储空间;根据编码的第i个序列已编码帧的个数和输出延时的帧数管理编码的第i个序列的图像存储空间图像的输出;将编码的第i个序列输出延时的帧数写入发送给视频解码端的码流。本发明提出采用输出延时的帧数这一参数来管理图像的输出,一方面,解决了AVS2WD5.0中图像输出过慢而导致大量的未输出帧堆积在解码图像缓冲区中的问题,同时解决了提案M3226在跳帧时无法正常输出图像的问题。
【专利说明】视频编解码方法、装置及生成的视频码流
【技术领域】
[0001]本发明属于视频编解码【技术领域】,特别涉及一种视频编解码方法、装置及生成的视频码流。
【背景技术】
[0002]在视频解码的过程中,如何管理解码图像的输出,一直是一个重要的问题,合理的图像输出方法应使得图像按照显示顺序的大小从小到大依次输出,同时还应该在合理的时间输出,避免因为图像输出过慢而导致大量的未输出帧堆积在解码图像缓冲区中,造成解码图像缓冲区管理效率过低,进而影响帧间参考的效率。
[0003]在HEVC 标准中,图像的输出是由 SEI picture timing O 中的 pic_dpb_output_de I ay, p i c_dpb_output_du_de I ay 以及 decoding_unit_info ()中的 p i c_sp t_dpb_output_du_delay管理的。三个语法元素都用于表示一个解码图像进入解码图像缓冲区之后输出的延时。通过该管理机制,能使解码图像按照显示顺序,以最快的速度输出图像,但是缺点在于每帧都需要传输一个输出延时,这将会是一个不小的开销。
[0004]在正在制定的AVS2标准WD5.0中,图像的输出是由解码图像缓冲区大小MAX_BUFFER_SIZE和图像显示顺序索引POI —同管理的,管理的方法为,当解码图像缓冲区中的图像个数达到MAX_BUFFER_SIZE,则输出解码图像缓冲区中未输出图像中POI最小的一帧图像。这种输出方法存在着一个较为严重的问题,即由于必须等到解码图像缓冲区中满才能输出一帧,这会导致图像输出过慢而导致大量的未输出帧堆积在解码图像缓冲区中,例如解码GOP=S的层次B结构。前9帧的显示顺序、解码顺序以及被之后参考情况分别为:
[0005]
【权利要求】
1.一种视频的编码方法,其特征在于,包括以下步骤: (1)确定编码的第i(i>=0)个序列输出延时的帧数SeqDelayNum[i](SeqDelayNum[i]>=l),并为编码的第i个序列分配一个大小不小于SeqDelayNum[i]帧的图像存储空间; (2)根据编码的第i个序列已编码帧的个数SeqCodedNum[i](SeqCodedNum[i]>=0)和输出延时的帧数SeqDelayNum[i]管理编码的第i个序列的图像存储空间图像的输出;具体管理方法为:在图像输出检测时刻,如果编码的第i个序列已编码帧的个数SeqCodedNum[i]大于等于输出延时的帧数SeqDelayNum[i],则从编码的第i个序列的图像存储空间中输出显示顺序最小的一帧图像;否则,不输出任何图像; (3)将编码的第i个序列输出延时的帧数SeqDelayNum[i]写入发送给视频解码端的码流。
2.根据权利要求1所述视频的编码方法,其特征在于,所述步骤3中所述第i个序列输出延时的帧数SeqDelayNum[i]在序列头的码流中写入或在序列头扩展的码流中写入或在序列头之后第一个帧的图像头的码流中写入。
3.一种视频的解码方法,其特征在于,包括以下步骤: (1)从接收自视频编码端的码流中获取解码的第i(i>=0)个序列的输出延时的帧数SeqDelayNum[i] (SeqDelayNum[i]>=1),并为解码的第i个序列分配一个大小不小于SeqDelayNum[i]帧的图像存储空间; (2)根据解码的第i个序列已解码帧的个数SeqDecodeNum[i](SeqDecodeNum[i]>=0)和输出延时的帧数SeqDelayNum[i]管理解码的第i个序列图像存储空间图像的输出;具体管理方法为:在图像输出检测时刻,如果解码的第i个序列序列已解码帧的个数SeqDecodeNum[i]大于等于输出延时的帧数SeqDelayNum[i],则从解码的第i个序列的图像存储空间中输出显示顺序最小的一帧图像;否则,不输出任何图像。
4.根据权利要求3所述视频的解码方法,其特征在于,所述步骤I中,所述获取解码的第i (i>=0)个序列的输出延时的帧数SeqDelayNum[i],获取的方法包括:在序列头的码流中获取或在序列头扩展的码流中获取或在序列头之后第一个帧的图像头的码流中获取。
5.一种视频编码装置,其特征在于,包括编码处理单元和码流写入单元,所述编码处理单元用于确定编码的第i (i>=0)个序列输出延时的帧数SeqDelayNum[i](SeqDelayNum[i] >=1),并为编码的第i个序列分配一个大小不小于SeqDelayNum[i]帧的图像存储空间;并且根据编码的第i个序列已编码帧的个数SeqCodedNum[i](SeqCodedNum[i]>=0)和输出延时的帧数SeqDelayNum[i]管理编码的第i个序列的图像存储空间图像的输出;具体管理方法为:在图像输出检测时刻,如果编码的第i个序列已编码中贞的个数SeqCodedNum[i]大于等于输出延时的帧数SeqDelayNum[i],则从编码的第i个序列的图像存储空间中输出显示顺序最小的一帧图像;否则,不输出任何图像。 所述码流写入单元用于将编码的第i个序列输出延时的帧数SeqDelayNum[i]写入发送给视频解码端的码流。
6.根据权利要求5所述视频编码装置,其特征在于,所述将编码的第i个序列输出延时的帧数SeqDelayNumti]写入发送给视频解码端的码流,写入的方法包括:在序列头的码流中写入或在序列头扩展的码流中写入或在序列头之后第一个帧的图像头的码流中写入。
7.一种视频解码装置,其特征在于,包括解码处理单元和设置于码流读取单元中的序列输出延时的帧数获取单元,所述序列输出延时的帧数获取单元用于从接收自视频编码端的码流中获取解码的第i (i>=0)个序列的输出延时的帧数SeqDelayNum[i](SeqDelayNum[i]>=1); 所述解码处理单元为解码的第i个序列分配一个大小不小于SeqDelayNumti]中贞的图像存储空间;根据解码的第i个序列已解码帧的个数SeqDecodeNum[i](SeqDecodeNum[i]>=0)和输出延时的帧数SeqDelayNum[i]管理解码的第i个序列图像存储空间图像的输出。具体管理方法为:在图像输出检测时刻,如果解码的第i个序列序列已解码帧的个数SeqDecodeNum[i]大于等于输出延时的帧数SeqDelayNum[i],则从解码的第i个序列的图像存储空间中输出显示顺序最小的一帧图像;否则,不输出任何图像。
8.根据权利要求7所述视频解码装置,其特征在于,从接收自视频编码端的码流中获取解码的第i个序列的输出延时的帧数SeqDelayNum[i],获取的方法包括:在序列头的码流中获取或在序列头扩展的码流中获取或在序列头之后第一个帧的图像头的码流中获取。
9.一种视频码流,其特征在于,该码流中传输了第i个序列输出延时的帧数SeqDelayNum[i],其中SeqDelayNum[i]在序列头的码流中写入或在序列头扩展的码流中写入或在序列头之后第一个帧的图像头的码流中写入。
10.根据权利要求9所述视频码流,其特征在于,还包括:从该码流中可以获取解码的第i (i>=0)个序列的输出延时的帧数SeqDelayNum[i],其中SeqDelayNum[i]获取的方法包括:在序列头 的码流 中获取或在序列头扩展的码流中获取或在序列头之后第一个帧的图像头的码流中获取。
【文档编号】H04N19/44GK103945221SQ201410141736
【公开日】2014年7月23日 申请日期:2014年4月9日 优先权日:2014年4月9日
【发明者】何至初, 虞露 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1