流媒体技术关键概念

流媒体基本概念

非流式媒体是指声音、影像或动画等媒体文件,通常利用FTP协议,由音视频服务器向用户计算机传输。方法是整个文件先下载到本地计算机硬盘,然后用户可以离线浏览。

而所谓的流,是一种传输数据信息的方式。流式传输表示声音、影像或动画等媒体由音视频服务器向用户计算机的连续、实时传送。流媒体传输技术是一种基于时间的连续实时传输技术,其关键在于网络数据传输和客户端播放的并行性。

一般多媒体数据下载时,需要下载完毕才能观看,而多媒体流的特点是边下载边播放(即时播放),不占用客户硬盘空间,但需要有一定的网络带宽支持,如果带宽低于多媒体流需要的带宽,会造成视频和音频数据的停顿。与单纯的下载方式相比,这种对多媒体文件边下载边播放的流式传输方式具有以下优点:

l  实时传输和实时播放:流化多媒体使得用户可以立即播放音频和视频信号,无须等待文件传输结束,这对获取存储在服务器上的流化音频、视频文件,现场回访音频和视频流都具有十分重要的意义。

l  节省存储空间:采用流技术,可以节省客户端的大量存储空间,在客户端只需由播放器对流化音、视频信息进行回放即可。

l  信息数据量小:现场流都比原始信息的数据量要小,并且用户不必将所有下载的数据都同时存储在本地存储器上,可以边下载边回放,从而节省了大量的磁盘空间。

多媒体文件格式

多媒体文件根据应用目的的不同可以分为三种:压缩媒体文件、流式文件和媒体发布文件。

1. 压缩媒体文件格式

压缩格式有时称为压缩媒体格式,它包含了描述一段声音和图象的同样信息,该种文件的大小被处理的很小。显然,压缩过程改变了数据位的编排。在压缩媒体文件再次成为媒体格式前,其中数据需要解压缩。由于压缩过程是在文件生成时自动完成的,并内嵌在媒体文件格式中,通常我们在存储文件时并没有注意到这一点。mov、mpg、mp3、avi等格式的文件都属于此类压缩媒体文件格式范畴。

2. 流式文件格式

流式文件格式经过特殊编码,使其适合在网络上边下载边播放,而不是等到下载完整个文件才能播放。可以在网上以流的方式播放标准媒体文件,但效率不高。将压缩媒体文件编码成流式文件,必须加入一些附加信息,如计时、压缩和版权信息。asf、rm、swf均属于常见的流式文件格式。

3. 媒体发布文件格式

媒体发布格式不是压缩格式,也不是传输协议,其本身并不描述视听数据,也不提供编码方法。媒体发布格式是视听数据安排的唯一途径,物理数据无关紧要,我们仅需要知道数据类型和安排方式。以特定方式安排数据有助于流式多媒体的发展,它可为应用不同压缩标准和媒体文件格式的媒体发布提供一个事实上的标准方法。

多媒体传输对网络的要求

文本、图像、声音、视频等多媒体信息,要在以IP为协议的宽带网络上传输,对网络有特殊的要求,可以从以下几个方面来分析:

l  语音:实时性;延时、抖动敏感;误码相对不敏感;

l  数据:实时性要求不高,但要有严格的误码、校错保证;

l  图像:实时性要求不高,但要求更高的带宽;

l  视频:高的带宽、并对实时性要求较严,允许有误码。

可见,对于用于流媒体传输的网络,主要要求有:

1. 带宽

未压缩的实时数字视频要求以数十兆的速率传送。例如,一个以MPEG-1方式压缩的数字视频流需要1Mbps-1.5Mbps的传输带宽,而H.261标准的压缩数字视频流需要64Kbps一2Mbps的传输带宽。

2. 传输延迟

对于交互视频应用来说,ITU标准建议最大的端到端总延迟不要超过150ms。其中信源的压缩打包需要30ms左右,实际网络传输延迟只能在60ms左右。

3. 时严性

多媒体数据的通信是面向连续比特流的,要求数据之间有严格的时间关系,所以要求通信网络能满足多媒体数据流的传输实时性,特别是在多发多收的应用环境下也能保证传输的实时性。

4. 可靠性

多媒体数据不像常规的数据传送不允许出错,而是可以有一定的差错,只要不影响信息的理解。由于降低了可靠性,延迟可以相对减小。

5. 同步

包含有两种同步:流内同步是保持单个流内部的关系,即按照一定的延迟和抖动来传送流;流间同步是不同媒体之间同步(主要是音频和视频),主要利用时间戳和播放缓冲相结合的方式。

支持流媒体传输的网络协议

实时传输协议RTP

RTP(Real-timeTransport Protocol)是用于Internet上针对多媒体数据流的一种传输协议。RTP被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。

RTP协议由RTP和RTCP两部分组成,其中RTP用于传送媒体数据,而RTCP主要用于传送控制报文实现协议控制功能。RTP协议独立于下层协议,可以在面向连接和无连接的下层协议上工作。由于多媒体数据对实时性、延迟要求较高,但对数据的可靠性要求较低,所以RTP协议通常与UDP协议一起使用,而不是TCP协议,这样有利于降低协议开销,避免TCP重传机制引起的不必要的延迟,以达到最大限度利用网络带宽的作用。

实时传输控制协议RTCP

RTCP(Real-timeTransport Control Protocol)是设计和RTP一起使用的进行流量控制和拥塞控制的服务控制协议。RTCP的主要功能是为应用程序提供会话质量的有关信息。每个RTCP报文并不封装具体的多媒体数据,而是封装发送端和接收端的统计报表。这些信息包括发送的报文数量、丢失的报文数量以及报文的抖动情况等等。

当应用程序开始一个RTP会话时将使用两个端口:一个给RTP,一个给RTCP。RTP本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。在RTP的会话之间周期地发放一些RTCP包用来监听服务质量和交换会话用户信息等功能。RTCP包中含有己发送的数据包的数量、丢失的数据包的数量等统计资料。因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。

可见,RTP和RTCP配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。

实时流协议RTSP

实时流协议RTSP(Real TimeStreaming Protocol)是由RealNetworks、Netscape和哥伦比亚大学共同提出的,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据,同时提供用于音频和视频流的“VCR模式”远程控制功能,如停止、快进、快退和定位,是一种客户端到服务器端的多媒体描述协议。RTSP在体系结构上位于RTP和RTCP之上,它使用TCP或RTP完成数据传输。它主要目标是为单目标广播和多目标广播上的流式多媒体应用提供牢靠的播放性能,以及支持不同厂家提供的客户机和服务机之间的协同工作能力。

RTSP实时流协议在语法和操作上与HTTP/1.1类似,因此HTTP的扩展机制大都可加入RTSP。但是,RTSP与HTTP相比也存在着很大的区别:首先,RTSP传送的是多媒体数据,HTTP传送HTML;其次,HTTP是无状态协议,而RTSP协议则是有状态的;HTTP请求由客户机发出,服务器作出响应,而RTSP的客户机和服务器都可以发出请求,即RTSP可以是双向的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值