一种基于rtsp协议检测视频卡顿现象的方法与流程

文档序号:26904526发布日期:2021-10-09 13:45阅读:590来源:国知局
一种基于rtsp协议检测视频卡顿现象的方法与流程

1.本发明涉及图像识别领域,尤其涉及一种检测视频卡顿现象的方法。


背景技术:

2.在安防领域行业,大规模的应用场景下,对每个监控点是否能正常运行的要求非常严格,画面流畅度是最重要的一个参数指标。目前存在的问题是,由人员手工检测的方式,既慢又增加成本。
3.中国专利cn201711189349.4视频质量检测方法、监测设备及存储介质,揭露了一种视频质量检测方法,所述视频质量检测方法包括以下步骤:监测设备通过网卡抓取待检测视频的多个数据包;对各数据包进行解析,获取各数据包的报文序列号和延时时间;根据所述报文序列号获取所述待检测视频的丢包情况,根据所述延时时间获取所述待检测视频的抖动延时情况,根据所述丢包情况和所述抖动延时情况确定所述待检测视频的视频质量。
4.但随着高质量视频的要求越来越高,该检测方法无法对高质量的视频进行检测,故,有必要提出一种新的检测视频卡顿现象的方法来对视频进行更高要求的检测。


技术实现要素:

5.针对上述提出的问题,本发明的目的在于提供一种检测视频卡顿现象的方法,以提高视频检测质量。
6.为实现上述目的,本发明采用如下技术方案:一种检测视频卡顿现象的方法,其包括如下步骤:获取视频的实时流;对实时流的rtp包进行解析,获取rtp包的sequence number序列号,统计该段时间内的rtp总数量;按照序列号原有的连续性,根据中断的个数,统计在该段时间内rtp丢失数量;根据统计的丢失率与阈值进行对比,确定当前视频画面是否卡顿。
7.其中,视频的实时码流,通过rtsp协议将实时码流获取,其中,rtsp客户端和视频端之间的交互过程包括:
8.rtsp客户端,询问视频端有哪些方法可用,视频端给出回应消息;
9.rtsp客户端,询问得到视频端的媒体初始化描述信息,视频端给出媒体初始化描述信息的回应消息;
10.rtsp客户端,设置会话的属性,协商传输模式,提醒视频端建立会话;视频端建立会话,返回会话标识符,以及会话相关信息;
11.rtsp客户端,视频端回应请求信息;视频端发送流媒体数据rtp包;
12.rtsp客户端,发出停止客户端和视频端会话命名,停止播放。
13.与现有技术相比,本发明一种检测视频卡顿现象的方法的有益效果在于,基于rtsp协议中的sequence number序列号字段,以便于统计丢包率;通过丢失率与阈值的比较,确认视频画面是否出现卡顿现象。
附图说明
14.图1为本发明检测视频卡顿现象的流程示意图;
15.图2为本发明获取视频实时流的流程示意图。
具体实施方式
16.下面通过本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
17.参考图1,为本发明检测视频卡顿现象的流程示意图。
18.本发明提供一种检测视频卡顿现象的方法,其步骤包括如下:
19.s1:获取视频的实时流;
20.s2:对实时流的rtp包进行解析,获取rtp包的sequence number序列号,统计该段时间内的rtp总数量;
21.其中,rtsp协议涉及到媒体数据传输使用的是rtp协议,在这里,我们对rtp进行分析:rtp数据包由两部分组成,一部分是rtp heaeder,一部分是rtp body,rtp header占用最少12个字节,最多72个字节;另一部分是rtp payload,用来封装实际的数据负载,如封装h264编码的视频数据,这个视频在编码完成后,将会以一个个的nal(网络适配层)存储着,那么rtp中的单包就是将h.264中的单个nal单元作为一个独立的rtp包进行封装、发送。
22.s3:按照序列号原有的连续性,根据中断的个数,统计在该段时间内rtp丢失数量;
23.sequence number在传输过程中,初始序列号是随机的,可能是0和4,294,967,295之间的任意值,下一个rtp包会在这个rtp包加1。我们可以据此检测包损。通过在一段周期(比如5秒钟),计算总共收到的rtp包数量,和丢失的数量,来判断丢包率。
24.s4:根据统计的丢失率与阈值进行对比,确定当前视频画面是否卡顿,符合质量要求。
25.当丢失率大于阈值,一般为5%,即可判断当前视频画面为卡顿状态。
26.其中,视频来源于前端设备,前端设备包括网络摄像机、网络硬盘录像机、软件平台;以上设备,均需支持rtsp服务端协议;
27.参考图2,为本发明获取视频实时流的流程示意图。
28.将前端设备中视频的实时码流,通过rtsp协议将实时码流获取到本地时,rtsp客户端和视频端(前端)之间的交互过程,主要包括:
29.rtsp客户端,发送option命令,询问视频端有哪些方法可用,视频端给出回应消息;
30.rtsp客户端,发送describe命令,询问得到视频端的媒体初始化描述信息,视频端给出媒体初始化描述信息(sdp)的回应消息;
31.rtsp客户端,发送setup命令,设置会话的属性,协商传输模式,提醒视频端建立会话;视频端建立会话,返回会话标识符,以及会话相关信息;
32.rtsp客户端,发送play命令;视频端回应请求信息;
33.视频端发送流媒体数据rtp包;
34.rtsp客户端,发送teardown命令;停止客户端和视频端会话,停止播放。
35.本发明基于rtsp协议取流,由于市面上所有视频监控厂商品牌,均支持rtsp协议,从而可以规避厂商sdk开发包接入方式,省略大量的对接开发工作;
36.本发明基于rtsp协议中的sequence number序列号字段,以便于统计丢包率;通过丢失率与阈值的比较,确认视频画面是否出现卡顿现象。
37.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,均系本发明所保护范围。


