TSINGSEE青犀视频智能分析平台内一个功能是获取直播快照,比如EasyNVR视频直播中可以获取到直播快照的截图,但在实际使用中,也有用户需要获取云端录像快照。
使用过EasyNVR获取直播快照功能的朋友都知道,直播获取快照操作是很便捷的,因为在技术层面上,直播获取流可以直接拉过来进行解码播放。而作为录像的hls视频流,我们就需要先对视频进行解码,再获取快照。如果这些步骤都放在服务端处理,在技术实现上无疑是在服务端内部添加了一个视频播放器的功能,那么我们如何才能有效、低消耗的实现这个功能?
针对常规的视频问题,我们基本都可以通过ffmpeg辅助解决。
EasyNVR的录像都是http服务发布的录像视频流,我们再通过ffmpeg来对云端录像的视频进行快照的获取。
ffmpeg的快照获取命令:
代码语言:javascript复制Ffmpeg -ss “time” -hide_banner -i “input” -y -f image2 -vframes 1 snap.jpg
针对以上命令,我们只需要根据自身的需求添加需要获取录像的时间点和需要截取云端录像的视频源就可以。下面我们举个例子来说明一下。
1、通过接口获取到需要截取录像的视频地址:
2、明确自身需要获取快照的时间点,以HH:mm:ss确定时间点,例如获取00:20:45这个时间点的快照
3、通过命令来验证快照的执行结果,执行命令如下:
ffmpeg.exe -ss 00:20:45 -hide_banner -i http://192.168.99.156:10800/record/stream_2/20201218/20201218060000/stream_2_record.m3u8 -y -f image2 -vframes 1 snap1.jpg
成功获取到快照:
除了EasyNVR外,TSINGSEE青犀视频其他智能分析平台EasyCVR、EasyGBS等也可以获取录像的快照。如果大家有疑问,欢迎联系我们。更多视频相关解决方案,欢迎访问TSINGSEE青犀视频官方网站。