客户端发起的实时点播消息示范:(请求视频信令与断开视频信息  和 回播基本无差别)
、请求视频流
INVITE sip:@192.168.40.66: SIP/2.0
Via: SIP/2.0/UDP 192.168.40.55:;rport;branch=z9hG4bK2480933505
From: <sip:@192.168.40.55:>;tag=
To: <sip:@192.168.40.66:>
Call-ID: // Call-ID:使用该字段标识一路视频
CSeq: INVITE
Contact: <sip:@192.168.40.55:>
Content-Type: Application/SDP
Max-Forwards:
User-Agent: NCG V2.6.0.
Subject: :,:
Content-Length: v=
o= IN IP4 192.168.40.55
s=Play //Play标识为点播请求 Playback标识回播请求
c=IN IP4 192.168.40.55 //192.168.40.55:音视频流目的地址
t= //t行第一参数为视频开始时间 第二个参数为结束时间 t = 0 0表示实时视音频点播
m=video RTP/AVP //video:表示请求音视频流 audio:表示请求音频流 5522:音视频流目的端口 RTP/AVP:视频流使用协议 96 97 98:客户端支持码流格式
a=rtpmap: PS/
a=rtpmap: MPEG4/
a=rtpmap: H264/
a=recvonly
a=streamMode:MAIN
y= SIP/2.0 Trying
Via: SIP/2.0/UDP 192.168.40.55:;rport=;branch=z9hG4bK2480933505
From: <sip:@192.168.40.55:>;tag=
To: <sip:@192.168.40.66:>
Call-ID:
CSeq: INVITE
User-Agent: NCG V2.6.0.
Content-Length: SIP/2.0 OK
Via: SIP/2.0/UDP 192.168.40.55:;rport=;branch=z9hG4bK2480933505
From: <sip:@192.168.40.55:>;tag=
To: <sip:@192.168.40.66:>;tag=
Call-ID:
CSeq: INVITE
Contact: <sip:@192.168.40.66:>
Content-Type: Application/SDP
User-Agent: NCG V2.6.0.
Content-Length: v=
o= IN IP4 192.168.40.55
s=Play
c=IN IP4 192.168.40.66 //192.168.40.66:音视频流源地址 注:视音频源与目的地址不局限于级联服务器本身
t=
m=video RTP/AVP // video:表示请求视频流 audio:表示请求音频流 5268:音视频流源端口 RTP/AVP:视频流使用协议 96:服务端所选择的码流格式 音视频所使用端口统一使用偶数端口 port+1为rtcp端口
a=rtpmap: PS/
a=sendonly
y= SDP字段说明: v字段:协议版本
o字段:-
a字段:a=rtpmap:<payload type> <encoding name>/<clock rate> [/<encoding parameters>] 中的<encoding name>,利用该属性携带编码器厂商名称。该属性表明该流为某厂商编码器编码且是不符合gb28181规定的媒体流,符合国标的媒体流不需要该属性。
例如:a=rtpmap: DAHUA/
a=rtpmap: HIKVISION/
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:空域编码方式 【取值整型。 :不使用 :1级增强 :2级增强 :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:@192.168.40.66: SIP/2.0
Via: SIP/2.0/UDP 192.168.40.55:;rport;branch=z9hG4bK1981844232
From: <sip:@192.168.40.55:>;tag=
To: <sip:@192.168.40.66:>;tag=
Call-ID: // Call-ID:该字段判断请求端口哪一路视频
CSeq: BYE
Contact: <sip:@192.168.40.55:>
Max-Forwards:
User-Agent: NCG V2.6.0.
Content-Length: SIP/2.0 OK
Via: SIP/2.0/UDP 192.168.40.55:;rport=;branch=z9hG4bK1981844232
From: <sip:@192.168.40.55:>;tag=
To: <sip:@192.168.40.66:>;tag=
Call-ID:
CSeq: BYE
User-Agent: NCG V2.6.0.
Content-Length:

客户端发起的回播控制消息示范:(请求视频信令与断开视频信息  和 回播基本无差别   Play/Playback)

Gb28181标准中,明确说明历史视音频的回复控制命令应采用监控报警联网系统实时流协议(MANSRTSP),并采用SIP消息INFO消息体携带传输。(GBT - 4.3.)
INFO sip:@192.168.40.66: SIP/2.0
Via: SIP/2.0/UDP 192.168.40.55:;rport;branch=z9hG4bK1764044774
From: <sip:@192.168.40.55:>;tag=
To: <sip:@192.168.40.66:>;tag=
Call-ID:
CSeq: INFO
Contact: <sip:@192.168.40.55:>
Content-Type: Application/MANSRTSP
Max-Forwards:
User-Agent: NCG V2.6.0.
Content-Length: PLAY MANSRTSP/1.0
CSeq:
Scale: 0.000000 // Scale:回播速度控制 例:Scale: 8.000000 快进x8 SIP/2.0 OK
Via: SIP/2.0/UDP 192.168.40.55:;rport=;branch=z9hG4bK1764044774
From: <sip:@192.168.40.55:>;tag=
To: <sip:@192.168.40.66:>;tag=
Call-ID:
CSeq: INFO
Contact: <sip:@192.168.40.66:>
User-Agent: NCG V2.6.0.
Content-Length:

