【技术实现步骤摘要】
H.264视频编码方法、装置、芯片、存储设备及电子设备
[0001]本专利技术涉及图像编码领域,尤其涉及H.264视频编码方法、装置、芯片、存储设备及电子设备。
技术介绍
[0002]随着无线网络的迅速发展,移动通信对人们生活的影响也越来越大,无线传输的高速发展使得人们在业务上对其有了更高的要求。在某些特殊场合中的一些特殊业务有高稳定性、低时延、不间断传输的要求,如移动视频会议、视频监控等。相比于传统的有线网络来说,无线网络存在不稳定性和移动性高等特点,无线网络传输过程中容易出现干扰,信号衰减,切换等多种破坏传输的情况。这些都会导致传输效率低下,出现网络拥塞,丢包以及包损坏等问题。这样接收端的视频解码就会出现问题。
[0003]H.264视频压缩标准自2003年3月正式公布以来,被广泛应用于实时视频监控,低延时模式的视频会议、网络视频点播等电子消费领域。H.264之所以有着出色的压缩性能,得益于新引入的多种技术,如帧内预测,帧间预测,多参考帧,帧间可变尺寸块运动估计,去方块滤波和上下文自适应的熵编码技术。其中作为帧间预测的P帧对无线网络传输的可靠性影响较大,特别是在IDR(立即刷新帧)间隔较大时,一旦有一个P帧在无线传输中丢失,那么在一个GOP(图像画面组,具体指两个IDR帧的间隔)内丢失P帧之后的所有P帧的解码都会受到影响。
[0004]目前大多数H.264编码方案在帧间预测时仅使用一个前向参考帧。其中一种编码技术是每一帧P帧都以前面的一帧作为参考帧,具体而言,在对图像组GOP(H.264定义的图像 ...
【技术保护点】
【技术特征摘要】
1.一种H.264视频编码方法,其特征在于,包括如下步骤:S110,判断当前帧的类型,若所述当前帧的类型是I帧则执行步骤S140-S150,若所述当前帧的类型是P帧则执行步骤S120-S150;S120,判断所述当前帧的位置,若所述当前帧的位置在设定帧位置之前,则将所述当前帧的第一标识设置为参考帧,并执行步骤S140-S150;若所述当前帧的位置为设定帧位置,则将所述当前帧的第一标识设置为非参考帧,并执行步骤S140-S150;若所述当前帧的位置在设定帧位置之后,执行步骤S130-S150;其中,所述第一标识用于表示所述当前帧是否为参考帧;S130,判断所述当前帧距最近的非参考帧的帧间距是否为设定帧间隔,若是则将所述当前帧的第一标识设置为非参考帧,若否则将所述当前帧的第一标识设置为参考帧;S140,对所述当前帧根据其第一标识进行编码,并输出压缩码流;S150,实时检测所述压缩码流的码率,判断所述码率是否大于第一码率阈值,若否则重新执行步骤S110-S150,若是则增加所述帧间隔以减少非参考帧的数量,并重新执行步骤S110-S150直至完成编码。2.根据权利要求1所述的H.264视频编码方法,其特征在于,在步骤S150中,所述帧间隔每次减小数值1。3.根据权利要求1-2所述的H.264视频编码方法,其特征在于,在步骤S110之前,所述视频编码方法还包括如下步骤:S100,在缓存器中为编码提供存储编码过程产生的参考帧数据的两块编码缓存地址;所述步骤S110还包括以下步骤:若所述当前帧的类型是I帧,将所述当前帧的第一标识设置为参考帧,并写入所述当前帧的帧头部,将所述当前帧的写缓存地址初始化为所述两块编码缓存地址中的任一编码缓存地址,以用于存储对所述当前帧进行编码得到的参考帧数据;所述步骤S130后还包括以下步骤:S131,将所述当前帧的所述第一标识写入所述当前帧的帧头部;S132,判断所述当前帧的前一帧是否为参考帧,若是,则执行步骤S133,若否执行步骤S134;S133,将所述当前帧的读缓存地址赋值为所述当前帧前一帧的写缓存地址,以在编码时读取所述当前帧前一帧编码得到的参考帧数据,将写缓存地址赋值为所述两块编码缓存地址中除所述当前帧前一帧的写缓存地址外的另一者,以在当前帧是参考帧时存储所述当前帧编码得到的参考帧数据;S134,将所述当前帧的读缓存地址保持与所述当前帧前一帧的读缓存地址一致,以在编码时读取所述当前帧前一帧的参考帧编码得到的参考帧数据,将写缓存地址保持与所述当前帧前一帧的写缓存地址一致,以在当前帧是参考帧时存储所述当前帧编码得到的参考帧数据。4.根据权利要求1-3所述的H.264视频编码方法,其特征在于,在步骤S110和S130中,将所述当前帧的所述第一标识写入所述当前帧的帧头部中的填充网络抽象层单元内。5.一种H.264视频编码方法,其特征在于,包括如下步骤:
S210,判断当前帧的类型,若所述当前帧的类型是I帧则执行步骤S240-S250,若所述当前帧的类型是P帧则执行步骤S220-S250;S220,判断所述当前帧的位置,若所述当前帧的位置在设定帧位置之前,则将所述当前帧的第一标识设置为参考帧,并执行步骤S240-S250;若所述当前帧的位置为设定帧位置,则将所述当前帧的第一标识设置为非参考帧,并执行步骤S240-S250;若所述当前帧的位置在设定帧位置之后,执行步骤S230-S250;其中,所述第一标识用于表示所述当前帧是否为参考帧;S230,判断所述当前帧距最近的非参考帧的帧间距是否为设定帧间隔,若是则将所述当前帧的第一标识设置为非参考帧,若否则将所述当前帧的第一标识设置为参考帧;S240,对所述当前帧根据其第一标识进行编码,并输出压缩码流;S250,实时检测所述压缩码流的码率,判断所述码率的大小,若:第二码率阈值≤所述码率≤第三码率阈值,则不调整帧间隔大小,并重新执行步骤S210-S250,直至完成编码;若:所述码率>第三码率阈值,则增加所述帧间隔以减少非参考帧的数量,并重新执行步骤S210-S250,直至完成编码;若:所述码率<第二码率阈值,则减小所述帧间隔以增加非参考帧的数量,并重新执行步骤S210-S250,直至完成编码。6.根据权利要求5所述的H.264视频编码方法,其特征在于,在步骤S250中,所述帧间隔每次减小数值1和/或所述帧间隔每次增加数值1。7.根据权利要求5所述的H.264视频编码方法,其特征在于,在步骤S210之前,所述视频编码方法还包括如下步骤:S200,在缓存器中为编码提供存储编码过程产生的参考帧数据的两块编码缓存地址;所述步骤S210还包括以下步骤:若所述当前帧的类型是I帧,将所述当前帧的第一标识设置为参考帧并写入所述当前帧的帧头部,将所述当前帧的写缓存地址初始化为所述两块编码缓存地址中的任一编码缓存地址,以用于存储对所述当前帧进行编码得到的参考帧数据;所述步骤S230后还包括以下步骤:S231,将所述当前帧的所述第一标识写入所述当前帧的帧头部;S232,判断所述当前帧的前一帧是否为参考帧,若是,则执行步骤S233,若否执行步骤S234;S233,将所述当前帧的读缓存地址赋值为所述当前帧前一帧的写缓存地址,以在编码时读取所述当前帧前一帧编码得到的参考帧数据,将写缓存地址赋值为所述两块编码缓存地址中除所述当前帧前一帧的写缓存地址外的另一者,以在当前帧是参考帧时存储所述当前帧编码得到的参考帧数据;S234,将所述当前帧的读缓存地址保持与所述当前帧前一帧的读缓存地址一致,以在编码时读取所述当前帧前一帧的参考帧编码得到的参考帧数据,将写缓存地址保持与所述当前帧前一帧的写缓存地址一致,以在当前帧是参考帧时存储所述当前帧编码得到的参考帧数据。8.根据权利要求7所述的H.264视频编码方法,其特征在于,
在步骤S210和S230中,将所述当前帧的所述第一标识写入所述当前帧的帧头部中的填充网络抽象层单元内。9.一种H.264视频编码装置,其特征在于,包括:第一一处理单元,用于判断当前帧的类型,若所述当前帧的类型是I帧则触发第一四处理单元和第一五处理单元工作,若所述当前帧的类型是P帧则触发第一二处理单元至第一五处理单元工作;第一二处理单元,用于判断所...
【专利技术属性】
技术研发人员:王桂宾,徐会,陈泽伟,
申请(专利权)人:珠海市杰理科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。