HTML5

一直以来,很多人都专注于 HTML5 能够实现什么(或者是如何将各种方法连接起来,实现一个更加优雅的解决方案)。而现在,也不少人想将目光投向那些 HTML5 无法实现的事情。MSDN 上微软员工 thebeebs 的一篇博文回答了这个问题:

1、HTML5无法实现 DRM

如果你有一家多媒体公司,你需要控制或者限制你的视频内容——通常是在多媒体内容中添加数字版权加密技术(DRM)。不幸的是,HTML5无法加入 DRM。HTML5的问题是,它会将多媒体内容的格式完全暴露出来,要解决这个问题并不困难(相关的技术和策略可以在 W3C bug system 上看到)。我个人认为,这个问题确实有必要解决。抛开各界对 DRM 的争议,至少对许多公司而言,支持 DRM 还是非常有意义的——看看 Lovefilm 的 blog ,你就知道目前各个多媒体公司面临的困难了。

2、HTML5不能播放直播视频

HTML5已经能够很好地处理静态的视频文件了,但它现在还无法处理直播的视频。尽管 HTML5 能够提供优质的视频查询和视频点播服务,但是它却无法支持用户观看在线的足球比赛。Apple 使用 HTTP Live Streaming 弥补了 HTML5 的这一缺失。它通过 HTTP 传输H.264的文件块,但是这一技术只能在 Safari 上运行。(顺便提一句,有些人以为 HTML5 不支持视频的随机播放,但其实 HTML5 是支持这一功能的。)Streaming Media 杂志的网站上能够找到非常丰富的 HTML5 视频资源。

3、HTML5上的音频处理也不完美

你也许会认为:既然 HTML5 都能够解决视频播放问题了,那音频播放自然不在话下咯。但音频处理最大的问题就是怎样处理延迟的问题。当你的应用程序或是游戏要求音频文件与屏幕上显示的操作保持同步时,这个问题就凸显出来了。其中一个问题就是不同的浏览器处理音频文件的方式可能也有所不同。如果想了解更多相关的信息,可以看看 IE 博客上的相关介绍,Grant Skinner 的 SoundJS JavaScript library 提供了一种不错的解决方案。

4、HTML5上不能与摄像头交互

与 Flash 有所不同,HTML5不支持用户与摄像头交互(或者是 PC 机上的麦克风),这使得基于 web 的会议很难实现。当然也不是完全没有办法,在 HTML5Labs 上,你可以找到一个 Media Capture API 的相关标准,它是 W3C 标准中有关音频处理的部分。HTML5Labs 是由最早的 Microsoft 标准和一些 web 标准(如 W3C)演化而来的。所以它目前还处在发展之中,一旦音频处理问题解决了,就开始着手解决视频问题了。你可以在 HTML5Labs 网站上找到许多相关的资料。

5、HTML5上无法实现视频的全屏播放

使用插件全屏观看视频是没有问题的。但是,如果是使用 HTML5,这可能还有点困难(至少是现在)。但针对这一问题,现在已经有一些相关的支持协议了。Chris Pearce 在 Thundering Herd 博客中介绍了他是如何使用 HTML 全屏 API 在 Firefox 上实现视频的全屏播放的。这个 API 提供了“全屏”的 HTML 组件。Chrome 上也有相关的解决方案。

以上就是 HTML5 目前无法实现的 5 件事,但是 HTML5 不久将解决上述这些问题。

译文出处:WebAppTrend