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

RTSP实例

以下是某省IPTV的RTSP协商过程:

DESCRIBE rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp?playtype=1&boid=001&backupagent=118.122.89.27:554&clienttype=1&time=20100929182111+08&life=172800&ifpricereqsnd=1&vcdnid=001&userid=123&mediaid=ch10083121594790060557&ctype=2&TSTVTimeLife=1800&contname=&authid=0&UserLiveType=1&nodelevel=3 RTSP/1.0 
/媒体URL 
Accept: application/sdp 
//协商用于描述媒体信息协议 
CSeq: 1

User-Agent:ZTE Ltd.co RTSP protocal verion 1.0 guid-2.1.1.100/B519D290-C0EC-EE35-7368-893BE4C0B347 
//User Agnet信息,显示是中兴的服务器,1.0的版本。如果是Helix服务器的话会有Helix 服务器的标识。 
x-NAT:2.1.1.100:20081 
//主要用于NAT穿透 
x-zmssRtxSdp: yes

RTSP/1.0 200 OK 
//应答编号 
Server: ZXUSS100 1.0

Cache-Control: no-cache

Content-Base: rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp/

Content-Length: 320 
//内容长度信息 
Content-Type: application/sdp 
//描述内容信息所用的协议 
CSeq: 1

Date: Wed, 29 Sep 2010 10:20:38 GMT

Expires: Wed, 29 Sep 2010 10:20:38 GMT 
// SDP 描述信息

v=0

o=- 296874273 1 IN IP4 118.122.89.27

s=envivio

c=IN IP4 0.0.0.0

b=AS:1500

t=0 0

a=range:clock=20100929T095038.00Z-20100929T102038.00Z

m=video 5140 RTP/AVPF 33 96

a=control:trackID=2

a=rtpmap:33 MP2T/90000

a=3GPP-Adaptation-Support:5

a=rtcp-fb:33 nack

a=rtpmap:96 rtx/90000

a=fmtp:96 apt=33;rtx-time=0

SETUP rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp/trackID=2 RTSP/1.0 
//用于建立RTSP连接,协商传输用的协议。 
CSeq: 2

3GPP-Adaptation: url=rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp/trackID=2;size=1061400;target-time=2200

Transport: MP2T/RTP/UDP;unicast;destination=2.1.1.100;client_port=8360-8361,MP2T/RTP/TCP;unicast;destination=2.1.1.100;interleaved=0-1,MP2T/UDP;unicast;destination=2.1.1.100;client_port=8360-8361,MP2T/TCP;unicast;destination=2.1.1.100;interleaved=0-1 
// MP2T/RTP/UDP表示是TS流用于RTP打包,基于UDP传输。MP2T/RTP/TCP表示是TS流用于RTP打包,基于TCP。 
User-Agent:ZTE Ltd.co RTSP protocal verion 1.0 guid-2.1.1.100/B519D290-C0EC-EE35-7368-893BE4C0B347

RTSP/1.0 200 OK

Server: ZXUSS100 1.0

CSeq: 2

Date: Wed, 29 Sep 2010 10:20:38 GMT

Expires: Wed, 29 Sep 2010 10:20:38 GMT

Session: 65565885

Transport: MP2T/RTP/UDP;unicast;destination=2.1.1.100;client_port=8360-8361;server_port=13306-13307;source=118.122.89.29 
// 通过协商MP2T/RTP/UDP表示是TS流用于RTP打包,基于UDP传输。server端端口:13306-13307。client端端口:8360-8361 
3GPP-Adaptation:url=rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp/trackID=2;size=1061400;target-time=2200

PLAY rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp?playtype=1&boid=001&backupagent=118.122.89.27:554&clienttype=1&time=20100929182111+08&life=172800&ifpricereqsnd=1&vcdnid=001&userid=123&mediaid=ch10083121594790060557&ctype=2&TSTVTimeLife=1800&contname=&authid=0&UserLiveType=1&nodelevel=3 RTSP/1.0 
//播放视频。对于有些视频可能会分别要对音频视频进行play。 
CSeq: 3

Session: 65565885

User-Agent:ZTE Ltd.co RTSP protocal verion 1.0 guid-2.1.1.100/B519D290-C0EC-EE35-7368-893BE4C0B347

Scale: 1.0

Range: npt=end-

//npt=end-在IPTV2.0里面有其自身的定义(可参看上海电信IPTV2.0标准)

RTSP/1.0 200 OK

Server: ZXUSS100 1.0

CSeq: 3

Range: npt=end-

Scale: 1.0

Session: 65565885

RTP-Info: url=rtsp://118.122.89.29:13306/live/ch10083121594790060557.sdp/trackID=2

......

PLAY rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp?playtype=1&boid=001&backupagent=118.122.89.27:554&clienttype=1&time=20100929182111+08&life=172800&ifpricereqsnd=1&vcdnid=001&userid=123&mediaid=ch10083121594790060557&ctype=2&TSTVTimeLife=1800&contname=&authid=0&UserLiveType=1&nodelevel=3 RTSP/1.0 
//play的另外一种用法。用于快进和快退。 
CSeq: 43

Session: 65565885

User-Agent:ZTE Ltd.co RTSP protocal verion 1.0 guid-2.1.1.100/B519D290-C0EC-EE35-7368-893BE4C0B347

Scale: -32.0 
//Scale: -32.0,表示以32倍速快退。Scale: 32.0,表示以32倍速快进。 
Range: npt=now-

