流媒体技术
首先,多媒体数据必须进行预处理才能适合流式传输,这是因为目前的网络带宽对多媒体巨大的数据流量来说还显得远远不够。预处理主要包括两方面:一是降低质量;二是采用先进高效的压缩算法。
其次,流式传输的实现需要缓存。这是因为Internet是以包传输为基础进行断续的异步传输。数据在传输中它们要被分解为许多包,由于网络是动态变化的,各个包选择的路由可能不尽相同,故到达客户端的时间延迟也就不等。为此,使用缓存系统来弥补延迟和抖动的影响,并保证数据包的顺序正确,从而使媒体数据能连续输出,而不会因网络暂时拥塞使播放出现停顿。
再次,流式传输的实现需要合适的传输协议。WWW技术是以HTTP协议为基础的,而HTTP又建立在TCP协议基础之上。由于TCP需要较多的开销,故不太适合传输实时数据。在流式传输的实现方案中,一般采用HTTP/TCP来传输控制信息,而用RTP/UDP来传输实时声音数据。 2) 、支持流媒体传输的网络协议
A、实时传输协议RTP与RTCP
RTP: 实时传输协议(Real-timeTransportProtocol)一种用于Internet上针对多媒体数据流的一种传输协议。
RPCP: 实时传输控制协议(Real-timeTransportControlProtocol)和RTP一起提供流量控制和拥塞控制服务。
RTP是用于Internet上针对多媒体数据流的一种传输协议。RTP被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。RTP通常使用UDP来传送数据,但RTP也可以在TCP或ATM等其他协议之上工作。当应用程序开始一个RTP会话时将使用两个端口:一个给RTP,一个给RTCP。RTP本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。通常RTP算法并不作为一个独立的网络层来实现,而是作为应用程序代码的一部分。
实时传输控制协议RTCP和RTP一起提供流量控制和拥塞控制服务。在RTP会话期间,各参与者周期性地传送RTCP包。RTCP包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。RTP和RTCP配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。 B、 时流协议RTSP
RTSP:实时流协议 (RealTimeStreamingProtocol) 定义了一对多的应用程序如何有效地通过IP网络传送多媒体数据。
实时流协议RTSP(RealTimeStreamingProtocol)是由RealNetworks和Netscape共同提出的,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。RTSP在体系结构上位于RTP和RTCP之上,它使用TCP或RTP完成数据传输。HTTP与RTSP相比,HTTP传送HTML,而RTP传送的是多媒体数据。HTTP请求由客户机发出,服务器作出响应;使用RTSP时,客户机和服务器都可以发出请求,即RTSP可以是双向的。
C、资源预订协议RSVP协议
RSVP:资源预订协议(ResourceReserveProtocol )正在开发的Internet上的资源预订协议。
由于音频和视频数据流比传统数据对网络的延时更敏感,要在网络中传输高质量的音频、视频信息,除带宽要求之外,还需其他更多的条件。 使用RSVP预留一部分网络资源(即带宽),能在一定程度上为流媒体的传输提供方便
3) 、识别流媒体类型的途径--MIME
Web服务器和Web浏览器如何识别流媒体并进行相应的处理呢?答案是MIME。MIME是MultipurposeInternet MailExtensions(通用因特网邮件扩展)的缩略词。它不仅用于电子邮件,还能用来标记在Internet上传输的任何文件类型。Web服务器和Web浏览器都基于HTTP协议,而HTTP都内建有MIME。HTTP正是通过MIME标记Web上繁多的多媒体文件格式。
流式传输的过程一般是这样的:
1、 用户选择某一流媒体服务后,Web浏览器与Web服务器之间使用HTTP/TCP交换控制信息,以便把需要传输的实时数据从原始信息中检索出来
2、 然后客户机上的Web浏览器启动A/VHelper程序,使用HTTP从Web服务器检索相关参数对Helper程序初始化。这些参数可能包括目录信息、A/V数据的编码类型或与A/V检索相关的服务器地址。
3、 A/VHelper程序及A/V服务器运行实时流控制协议(RTSP),以交换A/V传输所需的控制信息。与CD播放机或VCRs所提供的功能相似,RTSP提供了操纵播放、快进、
《流媒体技术(第2页)》