一种视频压缩的丢帧处理方法、装置、服务器及存储介质制造方法及图纸

技术编号:36269156 阅读:56 留言:0更新日期:2023-01-07 10:10
本发明专利技术提出了一种视频压缩的丢帧处理方法、装置、服务器及存储介质,其中,方法包括:在BMC中预设缓存写入逻辑;响应于BMC控制将视频数据帧写入第一缓存空间,而触发缓存写入逻辑,并判断第一缓存空间的剩余空间是否足够写入视频数据帧;响应于第一缓存空间的剩余空间不足,获取视频压缩模块对第一缓存空间的读取进度;基于读取进度控制将新的视频数据帧覆盖写入第一缓存空间的前半部分空间或覆盖写入第一缓存空间的后半部分空间。本发明专利技术创新性的提出对基板管理控制芯片中的VGA写过程进行优化,保证了输入给后级压缩模块的是最新的完整的数据帧,避免了传统方案中可能出现的视频/连续图像的下半部分是黑/白的情况。连续图像的下半部分是黑/白的情况。连续图像的下半部分是黑/白的情况。

【技术实现步骤摘要】
一种视频压缩的丢帧处理方法、装置、服务器及存储介质


[0001]本专利技术涉及视频压缩
,尤其涉及一种视频压缩的丢帧处理方法、装置、服务器及存储介质。

技术介绍

[0002]主机端的操作系统的原始视频图像信息,在通过网络传给远端之前,需要先由基板管理控制系统进行视频压缩,以降低视频数据量,进而降低对网络带宽的占用。其中,基板管理控制系统是指主要以BMC (Baseboard Management Controller. 为基板管理控制器)为核心的控制系统。
[0003]传统的用于视频压缩的基板管理控制系统如图1所示,视频压缩过程的基本过程包括在BMC的控制下,首先由VGA将主机HOST的原始视频数据帧写入到DDR的指定空间,而后由视频压缩模块从上述指定空间中读取缓存的原始视频数据帧并进行压缩,而后存入DDR的另一处指定空间,最后再由网络传输模块读取上述另一处指定空间中的视频压缩数据帧并发送给远端。在上述过程中,当视频压缩数据不能及时的写入到DDR的另一处指定空间时(比如DDR总线接口被CPU上运行的上层应用程序长时间占用),则视频压缩模块将暂停从DDR中读取原始视频数据帧并停止压缩处理,从而会导致对原始视频数据帧读取和写入的速度不能匹配,即出现读慢写块的现象。而VGA端不管之前缓存的视频数据帧是否被基板管理控制芯片中的视频压缩模块读走,当需要写新的视频数据帧且DDR中的指定空间不足的时会跳回到该指定地址空间的首地址进行写操作,并采取覆盖模式。为了解决因出现无法读取一帧完整的视频数据帧而导致后续解析出错问题,传统技术会在视频压缩模块(VIDEO COMPRESS)之前设置打标读取模块(AXI_RD)及打标补全模块(FLAG_DETECT),当出现未能读取到完整的一帧数据时,首先会由打标读取模块进行打标,而后送入打标补全模块进行补位(补入0或F),上述过程将持续到数据流恢复正常。当出现连续多帧补0的情况时,会导致远端接收到的图像出现黑色条纹,而当出现连续多帧补F的情况时,会导致远端接收到的图像出现白色条纹,从而影响显示效果。

技术实现思路

