当前位置: 首页 > news >正文

象山区网站建设哈尔滨建设发展集团

象山区网站建设,哈尔滨建设发展集团,合肥网红,谷歌浏览器对做网站有什么好处要求 SIP服务器接收到媒体接收者发送的视音频文件下载请求后向媒体流发送者发送媒体文件下载命令,媒体流发送者采用RTP将视频流传输给媒体流接收者,媒体流接收者直接将视频流保存为媒体文件;媒体流接收者或SIP服务器可通过配置查询等方式获取…

要求

  • SIP服务器接收到媒体接收者发送的视音频文件下载请求后向媒体流发送者发送媒体文件下载命令,媒体流发送者采用RTP将视频流传输给媒体流接收者,媒体流接收者直接将视频流保存为媒体文件;
  • 媒体流接收者或SIP服务器可通过配置查询等方式获取媒体流发送者支持的下载发送倍速,并在请求的SDP消息体中携带下载倍速;
  • 视音频文件下载宜支持媒体流保活机制;

流程

在这里插入图片描述

录像下载的流程与录像点播、录像回放类似,主要区别为INVITE请求时xml格式有差异:

  • 实时点播

关于实时点播可查看:

实时点播(信令处理):https://blog.csdn.net/www_dong/article/details/132950064
实时点播(数据处理):https://blog.csdn.net/www_dong/article/details/133581370

注意:

  • “t=0 0”中开始时间和结束时间均为0表示实时点播
  • "s=Play“
static std::string CreateRealStreamSDP(const GB28181MediaContext& mediaContext)
{char str[500] = { 0 };pj_ansi_snprintf(str, 500,"v=0\n""o=%s 0 0 IN IP4 %s\n""s=Play\n""c=IN IP4 %s\n""t=0 0\n""m=video %d RTP/AVP 96 98 97\n""a=recvonly\n""a=rtpmap:96 PS/90000\n""a=rtpmap:98 H264/90000\n""a=rtpmap:97 MPEG4/90000\n""y=001\n",mediaContext.GetDeviceId().c_str(),mediaContext.GetRecvAddress().c_str(),mediaContext.GetRecvAddress().c_str(),mediaContext.GetRecvPort());return str;
}
  • 录像回放

历史视音频回放:https://blog.csdn.net/www_dong/article/details/133826739

注意:

  • “t=%lld %lld”中开始时间和结束时间为点播的开始时间和结束时间
  • “s=Playback”
static std::string CreatePlayBackSDP(const GB28181MediaContext& mediaContext)
{char str[500] = { 0 };pj_ansi_snprintf(str, 500,"v=0\n""o=%s 0 0 IN IP4 %s\n""s=Playback\n""c=IN IP4 %s\n""t=%lld %lld\n""m=video %d RTP/AVP 96 98 97\n""a=recvonly\n""a=rtpmap:96 PS/90000\n""a=rtpmap:98 H264/90000\n""a=rtpmap:97 MPEG4/90000\n""y=001\n",mediaContext.GetDeviceId().c_str(),mediaContext.GetRecvAddress().c_str(),mediaContext.GetRecvAddress().c_str(),mediaContext.GetPBStartTime(),mediaContext.GetPBEndTime(),mediaContext.GetRecvPort());return str;
}
  • 录像下载

注意:

  • “t=%lld %lld”中开始时间和结束时间为需要下载文件的开始时间和结束时间
  • “s=Download”
  • "a=downloadspeed:8"表示8倍速下载
static std::string CreateSDPForDownload(const GB28181MediaContext& mediaContext){char str[500] = { 0 };pj_ansi_snprintf(str, 500,"v=0\n""o=%s 0 0 IN IP4 %s\n""s=Download\n""c=IN IP4 %s\n""t=%lld %lld\n""m=video %d RTP/AVP 96 98 97\n""a=recvonly\n""a=rtpmap:96 PS/90000\n""a=rtpmap:98 H264/90000\n""a=rtpmap:97 MPEG4/90000\n""a=downloadspeed:%d\n""y=0100000001\n",mediaContext.GetDeviceId().c_str(),mediaContext.GetRecvAddress().c_str(),mediaContext.GetRecvAddress().c_str(),mediaContext.GetDownloadStartTime(),mediaContext.GetDownloadEndTime(),mediaContext.GetRecvPort(),mediaContext.GetDownloadSpeed());return str;}

抓包

在这里插入图片描述

  1. 查询历史视音频文件,查询结果如图所示:

在这里插入图片描述

  1. 选中一条文件记录,右键选择录像下载,弹出如下界面:

在这里插入图片描述

  1. 选择8倍速,点击开始下载,向设备发送下载请求:
