
在Internet上,流(Streaming)的定义非常广泛,主要是指通过网络传输多媒体数据的技术总称。
一、流媒体的定义流媒体包含广义和狭义两种内涵:
. 广义流媒体
指的是使音频和视频形成稳定和连续的传输流和回放流的一系列技术、方法和协议的总称,即流媒体技术;
. 狭义流媒体
是相对于传统的下载-回放方式而言的,指的是一种从Internet上获取音频和视频等多媒体数据的新方法,
它能够支持多媒体数据流的实时传输和实时播放。
通过运用流媒体技术,
服务器能够向客户机发送稳定和连续的多媒体数据流,
客户机在接收数据的同时以一个稳定的速率回放,而不用等数据全部下载完之后再进行回放。
流式传输有:
顺序流式传输(Progressive Streaming)和实时流式传输(Realtime Streaming)两种方式。
. 实时流式传输(Realtime Streaming)是实时传送,
特别适合现场事件,实时流式传输必须匹配连接带宽,这意味着图像质量会因网络速度降低而变差,以减少对传输带宽的需求。
"实时"的概念是指在一个应用中数据的交付必须与数据的产生保持精确的时间关系,这需要相应的协议支持,
它包括的协议有:
RTP, RTCP和RTSP
. 顺序流式传输(Progressive Streaming)
顺序流式传输是顺序下载,顺序流式传输不像实时流式传输那样,可以在传输期间根据用户连接的速度进行调整。
它包括的协议比较多,有:
RTMP, HTTP, MMS, 和HLS
二、RTP,RTCP和RTSP2.1 RTP参考文档 RFC3550/RFC3551
Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议。
RTP协议详细说明了在互联网上传递音频和视频的标准数据包式。
RTP协议常用于流媒体系统(配合RTCP协议),视频会议和一键通(Push to Talk)系统(配合H.323或SIP),
使它成为IP电话产业的技术基础。RTP协议和RTP控制协议RTCP一起使用,而且它是建立在UDP协议上的。
RTP 本身并没有提供按时发送机制或其它服务质量(QoS)保证,它依赖于低层服务去实现这一过程。
RTP 并不保证传送或防止无序传送,也不确定底层网络的可靠性。
RTP 实行有序传送, RTP 中的序列号允许接收方重组发送方的包序列,同时序列号也能用于决定适当的包位置,
例如:在视频解码中,就不需要顺序解码。
RTP 由两个紧密链接部分组成:
RTP ― 传送具有实时属性的数据;
RTP 控制协议(RTCP) ― 监控服务质量并传送正在进行的会话参与者的相关信息。
2.2 RTCP实时传输控制协议(Real-time Transport Control Protocol或RTP Control Protocol或简写RTCP)
是实时传输协议(RTP)的一个姐妹协议。RTCP为RTP媒体流提供信道外(out-of-band)控制。
RTCP本身并不传输数据,但和RTP一起协作将多媒体数据打包和发送。
RTCP定期在流多媒体会话参加者之间传输控制数据。RTCP的主要功能是为RTP所提供的服务质量(Quality of Service)提供反馈。
RTCP收集相关媒体连接的统计信息,例如:传输字节数,传输分组数,丢失分组数,jitter,单向和双向网络延迟等等。
网络应用程序可以利用RTCP所提供的信息试图提高服务质量,比如限制信息流量或改用压缩比较小的编。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-47532-1.html
出去看看大千世界