计算机专业毕业论文
摘要:文章介绍了流媒体的概念、特点与流媒体系统,比较深入分析了流媒体关键技术,对流媒体技术在发展中遇到的问题提出了简单建议。
关键词:流媒体;编码方式;传输协议
目前在中国的宽带网络市场上,基于不同压缩编码方式的MPEG-1,MPEG-2,REAL,WMT,QuickTime等各种流媒体技术的产品成了宽带网络的宠儿,日益受到人们的关注。
一、流媒体的概念与特点
流媒体是指运用可变带宽技术,在数据网络上按时间先后次序传输和播放的连续音/视频数据的一种格式。流媒体在播放前只将部分内容缓存,并不下载整个文件,在数据流传送的同时,用户可在计算机上利用相应的播放器或其它的硬件、软件对压缩的动画、视音频等流式多媒体文件解压后进行播放,这样就节省了下载等待时间和存储空间,使时延大大减少,而多媒体文件的剩余部分将在后台的服务器内继续下载。
流媒体数据流具有连续性、实时性、时序性三大特点,具有严格的前后时序关系。
二、流媒体系统
流媒体系统包括音/视频源的编码/解码、存储、流媒体服务器、媒体流传输网络、用户端播放器5个部分(如图1所示),原始音/视频流经过编码和压缩后,形成媒体文件存储,媒体服务器根据用户的请求把媒体文件传递到用户端的媒体播放器。
三、流媒体关键技术
流媒体系统中,影响流媒体播放质量的3个最关键的因素是:编码和压缩的性能与效率、媒体服务器的性能、媒体流传输的质量控制。
(一)编码/压缩
流媒体系统中的编码用于创建、捕捉和编辑多媒体数据,形成流媒体格式。
影响音/视频流的编码性能的因素很多:首先是编码效率,要求在保证一定音/视频质量的前提下,媒体流的码流速率尽量低,以达到压缩流媒体文件的目的。其次是编码的冗余性和可靠性,与普通多媒体文件压缩/编码不同的是,流媒体文件需要在网络上实时传输,因此必须考虑传输中数据丢失对解码质量的影响。在Internet环境下,最典型的方法是多描述编码(MDC)。MDC把原始的视频序列压缩成多位流,每个流对应一种描述,都可以提供可接受的视觉质量,多个描述结合起来提供更好的质量。最后需要考虑速率调节的能力,一种方法是采用可扩展的层次编码,生成多个子位流(Substream),其中一个位流是基本位流,它可以独立解码,输出粗糙质量的视频序列,其他的子位流则起质量增强的作用,所有的子位流一起还原出最好质量的视频序列。当网络速率变化时,可以通过调节流输出的层次来控制码流的速率,从而适应网络速率的变化。
(二)媒体服务器
流媒体系统中的媒体服务器用于存放和控制流媒体的数据。
随着流媒体规模的扩大,流媒体服务器的性能成为制约流媒体服务扩展能力的重要因素。流媒体服务器性能的关键指标是流输出能力和能同时支持的并发请求数量。影响流媒体服务器性能的因素很多,包括CPU能力、I/O总线、存储带宽等。通常单个流媒体服务器的并发数都在几百以内,因此为了具有更好的性能,目前的高性能流媒体服务器都采用大规模并行处理的结构,例如采用超立方体的结构将各个流媒体服务单元连接起来。还有一种方法是采用简单的PC集群的方式,这种方式下多个PC流媒体服务器用局域网连接,前端采用内容交换/负载均衡器将流媒体服务的请求分布到各个PC媒体服务单元。后一种方式的性能不如前一种方式,但是成本低,容易实现。
(三)流媒体传输网络
流媒体在因特网上的传输必然涉及到网络传输协议,这是制约流媒体性能的最重要的因素。为了保证对网络拥塞、时延和抖动极其敏感的流媒体业务在面向无连接的IP网络中的服务质量,必须采用合适的协议,其中包括Internet本身的多媒体传输协议,以及一些实时流式传输协议等。
①Internet本身的多媒体传输协议
RSVP(Resource Reserve Protocol)协议预留一部分网络带宽,能在一定程度上为流媒体的传输提供QoS。在某些试验性的系统如网络视频会议工具VIC中就集成了RSVP。该协议的两个重要概念是流与预定。流是从发送者到一个或多个接收者的连接特征,通过IP包中"流标记"来认证。发送一个流之前,发送者传输一个路径信息到目的接收方,这个信息包括源IP地址、目的IP地址和一个流规格。这个流规格是由流的速率和延迟组成的。接收者实现预定后,基于接收者的模式能够实现一种分布式解决方案。
②实时流式传输协议
目前几种支持流媒体传输的协议主要有用于 Internet上针对多媒体数据流的实时传输协议RTP(Real-Time Transport Protocol)、与RTP一起提供流量控制和拥塞控制服务的实时传输控制协议RTCP(Real-time Transport Control Protocol)、定义了一对多的应用程序如何有效地通过IP网络传送多媒体数据的实时流协议RTSP(Real-Time Streaming Protocol)。
RTP
RTP被定义在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。RTP通常使用UDP来传送数据,也可在TCP或ATM等其他协议上工作。RTP本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。 (责任编辑:一枝笔写作)