rtmp和http方式在播放flv方面的各自优势和劣势

下面是查的一点资料,比较一下用fms的rtmp和web的http播放flv的差别:

1、 区别

用HTTP方式:先通过IIS 将FLV下载到本地缓存,然后再通过NetConnection的本地连接来播放这个FLV,这种方法是播放本地的视频,并不是播放服务器的视频。因此在本地缓存里可以找到这个FLV。其优点就是服务器下载完这个FLV,服务器就没有消耗了,节省服务器消耗。其缺点就是FLV会缓存在客户端,对FLV的保密性不好。

        用RTMP方式:通过NetConnection连接到FMS/Red5服务器,并实时播放服务器的FLV文件,这种方式可以任意选择视频播放点(SEEK()),并不象HTTP方式需要缓存完整个FLV文件到本地才可以任意选择播放点,其优点就是在本地缓存里是找不到这个FLV文件的。不会缓存在客户端,保密性好,其缺点就是消耗服务器资源,连接始终是实时的。

       一句话,一个是本地播放,一个是服务器实时播放,因需而定。HTTP现在应用的比较多,因为这个完全不需要RED5或者FMS的服务器端的支持,普通的WEB服务器都可以实现(虚拟主机),后面一个就必须有服务器了,不过保密性会强一些。之所以大多数站点都用HTTP模式,一个是因为对服务器来说压力小一些,另外一种对FLASH来讲,播放器的参数更容易设置一些,因为只要修改xxx.swf?file=xxx就可以了.

2、用fms的rtmp协议播放flv文件可支持的连接数有限,fms的收费很高,如果不经注册只能同时容纳最多5个人同时视频,也会遇到经常卡的情况。用http方式播放,可以依托成熟的web应用,播放时会自动缓存在IE临时目录,缓存好二次播放就流畅了,但是就有了flv会被盗用的问题。

3、rtmp将视频,音频数据分开,比如可能是avvvavvvavvvvvavvva,一帧视频数据很大时,传输时被分为多块,中间夹杂着音频数据。而http传输音频,视频数据,可能就为avvvvvvvvvvvvvvvvavvvvvvvvv。

4、国内大部分的视频分享网站都是http方式播放,一些防盗链的做法是在自己的视频上加logo,不用安装fms服务,这也就没有了连接数的限制。使用rtmp方式,无论哪个版本的flv文件都能在服务端取到视频文件的长度,而有的缺少文件头信息的flv文件用http就方式就取不到了。

原文地址:https://www.cnblogs.com/lijianda/p/8338130.html