前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TSINGSEE青犀视频优化EasyNVR快照保存机制实现过程

TSINGSEE青犀视频优化EasyNVR快照保存机制实现过程

作者头像
EasyNVR
发布2021-10-09 16:27:12
2960
发布2021-10-09 16:27:12
举报
文章被收录于专栏:EasyNVREasyNVR

TSINGSEE青犀视频的快照功能我们为大家介绍过很多次,在近几年中,我们也对快照进行了几次大大小小的优化和修改,比如EasyDSS,在最近的一次优化中,我们对定时快照数据的取出进行了简化,实现直播中直接截图生成快照。同样的,在EasyNVR中我们也优化了快照的保存机制。

目前EasyNVR的快照保存机制是在定时回调里把视频流里的I帧转换为图片保存,需要改为在定时回调里保存I帧,图片在前端访问的时候把保存的I帧转为图片,并在拉取到视频流时修改推流机制。

实现步骤:

1.StreamClient.Snap中设置标志为IsSnap=true开启快照

2.在拉取到视频流时判断是否开启快照并且是I帧:C.int(avFrame.u32VFrameType) == 1 && client.IsSnap

3.保存I帧

// 1. 非按需一直推流,保存I帧

// 2. 按需推流,保存I帧

// 2.1 按需推流在touch时间内推流,保存I帧

// 2.2 按需推流不在touch时间内不推流,保存I帧

snapPtrPath := filepath.Join(utils.DataDir(), "snapPtr", fmt.Sprintf("channel_%d.264", client.channelID))

err := ioutil.WriteFile(snapPtrPath, C.GoBytes(unsafe.Pointer(data), C.int(frameInfo.length)), 0644)

4.保存成功后关闭快照标志位,IsSnap=false

5.在前端访问通道数据时把保存的I帧文件转换为图片保存

除了EasyNVR外,TSINGSEE青犀视频其他智能分析平台EasyCVR、EasyGBS等也可以获取录像的快照。如果大家有疑问,欢迎联系我们。更多视频相关解决方案,欢迎访问TSINGSEE青犀视频官方网站。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-09-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 实现步骤:
相关产品与服务
云直播
云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档