[0004]为了避免补位0或F而出现的黑白条纹,在本专利技术的一个方面提出了一种视频压缩的丢帧处理方法,所述方法包括:在BMC中预设缓存写入逻辑;响应于所述BMC控制将视频数据帧写入第一缓存空间,而触发所述缓存写入逻辑,并判断所述第一缓存空间的剩余空间是否足够写入所述视频数据帧;响应于所述第一缓存空间的剩余空间不足,获取视频压缩模块对所述第一缓存空间的读取进度;基于所述读取进度控制将新的视频数据帧覆盖写入所述第一缓存空间的前半部分空间或覆盖写入所述第一缓存空间的后半部分空间。
[0005]在一个或多个实施例中,所述基于所述读取进度控制将新的视频数据帧覆盖写入所述第一缓存空间的前半部分空间中或覆盖写入所述第一缓存空间的后半部分空间,包括:响应于所述读取进度过半,而控制将所述新的视频数据帧覆盖写入所述第一缓存空间
的前半部分空间,并覆盖一帧完整的视频数据帧。
[0006]在一个或多个实施例中,所述方法还包括:当所述新的视频数据帧需要在所述第一缓存空间的前半部分空间覆盖一帧完整的视频数据帧时,控制所述新的视频数据帧覆盖所述前半部分空间中最先写入的一帧完整的视频数据帧。
[0007]在一个或多个实施例中,所述基于所述读取进度控制将新的视频数据帧覆盖写入所述第一缓存空间的前半部分空间中或覆盖写入所述第一缓存空间的后半部分空间,包括:响应于所述读取进度未过半,而控制将所述新的视频数据帧覆盖写入所述第一缓存空间的后半部分空间,并覆盖一帧完整的视频数据帧。
[0008]在一个或多个实施例中,所述一种视频压缩的丢帧处理方法还包括:当所述新的视频数据帧需要在所述第一缓存空间的后半部分空间覆盖一帧完整的视频数据帧时,控制所述新的视频数据帧覆盖所述后半部分空间中最后写入的一帧完整的视频数据帧。
[0009]在一个或多个实施例中,所述第一缓存空间为在本地的缓存模块中开辟出的专用空间,所述本地的缓存模块与所述BMC连接,所述第一缓存空间采用乒乓缓存的方式存储连续写入的数据。
[0010]在一个或多个实施例中,所述第一缓存空间的大小至少为以所述BMC所支持的最大分辨率传输视频数据时所对应的两帧视频数据帧所需的空间大小。
[0011]在一个或多个实施例中,所述一种视频压缩的丢帧处理方法还包括:由所述第一缓存空间读取视频数据帧并直接送入所述视频压缩模块而不必经过丢帧打标模块。
[0012]在一个或多个实施例中,所述一种视频压缩的丢帧处理方法还包括:由所述视频压缩模块对所述视频数据帧进行压缩并存入所述缓存模块的第二缓存空间。
[0013]在一个或多个实施例中,所述第一缓存空间和所述第二缓存空间基于视频压缩请求而开辟;并在视频压缩任务完成后解除所述第一缓存空间和所述第二缓存空间的专用性。
[0014]在一个或多个实施例中,所述一种视频压缩的丢帧处理方法还包括:在所述BMC的控制下由网络传输模块从所述第二缓存空间中读取压缩后的视频数据帧,并发送给目的端。
[0015]在一个或多个实施例中,所述一种视频压缩的丢帧处理方法还包括:所述目的端接收所述压缩后的视频数据帧,对所述视频数据进行解压并还原为视频数据帧。
[0016]在本专利技术的第二方面,提出了一种视频压缩处理装置,包括:VGA接口,配置用于获取视频数据帧,并在BMC控制下将视频数据帧写入第一缓存空间;缓存模块,配置所述缓存模块划分出第一缓存空间用于缓存视频数据帧;BMC模块,预设有缓存写入逻辑,配置用于响应于所述BMC控制将视频数据帧写入第一缓存空间,而触发所述缓存写入逻辑,并判断所述第一缓存空间的剩余空间是否足够写入所述视频数据帧;响应于所述第一缓存空间的剩余空间不足,获取视频压缩模块对所述第一缓存空间的读取进度;基于所述读取进度控制将新的视频数据帧覆盖写入所述第一缓存空间的前半部分空间或覆盖写入所述第一缓存空间的后半部分空间;缓存读取模块,配置用于由所述第一缓存空间读取视频数据帧后直接送入视频压缩模块;视频压缩模块,配置用于对获得的视频数据帧进行压缩,并存入所述缓存模块的第二缓存空间;网络传输模块,配置用于由所述第二缓存空间中读取压缩后的视频数据帧,并发送给目的端。
[0017]在本专利技术的第三方面,提出了一种服务器,包括:一个或多个控制器;以及存储器,所述存储器中存储有可执行的计算机程序,所述计算机程序被所述一个或多个控制器执行时用于实现如下所述的一种视频压缩的丢帧处理方法的步骤,包括;在BMC中预设缓存写入逻辑;响应于所述BMC控制将视频数据帧写入第一缓存空间,而触发所述缓存写入逻辑,并判断所述第一缓存空间的剩余空间是否足够写入所述视频数据帧;响应于所述第一缓存空间的剩余空间不足,获取视频压缩模块对所述第一缓存空间的读取进度;基于所述读取进度控制将新的视频数据帧覆盖写入所述第一缓存空间的前半部分空间或覆盖写入所述第一缓存空间的后半部分空间。
[0018]在一个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种视频压缩的丢帧处理方法,其特征在于,所述方法包括:在BMC中预设缓存写入逻辑;响应于所述BMC控制将视频数据帧写入第一缓存空间,而触发所述缓存写入逻辑,并判断所述第一缓存空间的剩余空间是否足够写入所述视频数据帧;响应于所述第一缓存空间的剩余空间不足,获取视频压缩模块对所述第一缓存空间的读取进度;基于所述读取进度控制将新的视频数据帧覆盖写入所述第一缓存空间的前半部分空间或覆盖写入所述第一缓存空间的后半部分空间。2.根据权利要求1所述的一种视频压缩的丢帧处理方法,其特征在于,所述基于所述读取进度控制将新的视频数据帧覆盖写入所述第一缓存空间的前半部分空间中或覆盖写入所述第一缓存空间的后半部分空间,包括:响应于所述读取进度过半,而控制将所述新的视频数据帧覆盖写入所述第一缓存空间的前半部分空间,并覆盖一帧完整的视频数据帧。3.根据权利要求2所述的一种视频压缩的丢帧处理方法,其特征在于,所述方法还包括:当所述新的视频数据帧需要在所述第一缓存空间的前半部分空间覆盖一帧完整的视频数据帧时,控制所述新的视频数据帧覆盖所述前半部分空间中最先写入的一帧完整的视频数据帧。4.根据权利要求1所述的一种视频压缩的丢帧处理方法,其特征在于,所述基于所述读取进度控制将新的视频数据帧覆盖写入所述第一缓存空间的前半部分空间中或覆盖写入所述第一缓存空间的后半部分空间,包括:响应于所述读取进度未过半,而控制将所述新的视频数据帧覆盖写入所述第一缓存空间的后半部分空间,并覆盖一帧完整的视频数据帧。5.根据权利要求4所述的一种视频压缩的丢帧处理方法,其特征在于,所述方法还包括:当所述新的视频数据帧需要在所述第一缓存空间的后半部分空间覆盖一帧完整的视频数据帧时,控制所述新的视频数据帧覆盖所述后半部分空间中最后写入的一帧完整的视频数据帧。6.根据权利要求1

5任意一项所述的一种视频压缩的丢帧处理方法,其特征在于,所述第一缓存空间为在本地的缓存模块中开辟出的专用空间,所述本地的缓存模块与所述BMC连接,所述第一缓存空间采用乒乓缓存的方式存储连续写入的数据。7.根据权利要求6所述的一种视频压缩的丢帧处理方法,其特征在于,所述第一缓存空间的大小至少为以所述BMC所支持的最大分辨率传输视频数据时所对应的两帧视频数据帧所需的空间大小。8.根据权利要求6所述的一种视频压缩的丢帧处理方法,其特征在于,所述方法还包括:由所述第一缓存空间读取...

【专利技术属性】
技术研发人员:张贞雷李拓邹晓峰满宏涛刘刚
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1