流媒体技术及其应用

时间:2022-06-01 20:38:04

随着经济的发展和科学技术的进步,人类社会已进入了信息化的新时代。internet网的飞速发展,使人们对信息时代的网络经济有了全新的认识;每一次的创新,就有一次的飞跃;每一种业务的应用,就是一次想象力的考验。

       internet网的种种应用,都影响着人们的工作和生活,推动社会经济的发展,从而形成一个和能源、材料一样成为当今社会的三大支柱产业之一。而流媒体技术(streaming media)作为internet网的应用之一,自诞生以来,就注定要被广泛应用。

      一、 什么是流媒体

      互联网的普及和多媒体技术在互联网上的应用,迫切要求能解决实时传送视频、音频、计算机动画等媒体文件的技术,在这种背景下,于是产生了流式传输技术及流媒体。通俗的讲,在互联网上的视音频服务器将声音、图像或动画等媒体文件从服务器向客户端实时连续传输时,用户不必等待全部媒体文件下载完毕,而只需延迟几秒或十几秒,就可以在用户的计算机上播放,而文件的其余部分则由用户计算机在后台继续接收,直至播放完毕或用户中止操作。这种技术使用户在播放视音频或动画等媒体的等待时间成百倍的减少,而且不需要太多的缓存。

      流媒体指在internet/intranet中使用流式传输技术的连续时基媒体,如:音频、视频或多媒体文件,它在播放前并不下载整个文件,只将开始部分内容存入内存,其他的数据流随时传送随时播放,只是在开始时有一些延迟,其关键技术就是流式传输。

      与传统的单纯的下载相比较,流媒体具有明显的优点。

       (1)由于不需要将全部数据下载,因此等待时间可以大大缩短;

       (2)由于流文件往往小于原始文件的数据量,并且用户也不需要将全部流文件下载到硬盘,从而节省了大量的磁盘空间;

       (3)由于采用了rstp等实时传输协议,更加适合动画、视音频在网上的实时传输。

      二、 流媒体的系统组成

      及网络环境

       2.1  流媒体的系统组成

      一个完整的流媒体系统应包括以下几个组成部分。

       ◇ 编码工具 :用于创建、捕捉和编辑多媒体数据,形成流媒体格式,这可以由带视音频硬件接口的计算机和运行其上的制作软件共同完成。

       ◇ 流媒体数据。

       ◇ 服务器:存放和控制流媒体的数据。

       ◇ 网络:适合多媒体传输协议或实时传输协议的网络。

       ◇ 播放器:供客户端浏览流媒体文件。

       2.1.1  媒体服务器硬件平台

      视频服务器把存储在存储系统中的视频信息以视频流的形式通过网络接口发送给相应的客户,响应客户的交互请求,保证视频流的连续输出。视频信息具有同步性要求,一方面必须以恒定的速率播放,否则引起画面的抖动,如mpeg-1视频标准要求以1.5mb/s左右的速度播放视频流。另一方面,在视频流中包含的多种信号必须保持同步,如画面的配音必须和口型相一致。另外,视频具有数据量大的特点,它在存储系统上的存放方式,直接影响视频服务器提供的交互服务,如快进和快倒等功能的实现。因此视频服务器必须解决视频流特性提出的各种要求。

      视频服务器响应客户的视频流后,从存储系统读入一部分视频数据到对应于这个视频流的特定的缓存中,然后此缓存中的内容送入网络接口发送到客户。当一个新的客户请求视频服务时,服务器根据系统资源的使用情况,决定是否响应此请求。其中,系统资源包括存储i/o的带宽、网络带宽、内存大小和cpu的使用率等。

       2.1.2  媒体服务器软件平台

      网络视频软件平台包括媒体内容制作、发行与管理模块、用户管理模块、视频服务器。内容制作涉及视频采集、编码。发行模块负责将节目提交到网页,或将视频流地址邮寄给用户。内容管理主要完成视频存储、查寻;节目不多时可使用文件系统,当节目量大时,就必须编制数据库管理系统。用户管理可能包括用户的登记和授权。视频服务器将内容通过点播或直播的方式播放,对于范围广、用户多的情形,可在不同的区域中心建立相应的分发中心。

       2.2  流媒体的网络环境

      流媒体通信网并不是一个新建的专门用于流媒体通信的网络,目前绝大部分的多媒体业务多是在现有的各种网络上运行的,并且按照多媒体通信的要求对现有网络进行改造和重组。目前通信网络大体上可分为三类:一类为电信网络,如公共电话网(pstn)、分组交换网(pspdn)、数字数据网(ddn)、窄带和宽带综合业务数字网(n-isdn和b-isdn)等;一类为计算机网络,如局域网(lan)、城域网(man)、广域网(wan),具体如光纤分布式数据接口(fddi)、分布式队列双总线(dqdb)等;一类为电视广播网络,如有线电视网(catv)、混合光纤同轴网(hf)、卫星电视网等。

      以上介绍的通信网虽然可以传输多媒体信息,但都不同程度上存在着各种缺陷。于是,人们自然将目光转向了一些新的网络存取方式,如宽带综合业务数字网(b-isdn)、异步传输(atm)网和宽带ip网络。事实表明,这些网络是到目前为止是最适合多媒体信息传输的网络。

       2.2.1  atm技术

      在atm技术问世之初,其设计思想是在高质量、高稳定的宽带光纤传输网上利用固定长度的信元进行快速的信息传输与交换,由于提供了灵活的流量监控、拥塞避免与控制、带宽管理、端到端qos保证等机制,世界各国普遍将其作为发展下一代电信网的主体技术,纷纷投资建设以atm网络为标志的国家信息基础设施。1998年ccitt(itu-t的前身)提出将atm作为承载宽带综合业务的核心技术,这促使atm技术在宽带信息网建设中迅速发展,而在sdh上实现atm传输是建设宽带信息网的理想方案,它融合了atm技术和sdh技术的各自优点,具有灵活的接入,能支持宽带和窄带业务间的平衡转移,为每个用户以可保证的服务质量经济地传送各类业务,能便利地对全网进行统一管理,且安全可靠,这就为实时地传送数据、图像和语音综合的多媒体业务提供了可能。

      但atm标准的完善性使设备的成本相对昂贵,其精益求精的设计思路使协议本身变得十分复杂,面对其他新技术,如ip over sdh和ip over wdm的强烈冲击,atm放弃了统一未来通信平台的目标,而定位于成为综合业务的宽带传输平台。

       2.2.2  ip技术

       internet的快速发展显示出了它的巨大优越性,不仅使得ip技术得到了广泛的应用,而且传统的数据通信业务甚至语音、视频在转向使用ip网,这就出现了everything over ip.ip网不是基础网络,它只能架构在各种基础网络之上,即所谓的ip over everything.internet开始是用ddn专线通过路由器连接各地网络构成的。20世纪90年代中期,internet快速发展,但由于路由器交换速度和端口速率限制,骨干网速率最高只有40mbit/s,因此atm成为唯一的解决方案,这时的速率可达到155mbit/s,622mbit/s,一时atm成为internet骨干网上支持多协议、多业务的主流数据通信平台。随着用户对internet骨干网带宽需求的进一步增加,这种optical/sdh/atm/ip系统的缺点开始暴露,内部开销大,效率不到80%,管理困难而且设备昂贵,于是采用吉位线速路由交换机的ip over sdh方案在internet骨干网上替代atm,成为当代主流。

      三、 流媒体的技术特征

       3.1  采用流式传输

      在网络上传输音/视频等多媒体信息目前主要有下载和流式传输两种方案。音/视频文件一般都较大,所以需要的存储容量也较大;同时由于网络带宽的限制,下载常常要花数分钟甚至数小时,所以这种处理方法延迟也很大。流式传输时,声音、影像或动画等时基媒体由音视频服务器向用户计算机的连续、实时传送,用户只需经过几秒或十几秒的启动延时即可进行观看。当声音等时基媒体在客户机上播放时,文件的剩余部分将在后台从服务器内继续下载。流式传输不仅使启动延时大大缩短,而且不需要过多的缓存,从而避免了用户必须等待整个文件全部从internet上下载才能观看的缺点。

      流式传输的定义很广泛,现在主要指通过网络传送媒体(如视频、音频)的技术总称,其特定含义为通过internet 将影视节目传送到pc机。实现流式传输有两种方法:实时流式传输(realtime streaming)和顺序流式传输(progressive streaming)。一般说来,如视频为实时广播,或使用流式传输媒体服务器,或应用如rtsp的实时协议,即为实时流式传输。如使用http服务器,文件即通过顺序流发送。当然,流式文件也支持在播放前完全下载到硬盘。

       3.1.1  顺序流式传输

      顺序流式传输是顺序下载,在下载文件的同时用户可观看再线媒体,在给定时刻,用户只能观看已下载的那部分,而不能跳到还未下载的前头部分,顺序流式传输不象实时流式传输在传输期间根据用户连接的速度做调整。由于标准的http服务器可发送这种形式的文件,也不需要其他特殊协议,它经常被称作http流式传输。顺序流式传输比较适合高质量的短片段,如片头、片尾和广告,由于该文件在播放前观看的部分是无损下载的,这种方法保证电影播放的最终质量。这意味着用户在观看前,必须经历延迟,对较慢的连接尤其如此。

      顺序流式文件是放在标准http 或 ftp服务器上,易于管理,基本上与防火墙无关。顺序流式传输不适合长片段和有随机访问要求的视频,如:讲座、演说与演示。它也不支持现场广播,严格说来,它是一种点播技术。

       3.1.2  实时流式传输

      实时流式传输指保证媒体信号带宽与网络连接配匹,使媒体可被实时观看到。实时流与http流式传输不同,需要专用的流媒体服务器与传输协议。

      实时流式传输总是实时传送,特别适合现场事件,也支持随机访问,用户可快进或后退以观看前面或后面的内容。理论上,实时流一经播放就可不停止,但实际上,可能发生周期暂停。

      实时流式传输必须配匹连接带宽,这意味着在以调制解调器速度连接时图像质量较差,而且,由于出错丢失的信息被忽略掉,网络拥挤或出现问题时,视频质量很差。如欲保证视频质量,顺序流式传输更好。实时流式传输需要特定服务器,如quicktime streaming server、realserver与windows media server.这些服务器允许对媒体发送进行更多级别的控制,因而系统设置、管理比标准http服务器更复杂。实时流式传输还需要特殊网络协议,如:rtsp (realtime streaming protocol)或mms (microsoft media server)。这些协议在有防火墙时有时会出现问题,导致用户不能看到一些地点的实时内容。

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

      流式传输的实现需要合适的传输协议。由于tcp需要较多的开销,故不太适合传输实时数据。在流式传输的实现方案中,一般采用http/tcp来传输控制信息,而用rtp/udp来传输实时声音数据。

       3.2.1  实时传输协议rtp与实时传输控制协议rtcp

      实时传输协议rtp(real-time transport protocol)是用于internet上针对多媒体数据流的一种传输协议。rtp被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。rtp通常使用udp来传送数据,但rtp也可以在tcp或atm等其他协议之上工作。当应用程序开始一个rtp会话时将使用两个端口:一个给rtp,一个给rtcp.rtp本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠rtcp提供这些服务。通常rtp算法并不作为一个独立的网络层来实现,而是作为应用程序代码的一部分。

      实时传输控制协议rtcp(real-time transport control protocol)和rtp一起提供流量控制和拥塞控制服务。在rtp会话期间,各参与者周期性地传送rtcp包。rtcp包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。rtp和rtcp配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。

       3.2.2  实时流协议rtsp

      实时流协议rtsp(real-time streaming protocol)是由realnetworks和netscape共同提出的,该协议定义了一对多应用程序如何有效地通过ip网络传送多媒体数据。rtsp在体系结构上位于rtp和rtcp之上,它使用tcp或rtp完成数据传输。http与rtsp相比,http传送html超链接文档,而rtp传送的是多媒体数据。http请求由客户机发出,服务器作出响应;使用rtsp时,客户机和服务器都可以发出请求,即rtsp可以是双向的。

       3.2.3  资源预订协议rsvp

      由于音频和视频数据流比传统数据对网络的延时更敏感,要在网络中传输高质量的音频、视频信息,除带宽要求之外,还需其他更多的条件。rsvp(resource reserve protocol)是正在开发的internet上的资源预订协议,使用rsvp预留一部分网络资源(即带宽),能在一定程度上为流媒体的传输提供qos.在某些试验性的系统如网络视频会议工具vic中就集成了rsvp.

       3.3  流媒体播放方式

       3.3.1  单播

      在客户端与媒体服务器之间需要建立一个单独的数据通道,从一台服务器送出的每个数据包只能传送给一个客户机,这种传送方式称为单播。每个用户必须分别对媒体服务器发送单独的查询,而媒体服务器必须向每个用户发送所申请的数据包拷贝。这种巨大冗余首先造成服务器沉重的负担,响应需要很长时间,甚至停止播放。

       3.3.2  组播

       ip组播技术构建一种具有组播能力的网络,允许路由器一次将数据包复制到多个通道上。采用组播方式,单台服务器能够对几十万台客户机同时发送连续数据流而无延时。媒体服务器只需要发送一个信息包,而不是多个;所有发出请求的客户端共享同一信息包。信息可以发送到任意地址的客户机,减少网络上传输的信息包的总量。网络利用效率大大提高,成本大为下降。

      四、 流媒体的主要应用

      互联网的迅猛发展和普及为流媒体业务发展提供了强大的市场动力,流媒体业务正变得日益流行。 流媒体技术广泛用于多媒体新闻发布、网络广告、电子商务、视频点播、远程教育、远程医疗、网络电台、 实时视频会议等互联网信息服务的方方面面,它的应用将为网络信息交流带来革命性的变化,对人们的工作和生活将产生深远的影响。下面结合常用的主流视频播放平台介绍几种典型的流媒体应用。

       4.1  h.323会议电视和视频点播

      随着internet网络的普及,使网络上传输的资料不仅仅限于文字和图形。有许多的internat的视频应用需要在internet网络上点播,它们都要求最大范围的让观众观看到高质量的节目,象电视一样达到宣传、广告或满足观众需求的目的。这就要求系统具备高传输速率、数据同步、数据流的分流、高稳定性等特性。实现网络的视、音频传输最好的解决方案就是流式媒体的传输方式。

       realsystem系列产品是在流媒体方面最为成功的系统。它具有跨平台,稳定性高等特点,特别是对直播条件要求不高且非常容易实现在internet网上进行视频直播。采用realserver作为网络视频直播服务器端引擎,媒体内容制作工具realproducer将现场信号传送给realserver进行直播,也可以把其他的音频、视频及动画等多媒体文件转换成real格式用于流式传输。客户端安装了播放软件realplayer后,通过交换机向服务器发出请求,接收并回放从realserver传输过来的媒体节目。

       4.2  校园视频网

      校园网的建设近几年来也逐渐呈现出蓬勃向上的态势,尤其是各级重点学校的网络硬件平台的建设,其水平和质量都非常之高。随着多媒体技术的不断发展,特别是多媒体传输技术的突破,使网络多媒体教学得以实现。现在已经有许多的成熟的产品,如cisco公司的ip/tv,可以用来组建校园视频网,提供实时广播,定时广播,视频点播三种通信模式。

       4.3  远程教育

      知识经济时代的网上教育突破了传统“面授”教学的局限,为学习者提供了时间分散、资源共享、地域广阔、交互式的教学新方式。从技术上讲,远程教育系统是建立在现代传媒技术基础上的多媒体应用系统,它通过现代的通信网络将教师的图象、声音和电子教案传送给学生,也可以根据需要将学生的图象、声音回送给教师,从而模拟出学校教育的授课方式。概括地说,现代远程教育系统需要实现教学课件的点播(vod),教学直播,网络课堂等功能。在ip网上开展远程教学活动,需要解决两个基本问题:音频、视频流信息的传送以及它们与数据之间的同步。由于音频、视频信息的带宽比较宽,不可能让学生将所有的节目下载到本地计算机上后再播放,这样就必须要采用先进的网络技术,如流媒体,来实现边发送边播放。

      五、 发展前景

      流媒体技术和市场前景已广泛受到业界的普遍关注,各大著名的公司,如microsoft、康柏、intel、ibm等, 都在调整自己的战略方向,为使自己在流媒体市场中占取有利地位。另外,从用户的角度来看,根据收视率调查的权威机构尼尔逊发布的数字—单就1999年来看,在网*问流式媒体内容的人数足足增加了65%,显示对丰富媒体的需求必定将推动整体架构的革新。报告指出,2000年11月访问流式内容的访客高达3500万人次,表示超过三分之一的互联网用户曾阅读过流式内容。预料在不久的将来,内容供应商将运用各种高新技术来满足网络用户日益挑剔的要求。而不同媒体之间汇集融合更有助于多方面接触大众,达成传播目标。可见,流式媒体的增长是必然的,它将成为驱动下一波互联网成长的主要力量。

      目前还有很多的公司在开发流媒体的新技术,挖掘流媒体的新应用,例如,有的公司利用流媒体技术制作更具吸引力的商业广告,或者尝试流媒体在电子商务方面的应用等。可以预见,随着流式媒体的趋向成熟,厂商对流媒体技术的不断发展和完善,以及用户对流媒体需求的增加,流媒体技术定会更上层楼,流媒体市场将会越来越广阔,业务内容将更加丰富。