词条 | 流媒体技术 |
释义 | 流媒体技术 流媒体技术该技术先在使用者端的计算机上创建一个缓冲区,在播放前预先下一段数据作为缓冲,在网路实际连线速度小于播放所耗的速度时,播放程序就会取用一小段缓冲区内的数据,这样可以避免播放的中断,也使得播放品质得以保证。 § 协议 流式传输不同于传统的TCP技术,它有专用的协议系统,主要有以下一些协议: 1.实时传输协议RTP与RTCP 实时传输协议RTP(Real—time Transport Protocol)和实时传输控制协议RTCP(Real—time Transport Control Protocol)是用于Internet/Intranet针对多媒体数据流的一种传输协议。RTP被定义在一对一或一对多传输的情况下工作,其目的是提供时间信息和实现流同步。RTP通常使用 UDP来传送数据,但RTP也可以在TCP或ATM等其他协议上工作。当应用程序开始一个RTP会活时将使用2个端口:1个给RTP,1个给RTCP。RTP本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。RTCP和RTP一起提供流量控制和拥塞控制服务。RTP和RTCP配合使用,能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。 2.实时流协议RTSP 实时流协议RISP(Real—time Transport Streaming Protoco1)是由Real Networks和Netscape共同提出的,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。RTSP在体系结构上位于RTP和RTCP之上,他使用TCP或RTP完成数据传输。HTTP与RTSP相比,HTTP传送HTML,而RTP传送的是多媒体数据。HTTP请求由客户机发出,服务器做出响应;使用RTSP时,客户机和服务器都可以发出请求,即RTSP可以是双向的。采用RTSP等传输协议,更加适合动画、视音频在网上的流式实时交互传输。 3.资源预订协议RSVP RSVP(Resource Reserve Protocol)是Internet上的资源预订协议,它可以预留一部分网络资源(带宽),能在一定程度上为流媒体的传输提供QoS(服务质量)。 § 传输流程 在流式传输的实现方案中,一般采用HTTP/TCP来传输控制信息,而用RTP/UDP来传输实时声音数据。具体的传输流程如下: (1)Web浏览器与Web服务器之问使用HTTP/TCP 交换控制信息,以便把需要传输的实时数据从原始信息中检索出来。 (2)用HTTP从Web服务器检索相关数据,由A/V播放器进行初始化。 (3)从Web服务器检索出来的相关服务器的地址定位A/V服务器。 (4)A/V播放器与A/V服务器之问交换A/V传输所需要的实时控制协议。 (5)一旦A/V数据抵达客户端,A/V播放器就可播放。 § 主要技术方式 目前主流的流媒体技术有三种,分别是Real Networks公司的Real System、Microsoft公司的Windows Media Technology和Apple公司的Quick Time。 这三家的技术都有自己的专利算法、专利文件格式甚至专利传输控制协议。 1.Apple公司的QuickTime QuickTime是一个非常老牌的媒体技术集成,是数字媒体领域事实上的工业标准。之所以说集成这个词是因为QuickTime实际上是一个开放式的架构,包含了各种各样的流式或者非流式的媒体技术。QuickTime是最早的视频工业标准,1999年发布的QuickTime4.0版本开始支持真正的流式播放。由于QuickTime本身也存在着平台的便利(Mac OS),因此也拥有不少的用户。QuickTime在视频压缩上采用的是Sorenson Video技术,音频部分则采用 QDesign Music技术。QuickTime最大的特点是其本身所具有的包容性,使得它是一个完整的多媒体平台,因此基于QuickTime可以使用多种媒体技术来共同制作媒体内容。同时,它在交互性方面是三者之中最好的。例如,在一个QuickTime文件中可同时包含midi、动画gif、flash和smil等格式的文件,配合QuickTime的Wired Sprites互动格式,可设计出各种互动界面和动画。QuickTime流媒体技术实现基础是需要3个软件的支持,QuickTime播放器、 QuickTime编辑制作、QuickTime Streaming服务器。 2.Real Networks公司的Real Media Real Media发展的时间比较长,因此具有很多先进的设计,例如,Scalable Video Technology可伸缩视频技术可以根据用户电脑速度和连接质量而自动调整媒体的播放质素。Two—pass Encoding两次编码技术可通过对媒体内容进行预扫描,再根据扫描的结果来编码从而提高编码质量。特别是Sure Stream 自适应流技术,可通过一个编码流提供自动适合不同带宽用户的流播放。Real Media音频部分采用的是Real Audio,该编码在低带宽环境下的传输性能非常突出。Real Media通过基于smil并结合自己的Real Pix和Real Text技术来达到一定的交互能力和媒体控制能力。Real流媒体技术需要3个软件的支持,Real Player播放器、Real Producer编辑制作、Real Server服务器。 3.Microsoft公司的Windows Media Windows Media是三家之中最后进入这个市场的,但凭借其操作系统的便利很快便取得了较大的市场份额。Windows Media Video采用的是mpeg-4视频压缩技术,音频方面采用的是Windows Media Audio技术。Windows Media的关键核心是MMS协议和ASF数据格式,MMS用于网络传输控制,ASF则用于媒体内容和编码方案的打包。目前Windows Media在交互能力方面是三者之中最弱的,自己的ASF格式交互能力不强,除了通过IE支持smil之外就没有什么其他的交互能力了。Windows Media 流媒体技术的实现需要3个软件的支持,Windows Media 播放器、Windows Media工具和Windows Media服务器。总的来说,如果使用Windows服务器平台,Windows Media的费用最少。虽然在现阶段其功能并不是最好,用户也不是最多。 § 问题 流媒体技术不是一种单一的技术,它是网络技术及视/音频技术的有机结合。在网络上实现流媒体技术,需要解决流媒体的制作、发布、传输及播放等方面的问题,而这些问题则需要利用视音频技术及网络技术来解决,具体如下: (1)流媒体制作技术方面解决的问题 在网上进行流媒体传输,所传输的文件必须制作成适合流媒体传输的流媒体格式文件。因这通常格式存储的多媒体文件容量十分大,若要在现有的窄带网络上传输则需要花费十分长的时间,若遇网络繁忙,还将造成传输中断。另外,通常格式的流媒体也不能按流媒体传输协议进行传输。因此,对需要进行流媒体格式传输的文件应进行预处理,将文件压缩生成流媒体格式文件。这里应注意两点:一是选用适当的压缩算法进行压缩,这样生成的文件容量较小。二是需要向文件中添加流式信息。 (2)流媒体传输方面需解决的问题 流媒体的传输需要合适的传输协议,目前在internet上的文件传输大部分都是建立在tcp协议的基础上,也有一些是以ftp传输协议的方式进行传输,但采用这些传输协议都不能实现实时方式的传输。随着流媒体技术的深入研究,目前比较成熟的流媒体传输一般都是采用建立在udp协议上的rtp/rtsp实时传输协议。 为何要在udp协议而不在tcp协议上进行实时数据的传输呢?这是因为udp和tcp协议在实现数据传输时的可靠性有很大的区别。tcp协议中包含了专门的数据传送校验机制,当数据接受方收到数据后,将自动向发送方发出确认信息,发送方在接收到确认信息后才继续传送数据,否则将一直处于等待状态。而udp协议则不同,udp协议本身并不能做任何校验。由此可以看出,tcp协议注重传输质量,而udp协议则注重传输速度.因此,对于对传输质量要求不是很高,而对传输速度则有很高的要求的视音频流媒体文件来说,采用udp协议则更合适. (3)流媒体的传输过程中需要缓存的支持 因为interent是以包为单位进行异步传输的,因此多媒体数据在传输中要被分解成许多包,由于网络传输的不稳定性,各个包选择的路由不同,所以到达客户端的时间次序可能发生改变,甚至产生丢包的现象.为此,必须采用缓存技术来纠正由于数据到达次序了生改变而产生的混乱状况,利用缓存对到达的数据包进行正确排序,从而使视音频数据能连续正确地播放.缓存 中存储的是某一段时间内的数据,数据在缓存中存放的时间是暂时的,缓存中的数据也是动态的,不断更新的.流媒体在播放时不断读取缓存中的数据进行播放,播放完后该数据便被立即清除,新的数据将存入到缓存中.因此,在播放流媒体文件时并不需占用太大的缓存空间. (4)流媒体播放方面需解决的问题 流媒体播放需要浏览器的支持.通常情况下,浏览器是采用mime来识别各种不同的简单文件格式,所有的web浏览器都是基于http协议,而http协议都内建有mime.所以wed浏览器能够通过http协议中内建的mime来标记web上众多的多媒体文件格式,包括各种流媒体格式. § 参考资料 胡晓峰,吴玲达等.多媒体技术教程[M].北京:人民邮电出版社,2002:306. |
随便看 |
百科全书收录594082条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。