论文部分内容阅读
摘 要流媒体技术是在21世纪成熟的一门新兴的网络实时传输方式,它具有十分广泛的应用领域。流媒体技术包括数据采集、信息编解码、存储、传输、播放等环节,具有一套独立的技术系统。
关键词 流媒体;流式协议;QuickTime;Real Media;Windows Media
中图分类号:TN919.8 文献标识码: B文章编号:1671-489X(2007)07-0061-03
Introduction of the Streaming Media Technology//Lei Gang
Abstract Streaming media technology is the new internet real-time transport model in the 21st century. It has widely been used in many aspects. Streaming media technique includes the gathering of data,encoding or decoding of information,memorizing, transporting and playing. It has a set of technological independent system.
Key words streaming media; streaming protocol; QuickTime; real media; windows media
Author’s address Department of Educational Science and Technique , Sichuan Arts and Sciences University, Dazhou, Sichuan 635000
1 什么是流媒体
在Internet产生的很长一段时间内,网络应用一直局限于下载使用的模式下,这种传统的下载方式必须将多媒体文件通过HTTP协议或FTP协议下载到本地硬盘,然后启动媒体播放器播放, 由于多媒体文件一般都较大,需要的存储容量也较大;同时由于网络带宽的限制,下载常常需要很长时间,所以这种处理方法延时很长。而流媒体不同于传统的多媒体,其主要特点是运用智能流技术, 以视音频流(Video—Audio Stream)的形式进行数字媒体的传送,避免了用户必须等待整个文件全部从Internet上下载完才能观看的缺点,使人们在从很低的带宽到较高的带宽环境下都可以在线欣赏到连续不断的较高品质的视音频节目,如当前流行的MP3音乐点播和PP Live电影点播等。综上所述,流媒体指的是通过网络传输的、能够在本地终端实时回放的、具有实时特征的媒体内容编码数据流。
2 流媒体技术的原理
流媒体技术的原理就是把连续的影像和声音信息经过压缩处理后放到网络服务器上,让浏览者一边下载一边观看、收听,而不需要等到整个多媒体文件下载完成就可以即时观看的技术。流媒体技术并不是单一的技术,它是融合很多网络技术之后所产生的技术,它涉及到流媒体数据的采集、压缩、编码、存储、传输及网络通信等多项技术。
2.1 流媒体使用的协议
流式传输不同与传统的TCP技术,它有专用的协议系统,主要有以下的一些协议:
2.1.1 实时传输协议RTP与RTCP
实时传输协议RTP(Real-time Transport Protocol)和实时传输控制协议RTCP(Real-time Transport Control Protocol)是用于Internet/Intranet针对多媒体数据流的一种传输协议[1]。RTP被定义在一对一或一对多传输的情况下工作,其目的是提供时间信息和实现流同步。RTP通常使用UDP来传送数据,但RTP也可以在TCP或ATM等其他协议上工作。当应用程序开始一个RTP会话时将使用2个端口: 1个给RTP, 1个给RTCP。RTP本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。RTCP和RTP一起提供流量控制和拥塞控制服务。RTP和RTCP配合使用,他们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。
2.1.2 实时流协议RTSP
实时流协议RTSP(Real-time Transport Streaming Protocol)是由Real Networks和Netscape共同提出的,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。RTSP在体系结构上位于RTP和RTCP之上,他使用TCP或RTP完成数据传输。HTTP与RTSP相比,HTTP传送HTML,而RTP传送的是多媒体数据。HTTP请求由客户机发出,服务器做出响应;使用RTSP时,客户机和服务器都可以发出请求,即RTSP可以是双向的。采用 RTSP 等传输协议,更加适合动画、视音频在网上的流式实时交互传输。[2]
2.1.3资源预订协议RSVP
RSVP(Resource Reserve Protocol )是 Internet上的资源预订协议,它可以预留一部分网络资源(带宽),能在一定程度上为流媒体的传输提供QoS(服务质量)。[3]
2.2 流媒体的传输流程
在流式传输的实现方案中,一般采用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播放器就可播放。需要说明的是,在流式传输中,使用RTP/UDP和RTSP/TCP两种不同的通信协议与A/V服务器建立联系,是为了把服务器的输出重定向到一个不同于运行A/V Helper程序所在客户机的目的地址。实现流式传输一般都需要专用服务器和播放器,其基本原理如图所示。[4]
2.3 流式传输的方式
流式传输有两种方法:顺序流式传输和实时流式传输。[5]
2.3.1 顺序流式传输
顺序流式传输是顺序下载,用户可以观看在线媒体。但是在给定时刻,用户只能观看已下载的那部分,而不能跳到未下载的前序部分,不能根据用户的连接速度做调整。由于标准的HTTP服务器可发送这种形式的文件,而不需要其他特殊协议,所以经常被称作HTTP流式传输,比如时下流行的网上MP3歌曲点播就是顺序流式传输方式。
2.3.2 实时流式传输
实时流与HTTP流式传输不同,需要专用的流媒体服务器与传输协议。实时流式传输是实时传送,特别适合现场事件,也支持随机访问,用户可快进或后退以观看前面或后面的内容,比如PP Live上的电影就是实时流传输方式。
从视频质量上讲,实时流式传输必须匹配连接带宽,由于出错丢失的信息被忽略掉,网络拥挤或出现问题时,视频质量会很差,如欲保证视频质量,顺序流式传输更好。
3 流媒体的主要技术方式
目前主流的流媒体技术有3种,分别是Real Networks公司的Real System、Microsoft公司的Windows Media Technology和Apple公司的Quick Time。[6]这3家的技术都有自己的专利算法、专利文件格式甚至专利传输控制协议。
3.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服务器。
3.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.3 Microsoft公司的Windows Media
Windows Media是3家之中最后进入这个市场的,但利用其操作系统的便利很快便取得了较大的市场份额。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的费用最少。QuickTime在性能价格比上具有优势,而Real Media则在用户数量上有优势。Microsoft借助平台的便利挥舞着集成的利剑在迅速地拓展自己的势力范围。虽然在现阶段Windows Media的功能并不是最好,用户也不是最多,但随着Microsoft在Windows Media上面的大力投入终有一天WindowsMedia会成为最好的流媒体技术。
参考文献:
[1]胡晓峰,吴玲达等.多媒体技术教程[M].北京:人民邮电出版社,2002:306
[2]韩红梅.流媒体技术[J].教育艺术,2006(1):50
[3]张尧学,赵艳标等.计算机网络与Internet教程[M].北京:清华大学出版社,2001:314
[4]李建延.流媒体技术综述[J].现代电子技术,2005(3):91
[5]张莉.教学课件中应用流媒体技术[J].科技信息,2007(1):7
[6]王萍,赵明等.流式媒体中的关键技术[J].安徽大学学报,2006(1):31
关键词 流媒体;流式协议;QuickTime;Real Media;Windows Media
中图分类号:TN919.8 文献标识码: B文章编号:1671-489X(2007)07-0061-03
Introduction of the Streaming Media Technology//Lei Gang
Abstract Streaming media technology is the new internet real-time transport model in the 21st century. It has widely been used in many aspects. Streaming media technique includes the gathering of data,encoding or decoding of information,memorizing, transporting and playing. It has a set of technological independent system.
Key words streaming media; streaming protocol; QuickTime; real media; windows media
Author’s address Department of Educational Science and Technique , Sichuan Arts and Sciences University, Dazhou, Sichuan 635000
1 什么是流媒体
在Internet产生的很长一段时间内,网络应用一直局限于下载使用的模式下,这种传统的下载方式必须将多媒体文件通过HTTP协议或FTP协议下载到本地硬盘,然后启动媒体播放器播放, 由于多媒体文件一般都较大,需要的存储容量也较大;同时由于网络带宽的限制,下载常常需要很长时间,所以这种处理方法延时很长。而流媒体不同于传统的多媒体,其主要特点是运用智能流技术, 以视音频流(Video—Audio Stream)的形式进行数字媒体的传送,避免了用户必须等待整个文件全部从Internet上下载完才能观看的缺点,使人们在从很低的带宽到较高的带宽环境下都可以在线欣赏到连续不断的较高品质的视音频节目,如当前流行的MP3音乐点播和PP Live电影点播等。综上所述,流媒体指的是通过网络传输的、能够在本地终端实时回放的、具有实时特征的媒体内容编码数据流。
2 流媒体技术的原理
流媒体技术的原理就是把连续的影像和声音信息经过压缩处理后放到网络服务器上,让浏览者一边下载一边观看、收听,而不需要等到整个多媒体文件下载完成就可以即时观看的技术。流媒体技术并不是单一的技术,它是融合很多网络技术之后所产生的技术,它涉及到流媒体数据的采集、压缩、编码、存储、传输及网络通信等多项技术。
2.1 流媒体使用的协议
流式传输不同与传统的TCP技术,它有专用的协议系统,主要有以下的一些协议:
2.1.1 实时传输协议RTP与RTCP
实时传输协议RTP(Real-time Transport Protocol)和实时传输控制协议RTCP(Real-time Transport Control Protocol)是用于Internet/Intranet针对多媒体数据流的一种传输协议[1]。RTP被定义在一对一或一对多传输的情况下工作,其目的是提供时间信息和实现流同步。RTP通常使用UDP来传送数据,但RTP也可以在TCP或ATM等其他协议上工作。当应用程序开始一个RTP会话时将使用2个端口: 1个给RTP, 1个给RTCP。RTP本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。RTCP和RTP一起提供流量控制和拥塞控制服务。RTP和RTCP配合使用,他们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。
2.1.2 实时流协议RTSP
实时流协议RTSP(Real-time Transport Streaming Protocol)是由Real Networks和Netscape共同提出的,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。RTSP在体系结构上位于RTP和RTCP之上,他使用TCP或RTP完成数据传输。HTTP与RTSP相比,HTTP传送HTML,而RTP传送的是多媒体数据。HTTP请求由客户机发出,服务器做出响应;使用RTSP时,客户机和服务器都可以发出请求,即RTSP可以是双向的。采用 RTSP 等传输协议,更加适合动画、视音频在网上的流式实时交互传输。[2]
2.1.3资源预订协议RSVP
RSVP(Resource Reserve Protocol )是 Internet上的资源预订协议,它可以预留一部分网络资源(带宽),能在一定程度上为流媒体的传输提供QoS(服务质量)。[3]
2.2 流媒体的传输流程
在流式传输的实现方案中,一般采用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播放器就可播放。需要说明的是,在流式传输中,使用RTP/UDP和RTSP/TCP两种不同的通信协议与A/V服务器建立联系,是为了把服务器的输出重定向到一个不同于运行A/V Helper程序所在客户机的目的地址。实现流式传输一般都需要专用服务器和播放器,其基本原理如图所示。[4]
2.3 流式传输的方式
流式传输有两种方法:顺序流式传输和实时流式传输。[5]
2.3.1 顺序流式传输
顺序流式传输是顺序下载,用户可以观看在线媒体。但是在给定时刻,用户只能观看已下载的那部分,而不能跳到未下载的前序部分,不能根据用户的连接速度做调整。由于标准的HTTP服务器可发送这种形式的文件,而不需要其他特殊协议,所以经常被称作HTTP流式传输,比如时下流行的网上MP3歌曲点播就是顺序流式传输方式。
2.3.2 实时流式传输
实时流与HTTP流式传输不同,需要专用的流媒体服务器与传输协议。实时流式传输是实时传送,特别适合现场事件,也支持随机访问,用户可快进或后退以观看前面或后面的内容,比如PP Live上的电影就是实时流传输方式。
从视频质量上讲,实时流式传输必须匹配连接带宽,由于出错丢失的信息被忽略掉,网络拥挤或出现问题时,视频质量会很差,如欲保证视频质量,顺序流式传输更好。
3 流媒体的主要技术方式
目前主流的流媒体技术有3种,分别是Real Networks公司的Real System、Microsoft公司的Windows Media Technology和Apple公司的Quick Time。[6]这3家的技术都有自己的专利算法、专利文件格式甚至专利传输控制协议。
3.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服务器。
3.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.3 Microsoft公司的Windows Media
Windows Media是3家之中最后进入这个市场的,但利用其操作系统的便利很快便取得了较大的市场份额。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的费用最少。QuickTime在性能价格比上具有优势,而Real Media则在用户数量上有优势。Microsoft借助平台的便利挥舞着集成的利剑在迅速地拓展自己的势力范围。虽然在现阶段Windows Media的功能并不是最好,用户也不是最多,但随着Microsoft在Windows Media上面的大力投入终有一天WindowsMedia会成为最好的流媒体技术。
参考文献:
[1]胡晓峰,吴玲达等.多媒体技术教程[M].北京:人民邮电出版社,2002:306
[2]韩红梅.流媒体技术[J].教育艺术,2006(1):50
[3]张尧学,赵艳标等.计算机网络与Internet教程[M].北京:清华大学出版社,2001:314
[4]李建延.流媒体技术综述[J].现代电子技术,2005(3):91
[5]张莉.教学课件中应用流媒体技术[J].科技信息,2007(1):7
[6]王萍,赵明等.流式媒体中的关键技术[J].安徽大学学报,2006(1):31