认识一下流媒体这个概念

随着现代技术的发展,网络带给人们形式多样的信息,从第一张图片出现在网络上到如今各种形式的网络视频和三维动画,网络让人们的视听觉得到了很大的满足。然而在流媒体技术出现之前,人们必须要先下载这些多媒体内容到本地计算机,在漫长的等待之后(因为受限于带宽,下载通常要花上较长的时间),才可以看到或听到媒体传达的信息。令人欣慰的是,在流媒体技术出现之后,人们便无需再等待媒体完全下载完成了。

传统下载方式的时延很大,因为音视频文件一般都较大,需要的存储容量也较大,同时受到网络带宽的限制,下载一个文件很耗时,根据文件的大小,可能往往需要几分钟甚至几小时。这种方式不但浪费下载时间、硬盘空间,重要的是使用起来非常不方便。

流媒体技术出现后,人们能够“即点即看”了,多媒体文件一边被下载一边被播放,不仅使启动延时大大缩短,而且不需要太大的缓存容量,极大地减少了用户在线等待的时间,而且也提升了互动性。

流媒体在传输中的问题

技术方面解决的问题

在网上进行流媒体传输,所传输的文件必须制作成适合流媒体传输的流媒体格式文件。用通常格式存储的多媒体文件容量十分大,若要在现有的窄带网络上传输则需要花费十分长的时间,若遇网络繁忙,还将造成传输中断。另外,通常格式的流媒体也不能按流媒体传输协议进行传输。因此,对需要进行流媒体格式传输的文件应进行预处理,将文件压缩生成流媒体格式文件。

这里应注意两点:一是选用适当的压缩算法进行压缩,这样生成的文件容量较小。二是需要向文件中添加流式信息。

传输方面需解决的问题

流媒体的传输需要合适的传输协议,在internet上的文件传输大部分都是建立在TCP协议的基础上,也有一些是以ftp传输协议的方式进行传输,但采用这些传输协议都不能实现实时方式的传输。随着流媒体技术的深入研究,比较成熟的流媒体传输一般都是采用建立在UDP协议上的rtp/rtsp实时传输协议。

为何要在UDP协议而不在TCP协议上进行实时数据的传输呢?
这是因为UDP和TCP协议在实现数据传输时的可靠性有很大的区别:

  1. TCP协议中包含了专门的数据传送校验机制,当数据接受方收到数据后,将自动向发送方发出确认信息,发送方在接收到确认信息后才继续传送数据,否则将一直处于等待状态。
  2. 而UDP协议则不同,UDP协议本身并不能做任何校验。由此可以看出,TCP协议注重传输质量,而UDP协议则注重传输速度。因此,对于对传输质量要求不是很高,而对传输速度则有很高的要求的视音频流媒体文件来说,采用UDP协议则更合适。

传输过程中需要的支持

因为internet是以包为单位进行异步传输的,因此多媒体数据在传输中要被分解成许多包,由于网络传输的不稳定性,各个包选择的路由不同,所以到达客户端的时间次序可能发生改变,甚至产生丢包的现象。为此,必须采用缓存技术来纠正由于数据到达次序发生改变而产生的混乱状况,利用缓存对到达的数据包进行正确排序,从而使视音频数据能连续正确地播放。
缓存中存储的是某一段时间内的数据,数据在缓存中存放的时间是暂时的,缓存中的数据也是动态的,不断更新的。流媒体在播放时不断读取缓存中的数据进行播放,播放完后该数据便被立即清除,新的数据将存入到缓存中。因此,在播放流媒体文件时并不需占用太大的缓存空间。

播放方面需解决的问题

流媒体播放需要浏览器的支持。通常情况下,浏览器是采用MIME来识别各种不同的简单文件格式,所有的Web浏览器都是基于HTTP协议,而HTTP协议都内建有MIME。所以Web浏览器能够通过HTTP协议中内建的MIME来标记Web上众多的多媒体文件格式,包括各种流媒体格式。