RTSP/1.0 200 OK

Server: ZXUSS100 1.0

CSeq: 43

Range: clock=20100929T102609.02Z-20100929T095637.75Z

Scale: -32.0

Session: 65565885

RTP-Info: url=rtsp://118.122.89.36:10084/live/ch10083121594790060557.sdp/trackID=2;seq=22277;rtptime=1792329138

GET_PARAMETER rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp?playtype=1&boid=001&backupagent=118.122.89.27:554&clienttype=1&time=20100929182111+08&life=172800&ifpricereqsnd=1&vcdnid=001&userid=123&mediaid=ch10083121594790060557&ctype=2&TSTVTimeLife=1800&contname=&authid=0&UserLiveType=1&nodelevel=3 RTSP/1.0 
//获取当前的一些播放参数。 
CSeq: 44

Session: 65565885

User-Agent:ZTE Ltd.co RTSP protocal verion 1.0 guid-2.1.1.100/B519D290-C0EC-EE35-7368-893BE4C0B347

x-Timeshift_Range 
//请求时移的范围 
x-Timeshift_Current 
//获取当前的时间点

RTSP/1.0 200 OK 
//返回当前的媒体信息。 
Server: ZXUSS100 1.0

CSeq: 44

Session: 65565885

x-Timeshift_Range: clock=20100929T095638.83Z-20100929T102638.83Z

x-Timeshift_Current: clock=20100929T102530.20Z;rtptime=1788844914

中间省去了45,46,47三个包。通过CSeq: 48字段可以看出来

PLAY rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp?playtype=1&boid=001&backupagent=118.122.89.27:554&clienttype=1&time=20100929182111+08&life=172800&ifpricereqsnd=1&vcdnid=001&userid=123&mediaid=ch10083121594790060557&ctype=2&TSTVTimeLife=1800&contname=&authid=0&UserLiveType=1&nodelevel=3 RTSP/1.0 
用于恢复正常的播放速度。 
CSeq: 48

Session: 65565885

User-Agent:ZTE Ltd.co RTSP protocal verion 1.0 guid-2.1.1.100/B519D290-C0EC-EE35-7368-893BE4C0B347

Scale: 1.0

Range: npt=beginning-

RTSP/1.0 200 OK

Server: ZXUSS100 1.0

CSeq: 48

Range: clock=20100929T095730.00Z-20100929T102730.61Z 
//可以时移的范围。 
Scale: 1.0

Session: 65565885

RTP-Info: url=rtsp://118.122.89.36:10084/live/ch10083121594790060557.sdp/trackID=2;seq=39900;rtptime=1637595010

<中间在Descript应答中所用的SDP协议将会在以后中描述>

相关文章:

  • HTTP Live Streaming直播(iOS直播)技术分析与实现
  • C修改文件内容
  • The One Foundation
  • valgrind详细说明
  • 微软(北京).NET俱乐部第十二次技术沙龙
  • Makefile与Shell脚本
  • 用SkinSB美化滚动条控件
  • Windows下Linux开发环境设置(一)--TFTP服务器设置和NFS服务器设置
  • Linux下ffmpeg添加 x265
  • 磁引导机器人系统申请了专利,聊以慰籍
  • 关于TCP的可靠性
  • 如何成长为技术合伙人?
  • 发现一个超酷的FireFox2.0插件,纪念一下
  • UPYUN 用到的技术
  • 祝贺三八节日 “IT女杰风云榜”专题
  • 【跃迁之路】【477天】刻意练习系列236(2018.05.28)
  • ➹使用webpack配置多页面应用(MPA)
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • css系列之关于字体的事
  • Lucene解析 - 基本概念
  • opencv python Meanshift 和 Camshift
  • PHP的Ev教程三(Periodic watcher)
  • Python语法速览与机器学习开发环境搭建
  • Webpack 4x 之路 ( 四 )
  • 大数据与云计算学习:数据分析(二)
  • 回流、重绘及其优化
  • 聊聊spring cloud的LoadBalancerAutoConfiguration
  • 移动端 h5开发相关内容总结(三)
  • 原生js练习题---第五课
  • 容器镜像
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • (175)FPGA门控时钟技术
  • (2)STL算法之元素计数
  • (C语言)逆序输出字符串
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (原創) 如何使用ISO C++讀寫BMP圖檔? (C/C++) (Image Processing)
  • ******IT公司面试题汇总+优秀技术博客汇总
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .NET Core IdentityServer4实战-开篇介绍与规划
  • .NET 指南:抽象化实现的基类
  • .net 中viewstate的原理和使用
  • .net和php怎么连接,php和apache之间如何连接
  • @RestControllerAdvice异常统一处理类失效原因
  • @Transactional类内部访问失效原因详解
  • @Transaction注解失效的几种场景(附有示例代码)
  • [ 渗透工具篇 ] 一篇文章让你掌握神奇的shuize -- 信息收集自动化工具
  • [20140403]查询是否产生日志
  • [23] GaussianAvatars: Photorealistic Head Avatars with Rigged 3D Gaussians
  • [⑧ADRV902x]: Digital Pre-Distortion (DPD)学习笔记
  • [BT]BUUCTF刷题第8天(3.26)
  • [BZOJ1040][P2607][ZJOI2008]骑士[树形DP+基环树]
  • [BZOJ4554][TJOI2016HEOI2016]游戏(匈牙利)
  • [BZOJ5125]小Q的书架(决策单调性+分治DP+树状数组)