EasyGBS添加新内核后云端录像无法下载问题优化
云端录像是我们前几年开发的功能,在EasyGBS、EasyCVR中均有运用。在多数项目中,云端录像的可控性、回溯性都给管理者提供了很大的便捷性。云端录像的接口需要被调用后才能使用,同时也支持修改云端录像的存储位置。
EasyGBS在添加新内核过后,测试云端录像时将录像本地存在录像文件中,但是下载的时候出现录像文件未找到的情况。
排查代码发现,此时云端录像下载拼接的录像地址不对,地址是设备号_通道号,而正确的地址应该是设备号_通道号_序列码。所以我们修改代码如下,更改获取平台云端录像的文件夹地址,然后根据设备号_通道号_序列码的规则来查找本地文件夹内容。
devPath := filepath.Join(mediaserver.GetHlsPath(), streamID) //dss.RecordDir(), streamID)
dayPath := filepath.Join(devPath, period[0:8])
timePath := filepath.Join(dayPath, period)
recordPath := filepath.Join(timePath, fmt.Sprintf("%s_record.m3u8", streamID))
if !utils.Exist(recordPath) {
c.AbortWithStatusJSON(http.StatusBadRequest, "录像文件未找到")
return
}
dest := ff.M3U8ToMP4(recordPath)
再次操作,成功下载录像
本文就和大家分享到这里,如果大家对EasyGBS感兴趣的话,欢迎联系我们。EasyGBS平台能够给大家提供测试版本,让大家直观面对EasyGBS功能,欢迎试用。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结