本发明涉及视频处理,具体而言,涉及一种视频处理方法、装置、网络视频录像机和存储介质。
背景技术:
1、随着高清视频、图像处理和视频监控等技术的快速发展,视频处理系统需要处理的数据量变得越来越大。用户对视频处理系统的实时性和高效性的要求也在同步增加。在选购视频处理解决方案时,用户通常会对系统的处理性能提出明确的要求,以满足业务的需要。在许多业务场景下,视频处理的性能不仅仅是快慢的区别,甚至会影响到业务本身是否能够正常运行。因此,如何提高视频处理的效率成为了不容小觑的技术问题。
技术实现思路
1、有鉴于此,本发明的目的在于提供一种视频处理方法、装置、网络视频录像机和存储介质,能够提升视频帧处理效率和可靠性。
2、为了实现上述目的,本发明实施例采用的技术方案如下:
3、第一方面,本发明提供一种视频处理方法,应用于网络视频录像机,网络视频录像机上创建有第一缓存、第二缓存和第三缓存;所述第一缓存用来保存接收到的视频帧,所述第二缓存用于保存待处理的视频帧,所述第三缓存用来保存待显示的视频帧;所述方法包括:
4、根据网络状况和业务负载调整所述第一缓存、所述第二缓存和第三缓存的大小;
5、将满足视频处理条件的视频帧从所述第一缓存移至所述第二缓存;
6、从所述第二缓存中,获取待处理视频帧;
7、根据所述待处理视频帧确定待显示视频帧,将所述待显示视频帧保存到所述第三缓存中。
8、在可选的实施方式中,所述将满足视频处理条件的视频帧从所述第一缓存移至所述第二缓存,包括:
9、将解码时间戳大于等于显示时间戳的视频帧从所述第一缓存移至所述第二缓存;
10、将实际缓存时间超过缓存时间阈值的视频帧从所述第一缓存移至所述第二缓存;
11、当所述第一缓存为空时,将接收到的视频帧保存到所述第二缓存。
12、在可选的实施方式中,所述从所述第二缓存中,获取待处理视频帧,包括:
13、按照优先级从高到低的顺序从所述第二缓存中获取所述待处理视频帧;或者,从所述第二缓存中依次获取所述待处理视频帧。
14、在可选的实施方式中,所述根据所述待处理视频帧确定待显示视频帧,包括:
15、当预设的跳帧开关关闭时,对所述待处理视频帧解码,得到所述待显示视频帧;
16、当所述跳帧开关开启时,对满足预设跳帧间隔的待处理视频帧解码,得到所述待显示视频帧。
17、在可选的实施方式中,所述方法还包括:
18、当满足补帧条件时,根据所述第三缓存中相邻的两个视频帧生成过渡帧,并将所述过渡帧保存到所述第三缓存中;所述过渡帧用于平滑相邻的两个视频帧之间的运动轨迹。
19、在可选的实施方式中,所述网络状况包括带宽、延迟、抖动、丢包率和吞吐量;所述业务负载包括cpu利用率、内存使用率、带宽使用率、磁盘读写速度和缓存使用率;所述根据网络状况和业务负载调整所述第一缓存、所述第二缓存和第三缓存的大小,包括:
20、根据所述带宽、所述延迟、所述抖动、所述丢包率和所述吞吐量,确定网络状况评分;
21、根据所述cpu利用率、所述内存使用率、所述带宽使用率、所述磁盘读写速度和所述缓存使用率,确定业务负载评分;
22、根据所述网络状况评分和所述业务负载评分更新所述第一缓存、所述第二缓存和第三缓存的大小。
23、在可选的实施方式中,所述根据所述网络状况评分和所述业务负载评分更新所述第一缓存、所述第二缓存和第三缓存的大小,包括:
24、根据所述网络状况评分、网络状况权重、所述业务负载评分和业务负载权重确定综合评分,并根据综合评分更新所述第一缓存、所述第二缓存和第三缓存的大小;或者,根据所述网络状况评分和所述业务负载评分中的最差评分更新所述第一缓存、所述第二缓存和第三缓存的大小。
25、第二方面,本发明提供一种视频处理装置,应用于网络视频录像机,网络视频录像机上创建有第一缓存、第二缓存和第三缓存;所述第一缓存用来保存接收到的视频帧,所述第二缓存用于保存待处理的视频帧,所述第三缓存用来保存待显示的视频帧;所述装置包括:
26、调整模块,用于根据网络状况和业务负载调整所述第一缓存、所述第二缓存和第三缓存的大小;
27、处理模块,用于将满足视频处理条件的视频帧从所述第一缓存移至所述第二缓存;从所述第二缓存中,获取待处理视频帧;根据所述待处理视频帧确定待显示视频帧,将所述待显示视频帧保存到所述第三缓存中。
28、第三方面,本发明提供一种网络视频录像机,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现前述实施方式任一所述的视频处理方法。
29、第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式中任一项所述的视频处理方法。
30、相比于现有技术,本发明实施例提供的视频处理方法、装置、网络视频录像机和存储介质,根据网络状况和业务负载动态调整第一缓存、第二缓存和第三缓存的大小,同时利用三个缓存分级存储接收到的视频帧、待处理视频帧和待显示视频帧,有效避免资源争用和资源浪费,能够优化资源利用率,从而提升视频帧处理效率和可靠性,提升视频处理系统的整体稳定性。
31、为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
1.一种视频处理方法,其特征在于,应用于网络视频录像机,网络视频录像机上创建有第一缓存、第二缓存和第三缓存;所述第一缓存用来保存接收到的视频帧,所述第二缓存用于保存待处理的视频帧,所述第三缓存用来保存待显示的视频帧;所述方法包括:
2.根据权利要求1所述的视频处理方法,其特征在于,所述将满足视频处理条件的视频帧从所述第一缓存移至所述第二缓存,包括:
3.根据权利要求1所述的视频处理方法,其特征在于,所述从所述第二缓存中,获取待处理视频帧,包括:
4.根据权利要求1所述的视频处理方法,其特征在于,所述根据所述待处理视频帧确定待显示视频帧,包括:
5.根据权利要求1所述的视频处理方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的视频处理方法,其特征在于,所述网络状况包括带宽、延迟、抖动、丢包率和吞吐量;所述业务负载包括cpu利用率、内存使用率、带宽使用率、磁盘读写速度和缓存使用率;所述根据网络状况和业务负载调整所述第一缓存、所述第二缓存和第三缓存的大小,包括:
7.根据权利要求6所述的视频处理方法,其特征在于,所述根据所述网络状况评分和所述业务负载评分更新所述第一缓存、所述第二缓存和第三缓存的大小,包括:
8.一种视频处理装置,其特征在于,应用于网络视频录像机,网络视频录像机上创建有第一缓存、第二缓存和第三缓存;所述第一缓存用来保存接收到的视频帧,所述第二缓存用于保存待处理的视频帧,所述第三缓存用来保存待显示的视频帧;所述装置包括:
9.一种网络视频录像机,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现权利要求1-7任一所述的视频处理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的视频处理方法。
