上次说到了XMPP协议,这个遇到了另一个协议RTP。XMPP:http://blog.csdn.net/shinichr/article/details/23832157

概念:

RTP英文名是Real-Time Stream Protocol,顾名思义是一种实时性很高的协议。这种协议和http协议很类似,都是纯文本来发送消息的,不同的是rtp是有状态的,http是没有状态的。怎么理解呢?http协议发了之后,连接就断开了,而且下一次发与上一次没有什么依赖关系,而RTP协议需要知道现在是个什么状态,可以发送什么消息...

RTP用来为IP网上的语音、图像、传真等多种需要实时传输的多媒体数据提供端到端的实时传输服务。RTP为Internet上端到端的实时传输提供时间信息和流同步,但并不保证服务质量,服务质量由RTCP来提供。

RTP: Real-time Transport Protocol,实时传输协议,一般用于多媒体数据的传输。

RTCP: RTP Control Protocol,实时传输控制协议,同RTP一起用于数据传输的监视,控制功能。

RTSP: Real Time Streaming Protocol,实时流协议,用于多媒体数据流的控制,如播放,暂停等。

RTP/RTCP相对于底层传输层,和RTSP,SIP等上层协议一起可以实现视频会议,视频直播等应用。

为什么要搭配这些协议呢?RTP位于传输层(通常是UDP)之上,应用程序之下,实时语音、视频数据经过模数转换和压缩编码处理后,先送给RTP封装成为RTP数据单元,RTP数据单元被封装为UDP数据报,然后再向下递交给IP封装为IP数据包。这么说RTP是没有保证传输成功的,

那怎么保证呢?就要用到rtcp。

RTCP消息含有已发送数据的丢包统计和网络拥塞等信息,服务器可以利用这些信息动态的改变传输速率,甚至改变净荷的类型。RTCP消息也被封装为UDP数据报进行传输。

RTP的应用:

RTP用于在单播或多播网络中传送实时数据。

1:简单的多播音频会议.语言通信通过一个多播地址和一对端口实现,一个用于音频数据rtp,一个用于控制包rtcp

2:音频视频会议.这两种媒体将分别在不同的RTP会话中传送,同步的话就需要根据RTCP包中的计时信息了(network time protocol)

3:翻译器或混合器:

曾经不知边下边播是怎么实现的,不知道现在为止你看了RTP后是怎么想的了?

当前在internet上传送音频和视频等信息主要有两种方式:一是下载,二是流式传输.

在下载情况下,我们都知道,要下完了,才能播放。在视频会议中这显然是不对的。流式传输才是实现流媒体的关键技术.

使用流式传输才能边下载边看流媒体节目。由于internet是基于分组传输的,就是一块一块的传的。所以传递的包会有你先到,或者我先到的情况。

为了降低延迟和恢复数据包时序,在发送端,我们需要对数据进行尽可能的压缩,在接收端,为了恢复时序,就需要一个缓冲区了。对缓冲的数据进行排序就可以恢复数据包时序了。

将排好序的的数据再放入播放缓冲,为什么还要一个播放缓冲呢?这是因为,如果网络不理想(我们国家的网速,就不用贴数据了),我们得到排序好的数据包时间间隔是不等的。如果没有播放缓冲,播放就会出现时延抖动.使用播放缓冲,在开始播放时,花费几十秒钟先将播放缓冲填满,可以有效地消除时延抖动,从而在不太损失实时性的前提下实现流媒体的顺畅播放.

