【转载】 了解实时媒体的播放(RTP/RTCP 和 RTSP)
http://blog.csdn.net/span76/article/details/12913307
离线媒体只是用 Http协议去读取服务器端文件而已,而对于实时直播如何实现, 这里就要用到 RTP/RTCP协议了
RTP/RTCP
RTP是基于 UDP协议的, UDP不用建立连接,效率更高;但允许丢包, 这就要求在重新组装媒体的时候多做些工作
RTP只是包裹内容信息,而RTCP是交换控制信息的,Qos是通过RTCP实现的
RTP中一个重要的概念是 session, 对于一个 audio stream 可以是一个session 但可以有多个 contributor, 也可以有多个监听者, 比如网络电话
做实时视频流,先用采集设备,直接把视频做成 H.264 的 NALu,而后通过 RTP打包,传输给客户端
有一篇文就是介绍如何把 NALu 用RTP打包的
http://www.rosoo.net/a/201108/14896.html
RTSP
但还缺少一个环节, 应用程序对应的是 play, seek, pause, stop, 如何把应用指令和 RTP的传输结合起来.
RTSP正是为了解决这个问题产生的
RTSP是应用层的协议和 HTTP协议很相似,客户端和服务器通过传递文本,通知如何进行 RTP/RTCP信息的交互
从图中,我们可以看到 RTSP也可以不用 RTP, 而用TCP来实现流媒体传递
RTSP的 client 连接 server 多通过 SDP(会话描述协议)传递信息
- C -> S :
- DESCRIBE rtsp://server.example.com/fizzle/foo RTSP/1.0 312
- Accept: application/sdp, application/rtsl, application/mheg
- S -> C :
- RTSP/1.0 200 312 OK
- Date: 23 Jan 1997 15:35:06 GMT
- Content-Type: application/sdp
- Content-Length: 376
- v=0
- o=mhandley 2890844526 2890842807 IN IP4 126.16.64.4
- s=SDP Seminar
- i=A Seminar on the session description protocol
- u=http://www.cs.ucl.ac.uk/staff/M.Handley/sdp.03.ps
- e=mjh@isi.edu (Mark Handley)
- c=IN IP4 224.2.17.12/127
- t=2873397496 28973404696
- a=recvonly
- m=audio 3456 RTP/AVP 0
- m=video 2232 RTP/AVP 31
- m=whiteboard 32416 UDP WB
- a=orient:portrait
Session description
v= (protocol version)
o= (owner/creator and session identifier)
s= (session name)
i=* (session information)
u=* (URI of description)
e=* (email address)
p=* (phone number)
c=* (connection information - not required if included in all media)
b=* (zero or more bandwidth information lines)
One or more time descriptions ("t=" and "r=" lines, see below)
z=* (time zone adjustments)
k=* (encryption key)
a=* (zero or more session attribute lines)
Zero or more media descriptions
通过这些信息,client 就可以连接正确的 RTP session
关于RTMP和RTSP的区别
RTMP: RTM(Messaging)P 是 Adobe公司自己的规范,为Flash播放器和服务器之间音频、视频和数据传输开发的私有协议。
转载于:https://www.cnblogs.com/littleKing163/p/4823074.html
【转载】 了解实时媒体的播放(RTP/RTCP 和 RTSP)相关推荐
- RTP/RTCP/RTSP协议初探
From:http://apps.hi.baidu.com/share/detail/24794429 一.产生的背景 随着互连网的发展,人们已经不满足于传统的HTTP,FTP和电子邮件等文本信息和服 ...
- RTP/RTCP/RTSP协议
描述:协议关系图 图片: 一.产生的背景 随着互连网的发展,人们已经不满足于传统的HTTP,FTP和电子邮件等文本信息和服务,而对内容丰富多彩的多媒体信 ...
- 开源实时音视频技术WebRTC中RTP/RTCP数据传输协议的应用
1.前言 RTP/RTCP协议是流媒体通信的基石.RTP协议定义流媒体数据在互联网上传输的数据包格式,而RTCP协议则负责可靠传输.流量控制和拥塞控制等服务质量保证.在WebRTC项目中,RTP/RT ...
- IP实时传输协议RTP/RTCP详解
1.简介 目前,在IP网络中实现实时语音.视频通信和应用已经成为网络应用的一个主流技术和发展方向,本文详细介绍IP协议族中用于实时语音.视频数据传输的标准协议RTP( Real-time Transp ...
- 实时传输协议:RTP、RTCP、RTSP介绍
http://blog.csdn.net/heanyu/article/details/6202500 RTP(Real Time Transport Protocol) RTP是针对Internet ...
- (转载)H.264码流的RTP封包说明
H.264的NALU,RTP封包说明(转自牛人) 2010-06-30 16:28 H.264 RTP payload 格式 H.264 视频 RTP 负载格式 1. 网络抽象层单元类型 (NALU) ...
- 视频流传输协议RTP/RTCP/RTSP/HTTP的区别
在转载之前:我研究主要是基于HTTP的视频流,正在研读的论文名:"Modeling and Analyzing the Influence of Chunk Size Variation o ...
- RTP/RTCP 和 SRTP/SRTCP协议
此文章为转载,如有侵权,通知删除 原地址:https://blog.csdn.net/swallow_he/article/details/74202104 RTP/RTCP 和 SRTP/SRTCP ...
- LIVE555 RTSP RTP/RTCP协议介绍
LIVE555 RTSP.RTP/RTCP协议介绍 一.概述 RTSP(Real-Time Stream Protocol )是一种基于文本的应用层协议,在语法及一些消息参数等方面,RTSP协议与H ...
最新文章
- [转]Erlang 大量写入出警报
- 计算机网络通信技术课程的基本知识点内容,河北《计算机网络与通信(2339)》自学考试大纲...
- 如何快速在Github找到你想要的东西
- 增量式pid调节方式有何优点_PID控制算法
- python3字节转化字符_浅谈 Python3 中对二进制数据 XOR 编码的正确姿势
- 车辆销售系统用例_使用OpenCV和Python构建自己的车辆检测模型
- 8.BLE---错误码
- 伪响应式开发(PC和Mobile分离)
- Visual Studio 2017 编译Clang
- 大数据和人工智能体系图
- NLog 在winform和asp.net下使用快速攻略 .
- RK987A键盘说明书(自用)
- office起动缓慢_如何解决Microsoft Outlook启动缓慢的问题
- Gearman中文手册技术文档分享chm
- 没有标准答案的GIS问题
- 哈,我终于成功量产:因写保护无法格式化的U盘。
- 【小白必读】机器学习入门须知
- css3的nth为什么不生效,CSS:nth-​​child(偶数)选择器背景颜色不起作用
- 微博设置 和 逻辑
- 群晖ds216j如何安装迅雷软件
热门文章
- mac版本自带2.7.10版本的python情况下如何安装和使用python3.x
- bzoj [Scoi2016]美味
- Post请求,向服务器发送用户信息
- 提高jQuery执行效率
- 用Java实现几种常用排序算法(先实现一个org.rut.util.algorithm.SortUtil)
- 实现一个EventTarget类
- Java《剑指Offer》面试题2:替换空格
- Java5的 线程并发库
- tomcat的热部署
- Microsoft Windows Workflow Foundation 4.0 Cookbook