flash弱交互和强交互中的好与坏
由于最近在做强交互的在线直播,所以不得不对flash这玩意产生各种新的实用性认识,这主要还是由于先流行直播和点播中对flash的滥用造成的。
首先我不敢说我是完整经历了flash 1.0但现在的人,但至少当年的<阿贵>我还是印象深刻的。
在以前,浏览器就像不怎么支持tiff 一样是完全不支持flash的。要想用flash那就需要装插件,ie和firefox都是如此。
如今的浏览器为了迎合大众,都默认捆绑了flash插件。
由于activex控件存在开发麻烦,跨平台等问题,所以flash也间接成为了一个网页上的音视频播放器。
正因为方式软件工业在操作系统,多媒体接口,音视频编解码等方面还没有现在这样的一致性相对较好和可靠,所以大家都转为用相对简单的东西去设计系统。
首先从播放器角度去看,flash就不是一个很好的播放器,性能低下过度依赖浏览器特性,以及自身的不开放加之兼容范围较小,很难做到高保真和高响应。
以现在主流的一些直播网站为例,他们采用的均是单向音视频直播,弱交互,rtmp+h.264+aac。仅仅从h.264上来说要做到高质量,势必要提高码率,按照2m-5m码率去测试,我一个i5 460m的u上仅仅解码就至少要吃点40%的性能,而且还不能开显卡加速,要不然花屏,绿屏的问题就来了。
然后再说说aac,这个音频编码本来就不是为低延时设计的,也没有对延时做过太多要求,虽然有低延时版的aac。
显然单向的直播模型是可以用flash这套东西的,因为他成熟且方便用户使用。
但由于有这样的一些网站在用这套体系,无形中绑架了那些要做强交互的在线直播。
通过我对少量在用flash做强交互,和我们自身用flash做强交互的同行们沟通情况来看,大家用flash主要原因是较低用户的学习成本,或简化客户端复杂度,或有web端。
确实在各种流氓转正的今天,要想在用户电脑上正常的安装一个相对规矩的软件还是蛮难的。另外,在业务的开发周期,开发难度上和灵活性上,web确实要比native app好很多。
所以现在大家就陷入了一场困境,大势所趋下,技术实力或市场地位不是很强的公司显然只能顺应大流。
事实上,无论选用flash还是native app做强交互的直播,都是没问题的。但问题就在flash并非一个专业的音视频播放采集器,配套的系统也不见得能很好的处理网络一些问题所造成的体验不佳的情况。
所以在强交互的直播上,我个人及其反对使用flash用在任何和音视频的有关的地方。相信音视频方面用过flash或相应开发的人,应该会深有体会,这坑有多大……