答案直指Flash player。没错,就是那个无所不在的Flash player,那个看视频、听音乐、玩页游都离不开的Flash player。
“Flash已不再适合互联网发展的需要”、“HTML5将取代Flash一统网络富媒体领域。”“让Flash去死吧!”诸如此类的言论伴随着HTML5的出现在互联网上蔓延开来。Flash player究竟犯了什么错,以致遭到此般口诛笔伐?
是功能上的缺陷,还是性能方面的落后?让我们先来看看下面一组数据:视频支持、音频支持、画布标签(2D绘图和动画),是HTML5为引人注目的三个新功能。而Flash player对这三个功能的实现年份分别为1996年、1999年、2003年,版本号分别为1、4、7。其他诸如3D加速、硬件解码等功能,在Flash player进入第十个版本后亦得以实现。就功能方面而言,Flash player非但没有落后于时代,相反它还扮演了先行者的角色。在支持GPU加速后,新版本Flash player的2D、3D图像渲染引擎更是展现出良好的性能。
此外,较高的资源占用率在过去一直让Flash的用户困扰不已。但随着10.1版本的Flash player的推出,这一现象得到了明显的改善。在此个版本中,Adobe彻底重写了 Flash player代码,同时加入硬件解码和2D/3D加速功能。10.1对处理器造成的负荷,比原来Flash player10都要小很多。
我们可以看到,Flash player在功能和性能方面都有着良好的表现,同时亦在资源占用方面得到了明显的改善,Flash player看上去无疑是一款很不错的产品。既然如此,为何会有那么多的反对意见集中指向Flash player?为何众多Web大佬要不遗余力地推动HTML5标准面世?如果我们继续纠结于技术方面的问题,答案只会离我们越来越远。
“言人人殊”的动机
我们先来看看是哪些公司正在不遗余力推动HTML5标准面世:它们是谷歌、苹果、谋智以及OPERA。这四家公司有一个很明显的共通点——他们都是Web浏览器提供商。Flash player以插件的形式依托浏览器存在,Flash player经过不断地进化后实现了诸如视频播放、音频播放、动画显示等浏览器本身无法实现的功能,而市场对这些功能又拥有很大的需求量。
“没有Flash就不能看视频,没有Flash就不能听音乐;没装Flash player的浏览器跟一个残废没有任何区别。”互联网用户逐渐达成了这样的共识。Flash player在网络富媒体应用领域的市场份额像雪球一样越滚越大,最高峰时超过了95%。如今,你很难看到一台没有安装Flash player的电脑,也很难找到一个不装Flash player就能正常使用的音乐网站、视频网站乃至新闻网站。
一个基于浏览器而生的产品实现了浏览器无法实现的富媒体功能,实现了浏览器厂商们望而兴叹的市场占有率,成为了一种“源于浏览器,高于浏览器”的存在。浏览器厂商此时此刻的内心感受,笔者表示非常理解。所以,我们就听到了这样的声音:
“Flash player是一个封闭的系统,是由Adobe独家控制。让一个主要开发平台控制在单一供应商手中是很可怕的。如果他们停止开发或开始收费,那整个Web界都要面临极大的危机。而HTML5的目标是将Web从那些非开放性富插件中解放出来。创造一个开放的Web。”
“Adobe Flash技术是100%拥有专利的,这些专利为Adobe独享,而Adobe也对其未来发展、价格等拥有绝对控制权。尽管Adobe Flash技术广泛流行,这并不意味着它是开放的,因为它完全被Adobe控制,也只为Adobe而存在。无论从哪个方面来看,Flash技术都是一个封闭的系统。”
上面两段话分别出自HTML5细则的合作设计者Ian Hickson以及著名的反Flash“艺术家”斯蒂夫.乔布斯。前者来自谷歌。而后者,则是苹果公司的CEO。
很明显,Flash player在网络富媒体领域呈现出的统治性优势,让浏览器厂商们难以安坐。在HTML5的开发团队中,来自谷歌、谋智、苹果和OPERA的员工占据了绝大多数。其实对于谷歌、苹果和谋智而言,“由Adobe独家控制”这一点才是Flash player最大的缺点。这意味着Adobe在Web领域将拥有极大的话语权,这是让人难以忍受的。为了打破这种局面,浏览器厂商们需要寻找一个Flash player的替代品,这个替代品不能独属于任何一个公司,同时又要服务于各家浏览器厂商。在这样的背景下,HTML5走进了人们的视野。
HTML5对Flash发起的这一场革命,绝对不是一场以实现技术升级、提升用户体验为目的的革命,而是一次由浏览器厂商发起,以打破现有产业格局、实现重新洗牌为目的的革命。简而言之,这是一场属于厂商而非用户的革命。
变化莫测的走向
然而,在技术尚未过时之际Flash就会束手就擒吗?
性能、功能等技术方面的问题暂且不提,规范难以得到真正统一无疑是HTML5最大的硬伤。Adobe的首席执行官Shantanu Naranyen表示:“我认为HTLM5所面临的一个挑战依旧是如何在不同的浏览器上一致地显示HTML5。HTML5在成为支持众多浏览器的互联网标准之前,人们必须再等待至少10年。”
HTML5的制作团队内云集了包括谷歌、苹果、微软、谋智在内的各家利益关系者,各家都试图让HTML5的标准制定朝着最有利于自身的方向发展。
以HTML5视频的编码标准为例,各家就产生了巨大的分歧:谋智和欧普拉支持Theora,苹果和微软支持H.264,而谷歌则力推VP8。如果各方不能尽快达成共识,那么HTML5标准统一将会是一个漫长的过程。而这个漫长的过程,将为Flash player的进化和完善提供充足的时间和空间。到了那个时候,想要战胜Flash player将会变得更加困难。
成熟的开发环境、极高的市场占有率无疑使Flash player具备了得天独厚的优势。但在移动平台上的表现欠佳,却是Adobe无法回避的问题。在谈到IOS弃用Flash的缘由时,乔布斯表示Flash适用于PC时代,为PC与鼠标而存在。
但移动设备关乎低功耗,触摸界面及开发网络标准,这些是Flash的短板。功耗问题,让Flash player移动版饱受诟病,移动设备使用Flash player播放视频比使用HTML5要高出接近一倍的功耗。同时,Flash player移动版也经常出现不兼容和崩溃、假死等现象。这些都为Flash player在移动设备上的前途蒙上了一层阴影。
在笔者看来,这场革命者和与反革命者之间的战争在桌面PC领域和移动设备领域将出现不同的走势:在桌面领域,Flash利用HTML5标准统一之前的那段时间,实现性能和功能上的进化和完善,在技术上同HTML5拉开距离。HTML5在经过漫长的纠结后终于走上了商业化的道路,同Flash相比,不插即用成为它的核心卖点。
在未来的Web前端,两者将扮演不同的角色。网页中HTML5足以驾驭的基础部分,将选择HTML5使用本身自带的各类标签。在需要实现更强的视觉表现力、更有趣的互动效果、而HTML5又无法搞定时,则会去借助Flash player的力量。HTML5搭建基础部分,Flash搭建高端部分,桌面领域将呈现Flash player和HTML互为补充的局面。
在移动领域,高性能的APP应用占据统治性地位,用户更倾向于使用这些APP应用来观看在线视频、收听在线音乐。由于众多优秀的APP游戏的存在,移动平台的用户很少会产生玩网页游戏的需要。
当用户需要访问YouTube、Vimeo等视频网站时,他们会倾向于访问更为稳定、耗电更少的HTML5版(YouTube、Vimeo等视频网站大多会同时提供Flash和HTML5两个版本)。在这种情况下,兼容性差、不稳定、费电的Flash player显得颇为鸡肋。就目前来看,HTML5要比Flash更加适合移动平台。
虽然,有人坚定地认为Flash这种必须依赖插件的形式生存的“寄生物”可以被“寄主”轻易地屏蔽、封杀,最终消失。然而东方逻辑往往很难推算出西方战局——即便是著名的反Flash“艺术家”乔教主,也不会选择在自己的桌面级系统上将Flash屏蔽掉。屏蔽、封杀竞争对手这种行为,在文明世界的用户看来,实在是在太过“重口味”。在媒体宣传尚未到位,Flash还未被塑造成“全民公敌”之前,这种做法无疑太过冒险,难以赢得用户的选票。要知道,在硅谷很难上演3Q大战这种“大尺度激情动作片”。