RTP/RTSP/RTCP 协议详解相关推荐

  1. RTP/RTSP/RTCP 协议详解

    概念: RTP英文名是Real-Time Stream Protocol,顾名思义是一种实时性很高的协议.这种协议和http协议很类似,都是纯文本来发送消息的,不同的是rtp是有状态的,http是没有 ...

  2. rtp协议详解/rtcp协议详解

    1.简介 目前,在IP网络中实现实时语音.视频通信和应用已经成为网络应用的一个主流技术和发展方向,本文详细介绍IP协议族中用于实时语音.视频数据传输的标准协议RTP( Real-time Transp ...

  3. RTP/RTCP协议详解

    1.简介 目前,在IP网络中实现实时语音.视频通信和应用已经成为网络应用的一个主流技术和发展方向,本文详细介绍IP协议族中用于实时语音.视频数据传输的标准协议RTP( Real-time Transp ...

  4. RTP/RTCP协议之RTCP协议详解

    一.概要 RTCP(Real-time ControlProtocol,RTCP-译:实时传输控制协议)与RTP是 由RFC 3550定义(1996年提出的RFC 1889已经作废).RTCP与RTP ...

  5. 最详细的流媒体传输协议-rtsp协议详解

    流媒体传输协议-rtsp协议详解 参阅:RTSP协议详解和分析从零开始写一个RTSP服务器(一)RTSP协议讲解关于RTSP_RTP_RTCP协议的深刻初步介绍 rtsp RTSP出现以前,最热的大概 ...

  6. WebRTC中RTP协议详解

    WebRTC中RTP协议详解 WebRTC中RTP协议详解 WebRTC中RTP协议详解 前言 一.RTP/RTCP在协议栈中的位置 1. RTP传输流程图 二.RTP Header 的结构图 1.R ...

  7. 嵌入式 RTP协议详解以及其他相关协议

    RTP协议 1 RTP报文格式 2 基于RTP的带宽控制方法 1.接收端的控制策略 2.发送端的控制策略    RTP(Real-timeTransportProtocol)是由IETF开发的实时传输 ...

  8. RTSP、HTTP、HTTPS、SDP四种协议详解

    RTSP.HTTP.HTTPS.SDP四种协议详解 从这篇开始我们将进入流媒体的环节,流媒体在android中有nuplayer来实现的,在开始讲解android流媒体前,我们先来讲讲流媒体传输协议, ...

  9. 音视频传输:RTP协议详解和H.264打包方案

    问题背景: 前面讲解了PS.TS.FLV这三种媒体封装格式,现在新开一个系列讲解下传输协议,这里面会包含RTP.RTSP.HLS.RTMP等.当然最复杂的封装格式MP4在准备中,后面会把封装格式这个系 ...

最新文章

  1. PyTorch中的MIT ADE20K数据集的语义分割
  2. Nagios借助yahoo.cn邮箱实现手机短信报警功能
  3. 深入分析 java 8 编程语言规范:Threads and Locks
  4. python小游戏代码大全-python小游戏实现代码
  5. Centos7 安装 nginx 服务器的两种方式
  6. Python实现文本自动分类(朴素贝叶斯方法)
  7. Windows 8系统平台上应用软件安装心得
  8. ExoPlayer用户手册
  9. android Fragments详解一:概述
  10. ZZULIOJ21级新生周赛(1)——命题人:朱会东老师--2824: 探姬同学@出题人
  11. 【论文写作】课程指导平台的开发中系统流程如何写
  12. ❤️使用Mybatis对数据库进行增删改查!!!
  13. studioone机架效果模板_studioone3机架效果包
  14. 手机短信/彩信接口开发经验介绍
  15. java读取文件之BufferedReader
  16. 支持流量计费的云服务器,云服务器流量计费功能
  17. mysql 事务一直running_事务一直running?记录一次事务异常导致的下单阻塞
  18. setInterval 函数的使用例子
  19. Android 8.0 - AccountManager之行为变更
  20. 安卓onKeyDown事件

热门文章

  1. QImage 图片分割、保存
  2. 【深度学习 项目实战】Keras深度学习多变量时间序列预测的LSTM模型
  3. 适合学计算机用的机械键盘,什么机械键盘好用2017 LOL职业玩家用什么键盘好
  4. 四级英语听力软件测试,公务员考试网上做题 普通话测试软件 英语四级听力技巧...
  5. SecureCRT显示乱码的解决办法(centos)
  6. JMeter学习笔记——JMeter关联
  7. eclipse配置python开发环境_如何在Eclipse中配置python开发环境
  8. 【C++】C++静态库和动态库的区别
  9. css的3种布局方式
  10. python中的scipy库_scipy库中的odeint函数