INVITE sip:xxx@192.168.0.111:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.107:5060;rport;branch=xxx
Max-Forwards: 70
From: sip:xxx@192.168.0.107;tag=xxx
To: sip:xxx@192.168.0.111
Contact: <sip:xxx@192.168.0.107:5060>
Call-ID: xxx
CSeq: 15724 INVITE
Allow: SUBSCRIBE, NOTIFY, INVITE, ACK, BYE, CANCEL, UPDATE
Supported: 
Subject: xxx:xx,xxx:xx
Content-Type: application/sdp
Content-Length:   251v=0
o=xxx 0 0 IN IP4 192.168.0.107
s=Download
c=IN IP4 192.168.0.107
t=1697955233 1697958114      # 下载的文件开始时间和结束时间
m=video 36000 RTP/AVP 96 98 97
a=recvonly
a=rtpmap:96 PS/90000
a=rtpmap:98 H264/90000
a=rtpmap:97 MPEG4/90000
a=downloadspeed:8            # 8倍速下载
y=001
  1. 设备返回下载请求结果:
# 100 Trying
SIP/2.0 100 Trying
Via: SIP/2.0/UDP 192.168.0.107:5060;rport=5060;branch=xxx
From: <sip:xxx@192.168.0.107>;tag=xxx
To: <sip:xxx@192.168.0.111>
Call-ID: xxx
CSeq: 15724 INVITE
User-Agent: IP Camera
Content-Length: 0# 200 OK
SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.0.107:5060;rport=5060;branch=xxx
From: <sip:xxx@192.168.0.107>;tag=xxx
To: <sip:xxx@192.168.0.111>;tag=904233038
Call-ID: xxx
CSeq: 15724 INVITE
Contact: <sip:xxx@192.168.0.111:5060>
Content-Type: application/sdp
User-Agent: IP Camera
Content-Length:   198v=0
o=xxx 2131 2131 IN IP4 192.168.0.111
s=Download
c=IN IP4 192.168.0.111
t=0 0
m=video 15060 RTP/AVP 96
a=sendonly
a=rtpmap:96 PS/90000
a=filesize:62224924          # 请求的文件大小
y=001
  1. 接收数据
    在这里插入图片描述

  2. 文件下载结束通知

当接收到MediaStatus命令且NotifyType为121是表示历史媒体文件发送结束。

在这里插入图片描述

抓包如下所示:

MESSAGE sip:xxx@192.168.0.107:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.111:5060;rport;branch=xxx
From: <sip:xxx@192.168.0.111>;tag=xxx
To: <sip:xxx@192.168.0.107>;tag=xxx
Call-ID: xxx
CSeq: 2 MESSAGE
Contact: <sip:xxx@192.168.0.111:5060>
Content-Type: Application/MANSCDP+xml
Max-Forwards: 70
User-Agent: IP Camera
Content-Length:   174<?xml version="1.0" encoding="GB2312"?>
<Notify>
<CmdType>MediaStatus</CmdType>
<SN>151</SN>
<DeviceID>xxx</DeviceID>
<NotifyType>121</NotifyType>
</Notify>

下载的文件如下:

在这里插入图片描述

http://www.yayakq.cn/news/986199/

相关文章:

  • 江苏省交通运输厅门户网站建设管理北京网站优化流程
  • 深圳有没有什么网站基于php mysql的网站开发
  • 怎么做网站链接的快捷方式兼职给企业做网站
  • 电商网站开发价格scrm管理系统
  • 想自己做网站推广国内免费代理服务器
  • 有什么做兼职的好网站wordpress如何开启小绿锁
  • 打造一个网站新闻类网站html模板免费下载
  • 网站建设面试问题攻击jsp网站
  • 厦门制作公司网站如何阿里巴巴网站做推广方案
  • 厦门做手机网站公司目前网站开发状况
  • 无锡高端网站设计建设科技微网站
  • 企业网站流量网站的效果图
  • wordpress 自测荆州网站seo
  • 专业手机网站怎么做十大聊天软件排行榜
  • 网站建设攻略湛江免费建站模板
  • thinkphp 大型网站开发域名怎么实名认证
  • 网站开发最强工具查询网站这么做
  • 医院网站icp备案吗如何提高网站的转化率
  • 西安博网站建设wordpress 防采集
  • 做网站先做首页net域名大网站
  • 找人做seo要给网站程序网站平台如何推广
  • 地方网站发展wordpress 转 jpress
  • app哪个网站开发好苏州百度首页优化
  • 陕西网站制作qq群浙江省网站建设公司排名
  • 网站开发的自适应网络科技公司 网站建设
  • 推广网站最有效方法珠海公司制作网站
  • 四川省建设人才网站2018那个视频网站可以做桌面背景
  • window2008 网站建设微信网页版图片
  • 网站开发有哪些课程软件开发培训机构去哪个学校深圳
  • 个人网站如何获得流量php在网站后台建设中的优势