EasyGBS出现云端录像删除过后录像文件还存在的情况优化方案

大家知道国标GB28181协议视频平台目前是很多项目团队的第一选择,因为国标协议可以级联上下级平台,并且能够直接通过协议进行内网到外网的穿透,在一些有外网视频播放需求的项目中很受欢迎。EasyGBS的云端录像一般来说是可以永久保存的,因此很多用户会选择将视频流进行云端录像。

在我们对EasyGBS进行日常测试的时候,出现云端录像删除过后录像文件还存在的情况。

经过分析,该问题出在后端上,在执行删除操作时,没有获取到正确的录像文件进行删除。因此我们需要删除获取录像存储路径,然后根据录像的id,拼凑出来录像文件的完整文件夹,然后进行删除。添加如下代码:

//if recording {
// c.AbortWithStatusJSON(http.StatusBadRequest, "通道正在录像")
// return
//}
if err := os.RemoveAll(filepath.Join(mediaserver.GetHlsPath(), streamID)); err != nil { //dss.RecordDir(), streamID)); err != nil {
   log.Println(err)
}
c.JSON(http.StatusOK, "OK")

再次执行删除,就能够正常删除。

 

posted on 2021-09-16 17:20  EasyGBS  阅读(97)  评论(0)    收藏  举报