本申请涉及视频编解码,特别是涉及一种解码帧内存管理方法及相关装置。
背景技术:
1、视频、图像码流解码过程中,解码后的重建帧需要存储,也可能需要作为参考帧用于后续帧的解码,也可能输出给用户用于缩放、渲染显示等,因此解码后的帧无论用于输出显示还是作为参考帧均需要进行存储,这就要求开辟空间进行存储。随着高清和超高清视频的应用,所需空间越来越大。相关的解码帧内存管理方法通过分配固定大小的参考帧缓存区,固定个数时,若开辟个数过多,对于很多视频流而言是十分浪费的,因大多数流都是单参考的,且该相关技术不够灵活。
技术实现思路
1、本申请提供一种解码帧内存管理方法及相关装置,能够基于待解码的图像序列的实际情况进行评估,以动态调整开辟的总内存数目,如此可以避免初始开辟过大的帧缓存导致内存资源浪费情况的出现。
2、为达到上述目的,本申请提供一种解码帧内存管理方法,该方法包括:
3、解析待解码的图像序列的码流中与参考帧内存占用数量相关的句法,以确定缓存空间数量;
4、开设帧缓存,以使所述帧缓存的帧数量大于或等于所述缓存空间数量;
5、基于所述帧缓存进行所述图像序列的解码。
6、为达到上述目的,本申请还提供一种电子设备,该电子设备包括相互连接的处理器和存储器,所述存储器用于存储程序,所述处理器用于执行所述程序以实现上述的方法的步骤。
7、为达到上述目的,本申请还提供一种计算机可读存储介质,其用于存储程序,程序能够被执行以实现上述方法。
8、本申请解析待解码的图像序列的码流中与参考帧内存占用数量的相关句法,以确认缓存空间数量,如此可以根据码流中解析出来的参数信息对解码所需缓冲区数目进行预估,相对比较准确,且可以基于待解码的图像序列的实际情况进行评估,以动态调整开辟的总内存数目,如此可以避免初始开辟过大的帧缓存导致内存资源浪费情况的出现。
1.一种解码帧内存管理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的解码帧内存管理方法,其特征在于,所述解析待解码的图像序列的码流中与参考帧内存占用数量相关的句法,包括:
3.根据权利要求2中任一项所述的解码帧内存管理方法,其特征在于,所述解析待解码的图像序列的码流中与参考帧内存占用数量相关的句法,以确定缓存空间数量,包括:
4.根据权利要求3所述的解码帧内存管理方法,其特征在于,所述基于待解码的图像序列的码流中的视频参数集、序列参数集或图像参数集中的最大延时帧数目、最大参考帧总数和/或最大参考帧缓冲区数目,确定缓存空间数量初始值,包括:
5.根据权利要求1所述的解码帧内存管理方法,其特征在于,所述解析待解码的图像序列的码流中与参考帧内存占用数量相关的句法,以确定缓存空间数量,包括:
6.根据权利要求3或5所述的解码帧内存管理方法,其特征在于,所述解析所述图像序列的码流中的每帧参考帧数目信息确定所述缓存空间数量,包括:
7.根据权利要求1所述的解码帧内存管理方法,其特征在于,所述解析待解码的图像序列的参考帧内存占用数量,之前包括:开辟帧缓存;
8.根据权利要求1所述的解码帧内存管理方法,其特征在于,所述基于所述帧缓存进行所述图像序列的解码,包括:
9.根据权利要求8所述的解码帧内存管理方法,其特征在于,所述基于所述帧缓存进行所述图像序列的解码,包括:
10.根据权利要求9所述的解码帧内存管理方法,其特征在于,所述帧缓存还用于作为所述解码输出帧的处理或显示内存。
11.根据权利要求10所述的解码帧内存管理方法,其特征在于,所述若从所述帧缓存获取不到空闲帧空间,新开设一帧缓存,将新开设的缓存作为所述当前帧的解码输出帧的存储空间,包括:
12.根据权利要求1所述的解码帧内存管理方法,其特征在于,所述帧缓存还用于作为图像帧的处理和/或显示内存;
13.根据权利要求12所述的解码帧内存管理方法,其特征在于,所述缓存空间数量m的计算公式如下所示:
14.根据权利要求13所述的解码帧内存管理方法,其特征在于,所述基于所述参考帧占用量以及用户占用量,计算出所述缓存空间数量,包括:
15.一种电子设备,其特征在于,所述电子设备包括相互连接的处理器和存储器,所述存储器用于存储程序,所述处理器用于执行所述程序以实现权利要求1-14任一项所述的方法的步骤。
16.一种计算机可读存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时实现权利要求1-14中任一项所述方法的步骤。