RTSP/ONVIF互联网直播服务器录像回看接口调用时查询到超出指定时间段录像文件

优秀便捷的流媒体服务器都支持二次开发调用API对接,同时支持选取指定时间段录像播放及下载(MP4合成播放下载)进行调用,在日常使用中录像接口调用用的是比较频繁的,所以本文就讲一下这个录像接口调用遇到的问题。

调用接口方式

/api/v1/record/video/:operate/:id/:starttime/:endtime

举个例子

我想要调取10:11:39-11:11:39这一个小时的录像,接口实例如下:
http://localhost:10800/api/v1/record/video/play/1/20200411101139/20200411111139

但我今天接到了一个用户的反馈,这位用户在接入网络摄像头进行直播时,对通道设置开启了录像功能,在调用按指定时间段查询,时会出现超出指定时长的录像。比如只查询了1个小的录像,却返回了5个多小时的录像,中间还会出现画面停止,但时间却在继续的情况。

针对此问题的排查,正常需要对公网服务器进行分析,因用户测试阶段软件部署在内网中,只能通过对录像的TS文件进行分析。沟通后,用户将record文件夹下的录像文件打包提供给我们。

在音视频中一般时间戳从设备中系统时间得来,通常是以毫秒作为单位的linux时间。因为网络传输或者时间有时候突变的原因,造成了时间戳混乱,有必要对时间戳做一下处理,第一步是对时间戳的平滑处理和突变的判断,第二步对音视频时间戳不同步进行了处理。

原文地址:https://www.cnblogs.com/EasyNVR/p/12745961.html