sip (gb28181)信令交互-视频点播与回播
客户端发起的实时点播消息示范:(请求视频信令与断开视频信息 和 回播基本无差别)
1、请求视频流 INVITE sip:00000000001310018021@192.168.40.66:7100 SIP/2.0 Via: SIP/2.0/UDP 192.168.40.55:7100;rport;branch=z9hG4bK2480933505 From: <sip:120105110228023020@192.168.40.55:7100>;tag=2249831759 To: <sip:00000000001310018021@192.168.40.66:7100> Call-ID: 821763613 // Call-ID:使用该字段标识一路视频 CSeq: 20 INVITE Contact: <sip:120105110228023020@192.168.40.55:7100> Content-Type: Application/SDP Max-Forwards: 70 User-Agent: NCG V2.6.0.299938 Subject: 00000000001310018021:0,120105110228023020:0 Content-Length: 239 v=0 o=00000000001310018021 0 0 IN IP4 192.168.40.55 s=Play //Play标识为点播请求 Playback标识回播请求 c=IN IP4 192.168.40.55 //192.168.40.55:音视频流目的地址 t=0 0 //t行第一参数为视频开始时间 第二个参数为结束时间 t = 0 0表示实时视音频点播 m=video 5552 RTP/AVP 96 97 98 //video:表示请求音视频流 audio:表示请求音频流 5522:音视频流目的端口 RTP/AVP:视频流使用协议 96 97 98:客户端支持码流格式 a=rtpmap:96 PS/90000 a=rtpmap:97 MPEG4/90000 a=rtpmap:98 H264/90000 a=recvonly a=streamMode:MAIN y=0999999999 SIP/2.0 100 Trying Via: SIP/2.0/UDP 192.168.40.55:7100;rport=7100;branch=z9hG4bK2480933505 From: <sip:120105110228023020@192.168.40.55:7100>;tag=2249831759 To: <sip:00000000001310018021@192.168.40.66:7100> Call-ID: 821763613 CSeq: 20 INVITE User-Agent: NCG V2.6.0.299938 Content-Length: 0 SIP/2.0 200 OK Via: SIP/2.0/UDP 192.168.40.55:7100;rport=7100;branch=z9hG4bK2480933505 From: <sip:120105110228023020@192.168.40.55:7100>;tag=2249831759 To: <sip:00000000001310018021@192.168.40.66:7100>;tag=2885333649 Call-ID: 821763613 CSeq: 20 INVITE Contact: <sip:161128022553273720@192.168.40.66:7100> Content-Type: Application/SDP User-Agent: NCG V2.6.0.299938 Content-Length: 165 v=0 o=00000000001310018021 0 0 IN IP4 192.168.40.55 s=Play c=IN IP4 192.168.40.66 //192.168.40.66:音视频流源地址 注:视音频源与目的地址不局限于级联服务器本身 t=0 0 m=video 5268 RTP/AVP 96 // video:表示请求视频流 audio:表示请求音频流 5268:音视频流源端口 RTP/AVP:视频流使用协议 96:服务端所选择的码流格式 音视频所使用端口统一使用偶数端口 port+1为rtcp端口 a=rtpmap:96 PS/90000 a=sendonly y=0100005268 SDP字段说明: v字段:协议版本 o字段:- a字段:a=rtpmap:<payload type> <encoding name>/<clock rate> [/<encoding parameters>] 中的<encoding name>,利用该属性携带编码器厂商名称。该属性表明该流为某厂商编码器编码且是不符合gb28181规定的媒体流,符合国标的媒体流不需要该属性。 例如:a=rtpmap:96 DAHUA/90000 a=rtpmap:96 HIKVISION/90000 a字段有下列格式: a字段可携带倍数参数,用于文件下载时控制下载速度。格式: a=downloadspeed:下载倍数(整型) a字段可携带文件大小参数,用于文件下载时的进度计算。格式: a=filesize:文件大小 (单位:Byte) a字段可携带setup、connection作为TCP连接协商参数。 a=setup:TCP连接方式(表示本SDP发送者在建立RTP over TCP连接时是主动还是被动发起TCP连接,“active”为主动,“passive”为被动) a字段可携带SVC参数,用于视频传输时的分辨率或者帧频控制。a=svcspace:空域编码方式 【取值整型。 0:不使用 1:1级增强 2:2级增强 3:3级增强 】 a = svctime:时域编码方式 s字段:表示请求媒体流的操作类型,“Play”标识为点播请求 “Playback”标识回播请求 “Download”表示文件下载 “Talk”表示语音对讲; u字段:u行应填写视音频文件的URL。该URL的取值有两种:简捷方式和普通方式。简捷方式直接采用产生该历史媒体的媒体源(如某个摄像头)的设备ID以及相关参数,参数用“:”分隔;普通方式采样http://储存设备ID[/文件夹]*/文件名; m字段:描述媒体的媒体类型、端口、传输层协议、负载类型等内容。媒体类型采样“video”标识视频或者视音频混合内容,采样“audio”标识传输音频内容;传输方式采用“RTP/AVP”标识传输层协议为 RTP over UDP,采用“TCP/RTP/AVP”标识传输层协议为RTP over TCP; t字段:当回放或者下载时,t行值为开始时间,结束时间,采样“ ”分隔; y字段:十进制整数字符串,标识SSRC值。其中第一位为历史或者实时媒体流的标识位,0为实时,1为历史;第2位到第6位取20位SIP监控域ID之中的4-8位作为域标识;第7-10位作为域内媒体流标识,是一个与当前域内产生的媒体流SSRC值后4位不充分的四位十进制整数; f字段:f=v/编码格式/分辨率/帧率/码率类型/码率大小 a/编码格式/码率大小/采样率 其中v表示video a表示audio
2、断开视频流
BYE sip:161128022553273720@192.168.40.66:7100 SIP/2.0 Via: SIP/2.0/UDP 192.168.40.55:7100;rport;branch=z9hG4bK1981844232 From: <sip:120105110228023020@192.168.40.55:7100>;tag=2249831759 To: <sip:00000000001310018021@192.168.40.66:7100>;tag=2885333649 Call-ID: 821763613 // Call-ID:该字段判断请求端口哪一路视频 CSeq: 21 BYE Contact: <sip:120105110228023020@192.168.40.55:7100> Max-Forwards: 70 User-Agent: NCG V2.6.0.299938 Content-Length: 0 SIP/2.0 200 OK Via: SIP/2.0/UDP 192.168.40.55:7100;rport=7100;branch=z9hG4bK1981844232 From: <sip:120105110228023020@192.168.40.55:7100>;tag=2249831759 To: <sip:00000000001310018021@192.168.40.66:7100>;tag=2885333649 Call-ID: 821763613 CSeq: 21 BYE User-Agent: NCG V2.6.0.299938 Content-Length: 0
客户端发起的回播控制消息示范:(请求视频信令与断开视频信息 和 回播基本无差别 Play/Playback)
Gb28181标准中,明确说明历史视音频的回复控制命令应采用监控报警联网系统实时流协议(MANSRTSP),并采用SIP消息INFO消息体携带传输。(GBT 28181-2016 4.3.5) INFO sip:161128022553273720@192.168.40.66:7100 SIP/2.0 Via: SIP/2.0/UDP 192.168.40.55:7100;rport;branch=z9hG4bK1764044774 From: <sip:120105110228023020@192.168.40.55:7100>;tag=4105413651 To: <sip:00000000001310018021@192.168.40.66:7100>;tag=4232579586 Call-ID: 2259139548 CSeq: 21 INFO Contact: <sip:120105110228023020@192.168.40.55:7100> Content-Type: Application/MANSRTSP Max-Forwards: 70 User-Agent: NCG V2.6.0.299938 Content-Length: 49 PLAY MANSRTSP/1.0 CSeq: 59367 Scale: 0.000000 // Scale:回播速度控制 例:Scale: 8.000000 快进x8 SIP/2.0 200 OK Via: SIP/2.0/UDP 192.168.40.55:7100;rport=7100;branch=z9hG4bK1764044774 From: <sip:120105110228023020@192.168.40.55:7100>;tag=4105413651 To: <sip:00000000001310018021@192.168.40.66:7100>;tag=4232579586 Call-ID: 2259139548 CSeq: 21 INFO Contact: <sip:161128022553273720@192.168.40.66:7100> User-Agent: NCG V2.6.0.299938 Content-Length: 0