流媒体传输的过程

  1. 用户选择某一流媒体服务(比如:在线看电影)后,Web浏览器与Web服务器之间使用HTTP/TCP交换控制信息,以便把需要传输的实时数据从原始信息中检索出来;
  2. 然后客户机上的Web浏览器启动A/V Helper程序,使用HTTP从Web服务器检索相关参数对Helper程序初始化。这些参数可能包括目录信息、A/V数据的编码类型或与A/V检索相关的服务器地址。
  3. A/V Helper程序及A/V服务器运行实时流控制协议(RTSP),以交换A/V传输所需的控制信息。与CD播放机或VCRs所提供的功能相似,RTSP提供了操纵播放、快进、快倒、暂停及录制等命令的方法。A/V服务器使用RTP/UDP协议将A/V数据传输给A/V客户程序(一般可认为客户程序等同于Helper程序),一旦A/V数据抵达客户端,A/V客户程序即可播放输出。

需要说明的是,在流媒体传输中。使用RTP/UDP和RTSP/TCP两种不同的通信协议与A/V服务器建立联系,是为了能够把服务器的输出重定向到一个不同于运行A/V Helper程序所在客户机的目的地址。实现流媒体传输一般都需要专用服务器和播放器。

流媒体分类

流式传输技术又分两种,一种是顺序流式传输,另一种是实时流式传输。

顺序流式传输是顺序下载,在下载文件的同时用户可以观看,但是,用户的观看与服务器上的传输并不是同步进行的,用户是在一段延时后才能看到服务器上传出来的信息,或者说用户看到的总是服务器在若干时间以前传出来的信息。在这过程中,用户只能观看已下载的那部分,而不能要求跳到还未下载的部分。顺序流式传输比较适合高质量的短片段,因为它可以较好地保证节目播放的最终质量。它适合于在网站上发布的供用户点播的音视频节目。

在实时流式传输中,音视频信息可被实时观看到。在观看过程中用户可快进或后退以观看前面或后面的内容,但是在这种传输方式中,如果网络传输状况不理想,则收到的信号效果比较差。

流媒体技术的音视频文件

在运用流媒体技术时,音视频文件要采用相应的格式,不同格式的文件需要用不同的播放器软件来播放,所谓“一把钥匙开一把锁”。采用流媒体技术的音视频文件主要有三大“流派”。

微软的ASF

ASF(Advanced Stream Format)这类文件的后缀是.asf和.wmv,与它对应的播放器是微软公司的 “Media Player”。用户可以将图形、声音和动画数据组合成一个ASF格式的文件,也可以将其他格式的视频和音频转换为ASF格式,而且用户还可以通过声卡和视频捕获卡将诸如麦克风、录像机等外设的数据保存为ASF格式。

RealMedia

RealMedia是RealNetworks公司的,它包括RealAudio、RealVideo和RealFlash三类文件,其中RealAudio用来传输接近CD音质的音频数据,RealVideo用来传输不间断的视频数据,RealFlash则是RealNetworks公司与Macromedia公司联合推出的一种高压缩比的动画格式,这类文件的后缀是.rm,文件对应的播放器是“RealPlayer”。

QuickTime

QuickTime是苹果公司的,这类文件扩展名通常是 .mov,它所对应的播放器是“QuickTime。”

此外,MPEG、AVI、DVI、SWF等都是适用于流媒体技术的文件格式。

结束语

流媒体技术 包含了从服务器构架到网络协议等一系列技术,目前这些技术还在不断发展和完善中,同时各运营商也正在探索合适的商业模式。尽管如此,流媒体技术转变了传统 互联网限于文本和图片的二维呆板的内容表现形式,是宽带应用的发展方向。同时流媒体能够广泛应用于VOD、远程教学、网络广告、交互视频游戏等,大大拓宽 服务范围,因此各电信运营商都看好流媒体业务,并希望能够以此带动宽带产业进入高速发展的时期。可以预见,流媒体业务将成为宽带网络上的主流信息业务。

本文总结自
http://www.cnblogs.com/robertfang/articles/1222598.html

测试功能而已,你非要赏点我就没办法了...