Video.js 博客

Steve Heffernan2012-03-23

版本 3.2 更新

首先,请查看新的视频标签构建器。本网站以前的版本有一个嵌入代码构建器,但人们对新网站没有提供它感到非常失望因此,我很高兴地宣布它再次可用,现在它是一个HTML5视频标签构建器,可能可以在Video.js之外使用,它包含轨道标签,甚至允许您测试设置。如果您有任何反馈,请告诉我。

此版本中最显著的变化可能是完全彻底改进的<轨道>标签支持。

https://gist.github.com/4092295.js?file=html5-track-tag.html

新版本支持字幕、隐藏式字幕甚至章节。当您包含不同类型的轨道时,Video.js将自动在播放器中创建菜单,用户可以在其中选择要显示的语言或要跳转的章节。Video.js现在还支持新的WebVTT文本格式,该格式与之前支持的WebSRT格式相差不远,但在解析器中进行了一些调整。并非所有WebVTT的布局功能都已支持,但文本显示的基础功能已支持,并且我们将努力集成更多 WebVTT 功能。

此外,还进行了一些工作,使某些API方法能够更早地访问。对于任何非getter(从播放器返回特定值)的方法,如果您在播放技术(HTML5/Flash)准备好之前调用该方法,现在它将缓存该调用直到准备就绪。因此,以前您可能需要等待ready回调

https://gist.github.com/4092295.js?file=wait-for-ready.js

您现在可以这样做

https://gist.github.com/4092295.js?file=no-wait-for-ready.js

再次强调,这仅适用于您设置值或触发操作的方法。如果您尝试获取诸如myPlayer.duration()之类的返回值,您必须等到播放器准备就绪才能获得。