sip (gb28181)信令交互-视频点播与回播的更多相关文章

  1. sip (db33)信令交互-视频点播与回播

    请求视频流: INVITE sip:@ SIP/2.0 Via: SIP/;rport;branch=z9hG4bK178329191 From: <sip:@>;tag= To: < ...

  2. 常见S1信令交互流程

    0. S1 Setup

  3. rtsp信令交互流程

  4. STUN/TURN/ICE协议在P2P SIP中的应用(一)

    1           说明 本文详细描述了基于STUN系列协议实现的P2P SIP电话过程,其中涉及到了SIP信令的交互,P2P的原理,以及STUN.TURN.ICE的协议交互 本文所提到的各个服务 ...

  5. node.js实现国标GB28181设备接入的sip服务器解决方案

    方案背景 在介绍GB28181接入服务器的方案前,咱们先大概给大家介绍一下为什么我们选择了用nodejs开发国标GB28181的服务,我大概给很多人介绍过这个方案,大部分都为之虎躯一震,nodejs在 ...

  6. sip信令跟踪工具sngrep

    概述 在VOIP的使用过程中,最常见的问题就是信令不通和语音质量问题. 通常的问题跟踪手段包括日志分析.抓包分析. 抓包的工具有wireshark.tcpdump等等,如果是只针对sip信令的抓包,则 ...

  7. GB28181国检推流

    GB28181国检有一向内容是实时播放摄像机流,经过一番努力,搞定这个功能,现分享心得: 首先需要了解流程,说简答点就是视频流从哪里来到什么地方去,下图描述了视频流推流,转发的 基本过程:信令交互成功 ...

  8. 【转】SIP 中的Dialog,call,session 和 transaction

    如果你对Sip协议中Call, Dialog, Transaction和Message之间的关系感觉到迷惑,那么,那么我可以告诉你,你并不孤单,因为大多数初学者对于这些名词之间的关系都会感到疑惑.   ...

  9. 【SIP协议】学习初学笔记

    1.SIP这玩意是怎么走来和如何构建的? 通俗的说,SIP就是一个轻量级信令协议,它可以作为音频.视频.及时信息的信令. 说到SIP是怎么出来的就要提H.323,而提到这个标准由不得不提到ITU-T, ...

随机推荐

  1. 《mysql必知必会》学习_第10章_20180731_欢

    第10章,计算字段. P64 select concat (vend_name,'(',vend_country,')') from vendors order by vend_name; # 拼接, ...

  2. zoj3820

    题意:给定一个树,找出两个点,使得其他点到最近的点的距离最小 思路: 牡丹江站的B题..可惜当时坑的不大对,最后也没写完.. 1.题解方法: 基于一个结论,答案一定在直径上(证明我不会).. 那么,可 ...

  3. SRM466

    250pt: 给出一个数n(n <= 10^10),问至少修改几位能使其变成完全平方数. 思路:     直接枚举平方根,然后统计.     注意枚举时要枚举到比她大.. #line 7 &qu ...

  4. scikit-FEM-mesh

    # -*- coding: utf-8 -*- """ “Mesh”模块包含了有限元网格的不同类型. See the following implementations: ...

  5. unidbgrid单元格操作

    unidbgrid单元格操作 //GRID里回车替换TABfunction cellkeydown(sender, td, cellIndex, record, tr, rowIndex, e, eO ...

  6. Android-Kotlin-递归与尾递归

    递归: 阶乘计算: /** * 阶乘: * 1的阶乘是1,因为1往下走一个楼梯 就是0了 * 2的阶乘是 2*1 * 3的继承是 3*2*1 * 4的继承是 4*3*2*1 * 5的阶乘是 5*4*2 ...

  7. glob

    主要是用来在匹配文件,相当shell中用通配符匹配. 用法: glob.glob(pathname) # 返回匹配的文件作为一个列表返回 glob.iglob(pathname) # 匹配到的文件名, ...

  8. C# 动态创建SQL数据库(一)

    最近在做项目中要求能够要求动态添加数据库并建表.具体思路如下 1 提供数据名,根据数据库创建数据库 2 自定数据库与数据表,提供数据表自定与数据类型创建表 创建sqlhelper类,用于数据库操作 u ...

  9. BZOJ 1012--[JSOI2008]最大数maxnumber(二分&单调栈)

    1012: [JSOI2008]最大数maxnumber Time Limit: 3 Sec  Memory Limit: 162 MBSubmit: 14142  Solved: 6049[Subm ...

  10. 30_网络编程-socketserver

    一.socketserver       socketserver可以实现和多个客户端通信.它是在socket的基础上进行了一层封装,也就是说底层还是调用的socket,在py2.7里面叫做Socke ...