技术特征:
1.一种检测视频卡顿现象的方法,其特征在于,其包括如下步骤:s1:获取视频的实时流;s2:对实时流的rtp包进行解析,获取rtp包的sequence number序列号,统计该段时间内的rtp总数量;s3:按照序列号原有的连续性,根据中断的个数,统计在该段时间内rtp丢失数量;s4:根据统计的丢失率与阈值进行对比,确定当前视频画面是否卡顿。2.如权利要求1所述的检测视频卡顿现象的方法,其特征在于,视频的实时码流,通过rtsp协议将实时码流获取,其中,rtsp客户端和视频端之间的交互过程包括:rtsp客户端,询问视频端有哪些方法可用,视频端给出回应消息;rtsp客户端,询问得到视频端的媒体初始化描述信息,视频端给出媒体初始化描述信息的回应消息;rtsp客户端,设置会话的属性,协商传输模式,提醒视频端建立会话;视频端建立会话,返回会话标识符,以及会话相关信息;rtsp客户端,视频端回应请求信息;视频端发送流媒体数据rtp包;rtsp客户端,发出停止客户端和视频端会话命名,停止播放。

技术总结
本发明公开了一种检测视频卡顿现象的方法,其包括如下步骤:获取视频的实时流;对实时流的RTP包进行解析,获取RTP包的Sequence Number序列号,统计该段时间内的RTP总数量;按照序列号原有的连续性,根据中断的个数,统计在该段时间内RTP丢失数量;根据统计的丢失率与阈值进行对比,确定当前视频画面是否卡顿。有益效果在于,基于RTSP协议中的Sequence Number序列号字段,以便于统计丢包率;通过丢失率与阈值的比较,确认视频画面是否出现卡顿现象。现象。现象。


技术研发人员:冯军
受保护的技术使用者:江苏网进科技股份有限公司
技术研发日:2021.05.29
技术公布日:2021/10/8
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1