论坛中请求的另一个功能是自动将相对视频URL转换为Flash回退的绝对URL。这是一个CDN托管版本的问题,涉及加载一个远程SWF文件,该文件与播放器没有相同的上下文。以前我们只会告诉人们使用完整URL(http://),但这现在应该不再是问题了。与播放器没有相同的上下文。以前我们只会告诉人们使用完整URL(http://),但这现在应该不再是问题了。

感谢所有最近贡献代码的人,并对我在继续推送代码时论坛中可能存在的长时间回复表示歉意。

这里是此版本的完整更新日志。

3.2.0 / 2012-03-20 / baxter

  • 更新了带有更多选项的文档。
  • 彻底改进了HTML5轨道支持。
  • 修复了设置源时Flash总是自动播放的问题。
  • 修复了 localStorage 上下文
  • 更新了fullscreenchange事件,即使在用户按下Esc键退出全屏时也会调用。
  • 自动将Flash回退的源URL转换为绝对URL。
  • 创建了新的 'loadedalldata'事件,用于源文件完全下载时。
  • 改进了 player.destroy()。现在移除元素和引用。
  • 重构了API,使其更即时可用。

此致,
-Heff

Steve Heffernan2012-01-30

版本 3.1 更新

这是自3.0首次发布以来的第一个版本,除了一些即时发布的紧急修复程序外。它包含了一系列修复,针对论坛用户立刻发现的问题。

其中一个特性是Flash 的 iFrame 模式,在此版本中可选择用于测试。Video.js 的独特之处之一是,我们没有在我们的Flash播放器中内置任何控件,而是使用HTML和CSS来为Flash端创建控件。这使得体验保持一致,并且Flash播放器非常轻量级,然而这存在一些您在使用Flash时会遇到的问题,当您采用这种方法时。如果您曾经尝试调整Flash对象的父级大小,或者隐藏一个Flash对象然后再次显示它,您可能遇到过Flash在Firefox中重新加载的问题。这是一个Bug,它已经在Firefox中存在了很长时间,但看起来它可能会在版本13(目前是9)中修复。除此之外,随着新的浏览器全屏API的出现,其他浏览器现在在进入原生全屏时也会重新加载Flash。

我们我们找到了一种解决方法:如果您首先将Flash对象嵌入到iframe中,它可以在某些情况下避免重新加载。因此,在新版本中,有一个选项可以启用并尝试它。

https://gist.github.com/4092929.js?file=iframe-mode.js

我们我们将进行更多测试以确保它稳定,然后才会向所有人推出。

这里是此版本的完整更新日志。

3.1.0 / 2012-01-30 / leonardo

  • 为Firefox 9全屏添加了CSS修复(在极少数情况下它被启用时)
  • 用自定义嵌入替换了 swfobject 以节省文件大小。
  • 添加了 Flash iframe 模式,这是一种解决 Flash 重新加载问题的实验性方法。
  • 修复了音量旋钮位置问题。改进了控件淡入淡出。
  • 修复了第二次触发全屏的问题。
  • 修复了Firefox 3.0中获取属性的问题。
  • 为Flash的源URL中的特殊字符进行转义。
  • 添加了Firefox是否启用的检查,这修复了Firefox 9的一个问题。
  • 停止在stalled事件上显示加载动画,因为浏览器有时不会显示它们已恢复。已恢复。
  • 修复了导致 dev.html 崩溃的 CDN 版本。
  • 使全窗口模式更加独立。
  • 添加了用于生成发布的rakefile。

此致,
-Heff

Steve Heffernan2012-01-10

Video.js 3.0 版本!

经过数月的工作,我们很高兴地宣布 Video.js 3.0 版本发布!.一些令人兴奋的新功能包括:

  • HTML5 和 Flash 视频共用相同的 HTML/CSS 皮肤
  • 超轻量级 Flash 回退播放器,适用于不支持 HTML5 视频的浏览器不支持 HTML5 视频
  • Level3 提供免费 CDN 托管。更多发布和开发正在进行中!

此致,
-Heff

Steve Heffernan2011-06-17

Lynda.com HTML5 视频教程发布

Lynda HTML5 Video Tutorial

我最近为 Lynda.com(一个非常棒的在线培训服务)拍摄了一系列HTML5 视频教程。这是一次很棒的体验,视频现已可供观看。您可以在此处获取7天免费试用并查看它们。如果它们对您有帮助,请告诉我。

-Heff

Steve Heffernan2011-06-07

您是如何使用 video.js 的?

我很想知道人们在哪里以及如何使用 video.js。如果您正在使用它,请在评论中留下备注/链接。

此致,
-Heff

Steve Heffernan2011-02-11

新的 MPEG LA WebM/VP8 专利池

浏览器和设备供应商在决定支持 MP4/h.264 而非谷歌的 WebM 视频格式和 VP8 编解码器时,所支持的观点之一是,虽然 VP8 是开源的,但它可能仍然受到专利的困扰。到目前为止,这些“潜艇专利”都未浮出水面,但现在 MPEG LA 已经发出了呼吁,并希望组建一个专利池,为 VP8 创建一个许可,并实质上对其定价。在谷歌自己的许可中,它写道:

如果您或您的代理人或独占被许可人提起或指令或同意对任何实体提起专利诉讼(包括诉讼中的交叉索赔或反诉),声称 VP8 的此实现或此实现中包含的任何代码构成直接或共同专利侵权,或诱导专利侵权,则您根据此许可获得的关于 VP8 此实现的任何专利权应在提起此类诉讼之日终止。

因此,如果您声称 VP8 侵犯了专利并提起诉讼,您使用 VP8 的许可将被终止。不确定这具体会如何影响专利池,但一场有趣的较量可能即将到来。

Steve Heffernan2011-01-28

苹果在 Mobile Safari 中添加了 AirPlay

AirPlay 是 iOS 设备上的一项视频功能,允许您将设备上的视频流式传输到同一无线网络中的 Apple TV,从而在电视上播放。在此之前,此功能仅在 iPod 和 YouTube 应用程序中可用,但随着 iOS 4.3(目前处于测试版)的推出,它也将在 Mobile Safari 中可用。

AirPlay Feature in Mobile Safari

为了将 AirPlay 作为选项启用,视频发布者必须向 HTML5 视频标签添加一个属性。<video width=480height=300controls x-webkit-airplay=allow> 我们将作为默认属性添加到下一个 VideoJS 版本中。

在 MacRumors 上阅读完整故事.

Steve Heffernan2011-01-11

谷歌将从 Chrome 中移除 h.264 支持

更新:添加了一张图表,显示 Chrome 不再支持 h.264 后格式支持的情况。

Google Chrome Drops h.264 Support

谷歌已决定通过从 Chrome 中移除 h.264 支持来支持开源社区。此前,Chrome 是唯一可以播放所有三种主要 HTML5 格式——MP4/h.264、WebM/VP8 和 Ogg/Theora——的浏览器。这可能同时也是一项战略举措,因为 h.264 目前看来不太可能被击败,尤其是在 IE9 支持 h.264 的同时,使用 VP8 还需要额外插件的情况下。.在我看来,有两件大事可能结束格式战。

  1. 苹果采用 WebM/VP8(这需要 iOS 设备中包含足够的硬件支持)

  2. MPEG LA 取消 h.264 的所有版税

阅读原文.

Steve Heffernan2011-01-07

超过 50% 的网络用户现在支持 HTML5 视频

进入2011年,HTML5 视频达到了一个重要的里程碑。现在有 50.5% 的网络用户支持 HTML5 视频播放。这个数字是通过比较支持 HTML5 视频的浏览器版本与 StatCounter 的全球浏览器版本统计数据进行比较得出的。

HTML5 Video Statistics

自2009年12月以来,HTML5 视频用户支持增长了 66%。.随着 Internet Explorer 9 即将在近期发布,2011年可能会看到网站将 HTML5 视频作为主要播放方式的采用率大幅增加。在支持 HTML5 视频的浏览器中,Mozilla的 Firefox 是明显的领导者,谷歌的Chrome 位居第二。HTML5 视频支持的增长很大程度上可归因于 Chrome 在过去一年中从 Internet Explorer 市场份额中抢占的成功。在过去一年中从 Internet Explorer 市场份额中抢占的成功。

视频格式

格式之战仍然是 HTML5 视频普及的阻碍,而且似乎没有明确的终点。虽然苹果通过要求 iPhone 视频播放必须使用 HTML5 视频,加速了其发展,但它也是唯一一个不支持谷歌的 WebM/VP8 格式的厂商,而 WebM/VP8 具有成为 HTML5 视频标准格式的最高潜力。除其他原因外,苹果在 mp4/h.264 格式上投入了大量资金,包括内置在 iPad 和 iPhone 中的硬件来解码/编码它。这意味着即使苹果决定支持 WebM,也需要不仅仅是一个简单的软件更新才能将 WebM 带给众多的 iPhone 和 iPad 用户。微软表示他们将在 Internet Explorer 9 中支持 WebM/VP8,但仅限于用户安装了 VP8 编解码器时。这基本上意味着他们不会支持它。微软对 MP4/h.264 的偏好在其发布的一个插件中表现得更为明显,该插件允许在 Windows 上的 Firefox 中播放 h.264。以下图表显示了不同视频格式的支持和增长情况。

HTML5 Video Format Statistics

谷歌在8月发布Chrome 6并向用户推送更新后,WebM出现了急剧增长。在以下图表中,您可以看到HTML5视频用户中格式分布的不同视图。第一个图表显示了按格式组合划分的用户支持情况。第二个图表比较了开放格式与封闭格式的支持情况。

HTML5 Video Format Group Statistics

从HTML5视频的角度来看,开放格式明显优于封闭格式,而苹果和IE9则占据了最后的10%。随着IE9的正式发布,这种情况在未来一年可能会发生变化,除非微软决定在无需额外安装的情况下支持WebM/VP8。最后,如果您对Flash与HTML5的争论感兴趣,Flash已经根深蒂固,而HTML5视频还有很长的路要追赶。根据Adobe的数据,Flash受到超过99%的网络用户的支持。来自其他网站的统计数据似乎也支持这一点,尽管根据Omniture(现为Adobe)的数据,互联网平均支持率为116.8%(原文如此)。

Omniture Flash Support Statistic

自Flash 9更新3 (9.0.115)以来,Flash已经支持MP4/h.264格式的视频播放。在下面的图表中,您可以看到考虑Flash如何影响视频格式支持的比较。

Flash vs. HTML5 Video Statistics

然而,Adobe 表示他们将在Flash的后续版本中支持WebM/VP8。用户升级到最新版Flash的速度相对较快,因此这可能会对WebM的支持产生巨大影响。总的来说,HTML5 要取代 Flash 将会很困难。除了用户支持和格式差异之外,Flash 播放器多年来支持的特性列表很长,所有浏览器都需要时间来内置这些特性。然而,其中许多特性可以使用 JavaScript 构建,这使得它们可以立即在不同浏览器中使用。它取决于开源社区来构建人们接受HTML5作为主要视频播放方式所需的功能。VideoJS是一个开源的HTML5视频播放器和框架,它使得支持HTML5视频以及针对旧浏览器的Flash变得容易。它在不同浏览器中提供了一致的界面,并解决了许多浏览器/移动设备bug。HTML5视频仍然存在一些粗糙之处,但VideoJS的众多贡献者正在解决这些问题并扩展VideoJS以满足网络用户的需求。