<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Video.js is an open source JavaScript library for working with web video. It has HTML/CSS video player controls and a JavaScript API that work the same with HTML5, Flash, and other playback technologies.

Learn more at videojs.com.</description><title>Video.js Blog</title><generator>Tumblr (3.0; @video-js)</generator><link>http://blog.videojs.com/</link><item><title>Video.js 4.0 now available!</title><description>&lt;p&gt;Today we&amp;#8217;re releasing Video.js 4.0, which is the most solid, lightweight, and I dare say prettiest version yet. It&amp;#8217;s available for download, on Github, and hosted for free on our CDN.&lt;/p&gt;
&lt;p&gt;Version 4.0 received the most community collaboration of any previous version, which speaks to the growing strength of the JavaScript community, the growing popularity of HTML5 video, and an increase in Video.js usage. Over the last year the number of sites using Video.js has more than &lt;a href="http://trends.builtwith.com/media/VideoJS" target="_blank"&gt;doubled&lt;/a&gt;, and each month there are over 200 million hits to the CDN-hosted version alone! Thank you to all of the Video.js community members for contributing code and filing bug reports.&lt;/p&gt;
&lt;p&gt;This version is also a milestone in that it&amp;#8217;s the first version released since &lt;a href="http://blog.videojs.com/post/35666994917/brightcove-acquires-zencoder" target="_blank"&gt;Brightcove acquired Zencoder&lt;/a&gt; last year. For those who missed the announcement, it was a very good thing for Video.js. In the past, Video.js was a side project for Zencoder that I maintained on top of my regular responsibilities (as if startup life isn&amp;#8217;t exciting enough). Post-acquisition, Brightcove has not only put me full-time on Video.js, but the Brightcove video player team has become contributors to the project. The Brightcove team is probably the most experienced video player team in the world, supporting the most advanced video technology, for the biggest brands, across all the devices. It&amp;#8217;s been a privilege to work with them and they&amp;#8217;ve made major contributions to this version.&lt;/p&gt;
&lt;h3&gt;4.0 Major Feature Summary:&lt;/h3&gt;
&lt;p&gt;Improved performance through an 18% size reduction using Google Closure Compiler in advanced mode&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Greater stability through an automated cross-browser/device test suite using TravisCI, Bunyip, and Browserstack.&lt;/li&gt;
&lt;li&gt;New plugin interface and plugin listing for extending Video.js&lt;/li&gt;
&lt;li&gt;New default skin design that uses font icons for greater customization&lt;/li&gt;
&lt;li&gt;Responsive design and retina display support&lt;/li&gt;
&lt;li&gt;Improved accessibility through better ARIA support&lt;/li&gt;
&lt;li&gt;Moved to Apache 2.0 license&lt;/li&gt;
&lt;li&gt;100% JavaScript development tool set including Grunt&lt;/li&gt;
&lt;/ul&gt;&lt;h4&gt;Improved Performance&lt;/h4&gt;
&lt;p&gt;With version 4.0, performance was our top priority, and a major factor of performance is the time it takes to load the library. What would seem to be minor size reductions can have a big impact, especially when a library will be loaded millions of times a month all over the world. We chose to use Google’s &lt;a href="https://developers.google.com/closure/compiler/" target="_blank"&gt;Closure Compiler&lt;/a&gt; because its “advanced mode” currently provides the most aggressive options for code minification, and so far we’ve seen an 18% reduction in code size, with the potential for more.&lt;/p&gt;
&lt;p&gt;Closure Compiler also claims to rewrite code for better runtime performance, though we haven’t had a chance to benchmark this yet.&lt;/p&gt;
&lt;p&gt;Some preliminary load-time benchmarking* shows:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Player load times in under 50 milliseconds&lt;/li&gt;
&lt;li&gt;Playback start times in under 150 milliseconds&lt;/li&gt;
&lt;li&gt;Actual video playback seen in under 0.5 seconds (using a CDN hosted MP4)&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;*Initial tests used Chrome with an empty cache on a modern MacBook Pro with a Wi-Fi connection. More formal testing to follow.&lt;/p&gt;
&lt;h4&gt;Greater Stability&lt;/h4&gt;
&lt;p&gt;Automated cross-browser, cross-device testing is the Holy Grail of testing for a JavaScript library. While building version 4.0, we’ve been able to reach that goal through the use of a number of tools, including:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href="https://travis-ci.org" target="_blank"&gt;TravisCI&lt;/a&gt; - Automatically runs unit tests through &lt;a href="http://phantomjs.org" target="_blank"&gt;PhantomJS&lt;/a&gt; on every pull request made to the Video.js source code&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ryanseddon.github.io/bunyip/" target="_blank"&gt;Bunyip&lt;/a&gt; + &lt;a href="http://www.browserstack.com" target="_blank"&gt;Browserstack&lt;/a&gt; - Allows us to run tests in cloud-hosted instances of any browser from IE6 to the latest Chrome, and also a wide range of iOS and Android devices.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;This ability to easily run tests across environments before any new release will give us more protection against regressions, and can allow for a faster feature release cycle.&lt;/p&gt;
&lt;h4&gt;New Plugin Interface&lt;/h4&gt;
&lt;p&gt;The new &lt;a href="https://github.com/videojs/video.js/blob/master/docs/plugins.md" target="_blank"&gt;plugins API&lt;/a&gt; allows developers to more easily add custom features to Video.js. The API works similarly to the jQuery plugin interface, giving developers access to add to or overwrite any piece of Video.js. Once a plugin has been created, it can be shared on the &lt;a href="https://github.com/videojs/video.js/wiki/Plugins" target="_blank"&gt;Video.js plugin list&lt;/a&gt; page on the wiki.&lt;/p&gt;
&lt;h4&gt;New Default Skin&lt;/h4&gt;
&lt;p&gt;With help from the Brightcove UX team, we’ve created a new default skin that’s simpler, more polished, and more customizable. One of the most interesting features is that we’ve moved from using images for icons to font icons. The use of font icons allows you to change the color and size of the icons simply by changing a CSS value. You can see an example of this on the &lt;a href="http://videojs.com" target="_blank"&gt;Video.js homepage&lt;/a&gt;.&lt;/p&gt;
&lt;h4&gt;Improved Accessibility&lt;/h4&gt;
&lt;p&gt;Greg Kraus, a Video.js community member from &lt;a href="http://www.NCSU.edu" target="_blank"&gt;NCSU.edu&lt;/a&gt;, did some great work testing and improving Video.js accessibility through better use of &lt;a href="http://www.w3.org/WAI/intro/aria" target="_blank"&gt;ARIA&lt;/a&gt; roles. The changes make it so keyboard-only users, screen reader users, and voice-interface users will be able to interact with the video player. UPDATE: Read more in &lt;a href="http://accessibility.oit.ncsu.edu/blog/2013/05/09/accessible-video-js-player-available-on-global-accessibility-awareness-day/" target="_blank"&gt;Greg&amp;#8217;s blog post&lt;/a&gt;.&lt;/p&gt;
&lt;h4&gt;Moved to Apache 2.0 License&lt;/h4&gt;
&lt;p&gt;Earlier versions of Video.js were released under the LGPLv3 license. LGPL often gets confused with its stricter sibling, GPL, which requires that all code the software touches must also be open source. Video.js is meant to be open and free to use in all contexts, and we want that to be clear, so version 4.0 is now released under Apache 2.0, the same license Twitter Bootstrap is released under.&lt;/p&gt;
&lt;h4&gt;100% JavaScript Tool Set&lt;/h4&gt;
&lt;p&gt;Previously Video.js used Ruby for development tools, including Rake for deployment tasks, and zenflow–an internal Zencoder tool that builds on &lt;a href="https://github.com/nvie/gitflow" target="_blank"&gt;gitflow&lt;/a&gt; for development process workflow. With 4.0 we’ve moved to &lt;a href="http://gruntjs.com" target="_blank"&gt;Grunt&lt;/a&gt; for tasks and we’re building out a tool similar to zenflow in Node.js.&lt;/p&gt;
&lt;h4&gt;Videojs.com Now Open Source&lt;/h4&gt;
&lt;p&gt;As part of this release we’ve also made the Videojs.com website open source. So if you see something that should be added or fixed, &lt;a href="https://github.com/videojs/videojs.com" target="_blank"&gt;fork it&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;What now?&lt;/h3&gt;
&lt;p&gt;Even with all of the updates listed above, this is simply a jumping-off point for what will be an exciting year for Video.js. We’re continuing to improve performance, multi-platform stability, and customizability through plugins and skins. Members of the community have already started work on plugins for some of the more requested features, like playlists, analytics, and advertising.&lt;/p&gt;
&lt;p&gt;Follow &lt;a href="http://twitter.com/videojs" target="_blank"&gt;@videojs&lt;/a&gt; or sign up for our &lt;a href="http://zencoder.us2.list-manage2.com/subscribe?u=36f130c3d3fadb2a21d2983b7&amp;amp;id=0f35b0535c" target="_blank"&gt;newsletter&lt;/a&gt; to stay up-to-date on new features and roadmap updates.&lt;/p&gt;
&lt;p&gt;If you’d like to get involved in the project, check out our &lt;a href="https://github.com/videojs/video.js/blob/master/CONTRIBUTING.md" target="_blank"&gt;contributing guide&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br/&gt;-&lt;a href="http://blog.heff.me" target="_blank"&gt;heff&lt;/a&gt;&lt;/p&gt;</description><link>http://blog.videojs.com/post/50021214078</link><guid>http://blog.videojs.com/post/50021214078</guid><pubDate>Thu, 09 May 2013 13:10:00 -0400</pubDate></item><item><title>Repo Moved!</title><description>&lt;p&gt;In preparation for the next version we&amp;#8217;ve moved the source code repository from github.com/zencoder/video-js to &lt;a href="http://github.com/videojs/video.js" target="_blank"&gt;github.com/videojs/video.js&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you have a local clone you can update your clone&amp;#8217;s upstream URL with:&lt;/p&gt;
&lt;pre&gt;git remote set-url upstream git://github.com/videojs/video.js.git&lt;/pre&gt;
&lt;p&gt;The relationship between your fork (e.g. github.com/you/video-js) should still be intact, including any pull requests.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br/&gt;-heff&lt;/p&gt;</description><link>http://blog.videojs.com/post/49797985868</link><guid>http://blog.videojs.com/post/49797985868</guid><pubDate>Mon, 06 May 2013 16:56:59 -0400</pubDate></item><item><title>Site and Support Updates</title><description>&lt;p&gt;After a brief hiatus of helping &lt;a href="http://blog.videojs.com/post/35666994917/brightcove-acquires-zencoder" title="Zencoder acquired by Brightcove" target="_blank"&gt;Brightcove and Zencoder come together&lt;/a&gt;, I&amp;#8217;m moving full time to developing and supporting Video.js. Thank you to everyone who has continued to commit code and help out in the forums. &lt;/p&gt;
&lt;p&gt;As part of this move I&amp;#8217;m trying to optimize the tools used for video.js project management and support. The first big change is that the forums are being replaced with &lt;a href="http://stackoverflow.com/questions/tagged/video.js" title="Video.js Support on Stack Overflow" target="_blank"&gt;Stack Overflow&lt;/a&gt; (tag with &amp;#8220;video.js&amp;#8221;) and &lt;a href="https://github.com/zencoder/video-js/issues" title="Video.js Submit Issues" target="_blank"&gt;Github Issues&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Over the last few years Video.js has become more popular than I ever expected, and at the same time Stack Overflow has come up as an incredible tool for supporting developer communities. So along with many other projects like &lt;a href="http://blog.stackoverflow.com/2011/08/facebook-stackoverflow/" title="Facebook on Stack Overflow" target="_blank"&gt;Facebook&lt;/a&gt;, &lt;a href="http://android-developers.blogspot.com/2009/12/hello-stack-overflow.html" title="Android on Stack Overflow" target="_blank"&gt;Android&lt;/a&gt;, and &lt;a href="http://html5boilerplate.com" title="HTML5 Boilerplate" target="_blank"&gt;HTML5 Boilerplate&lt;/a&gt;, I&amp;#8217;m excited to move support to Stack Overflow&amp;#8217;s awesome tool and community. I&amp;#8217;ll be leaving the forums up for bit but from here forward please post questions to Stack Overflow and use the &amp;#8220;video.js&amp;#8221; tag.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve also begun cleaning up and organizing the &lt;a href="https://github.com/zencoder/video-js/issues" title="Video.js Submit Issues" target="_blank"&gt;Github Issues&lt;/a&gt; for Video.js, which previously existed, but issues were split between the forum and Github. If you find specific bugs with video.js please &lt;a href="https://github.com/zencoder/video-js/issues/new" title="Submit Issue" target="_blank"&gt;submit them there&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On the project management side of things I&amp;#8217;ll be using &lt;a href="https://trello.com" title="Trello" target="_blank"&gt;Trello&lt;/a&gt;, and exposing boards so others can see the progress of development.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m also paring down the site and moving more complex sections to other services that can better handle them. I&amp;#8217;ve already moved the blog to &lt;a href="http://tumblr.com" title="Tumblr" target="_blank"&gt;Tumblr&lt;/a&gt;, and I&amp;#8217;m moving the docs to the &lt;a href="https://github.com/zencoder/video-js/tree/master/docs/index.md" title="Video.js docs" target="_blank"&gt;Github repo&lt;/a&gt;, which has built-in docs formatting.&lt;/p&gt;
&lt;p&gt;For those starting an open source project today, you can look at this as my guide to supporting an open source project. I wish I would have know to do all this when I started on Video.js.&lt;/p&gt;
&lt;p&gt;More project updates coming soon.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br/&gt;-heff &lt;/p&gt;</description><link>http://blog.videojs.com/post/35788231775</link><guid>http://blog.videojs.com/post/35788231775</guid><pubDate>Thu, 15 Nov 2012 14:54:18 -0500</pubDate></item><item><title>Brightcove Acquires Zencoder</title><description>&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_mdgad5rr0S1qzc111.png"/&gt;&lt;/p&gt;
&lt;p&gt;Today, Zencoder announced that it is being acquired by &lt;a href="http://brightcove.com" target="_blank"&gt;Brightcove&lt;/a&gt;, the leading online video platform (OVP). You can read more on the specifics in the &lt;a href="http://blog.zencoder.com/2012/07/26/brightcove-acquires-zencoder/" target="_blank"&gt;Zencoder blog post&lt;/a&gt; and &lt;a href="http://www.brightcove.com/en/company/press/brightcove-signs-definitive-agreement-acquire-zencoder" target="_blank"&gt;press release&lt;/a&gt;, but I also wanted to be clear on what this means for Video.js. As you may know, Video.js was created by me (Steve Heffernan, Co-founder of Zencoder) and Zencoder continues to be its core contributor and sponsor (like 37signals to Rails or Joyent to Node.js).&lt;/p&gt;
&lt;p&gt;This acquisition means only great things for Video.js. To quickly summarize, Video.js will continue to be a free and open source video player &amp;amp; framework, and Brightcove will be investing more in Video.js than Zencoder ever could.&lt;/p&gt;
&lt;p&gt;I wrote the first version of Video.js in early 2010 during Zencoder’s time in Y Combinator (while secluded in our rented house deep in the Santa Cruz mountains). Over the past few years I’ve continued to build the library and pull in contributions from other Zencoder team members and the community, but only on the side of my ongoing Founder and VP of Marketing duties at Zencoder. While Video.js has continued to gain popularity among developers and is now being &lt;a href="http://trends.builtwith.com/media/VideoJS" target="_blank"&gt;used on over 25,000 websites&lt;/a&gt;, there’s still work to be done and room to grow. So one of the more significant changes that will be happening is that Brightcove will be putting me on Video.js full time, freeing me up to work on the core of the project and to better support the Video.js community, both users and contributors.&lt;/p&gt;
&lt;p&gt;Beyond this, Brightcove has a first-class player development team backing their platform’s video player. While the specifics of how the two teams and players will work together are still being discussed, we have agreement on our philosophies and views about where player technology is going. This combined knowledge and collaboration is sure to have a positive impact for both players.&lt;/p&gt;
&lt;p&gt;While the additional resources will have a big impact, the best open source software projects only got to where they are through the contributions of developers in the community. So if you’ve previously been cautious to dig into the source or push back a specific feature or bug fix, I hope this news only helps encourage you to jump in and help make Video.js the best resource for working with video in the browser.&lt;/p&gt;
&lt;p&gt;There will be more info to come as things progress, but please feel free to ask any questions in the comments below.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;/p&gt;
&lt;p&gt;Steve &amp;amp; The Zencoder Team&lt;/p&gt;</description><link>http://blog.videojs.com/post/35666994917</link><guid>http://blog.videojs.com/post/35666994917</guid><pubDate>Thu, 26 Jul 2012 00:00:00 -0400</pubDate><category>news</category></item><item><title>Version 3.2 Update</title><description>&lt;p&gt;First of all, check out the new &lt;a href="/tag-builder/" target="_blank"&gt;video tag builder&lt;/a&gt;. The previous version of this site had an embed code builder, and people were &lt;a href="http://help.videojs.com/discussions/problems/873-whered-the-embed-builder-go" target="_blank"&gt;pretty disappointed&lt;/a&gt; that the new site didn&amp;#8217;t. So I&amp;#8217;m happy to announce that it&amp;#8217;s available again, now as an HTML5 video tag builder that could probably be used outside of Video.js, it includes track tags, and even lets you test the settings. Let me know if you have any feedback on it.&lt;/p&gt;
&lt;p&gt;The most notable change in this release is probably the completely overhauled &amp;lt;track&amp;gt; tag support.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://gist.github.com/4092295.js?file=html5-track-tag.html" target="_blank"&gt;https://gist.github.com/4092295.js?file=html5-track-tag.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The new version supports subtitles, captions, and even chapters. When you include tracks of different kinds, Video.js will automatically create menus in the player where users can select the language to display, or which chapter to jump to. Video.js also now supports the new &lt;a href="http://dev.w3.org/html5/webvtt/" target="_blank"&gt;WebVTT&lt;/a&gt; text format, which is not far off from the previously supported WebSRT format but did take some tweaking in the parser. Not all WebVTT placement features are supported yet, but the basics of displaying text are, and we&amp;#8217;ll be working to get more WebVTT features built in.&lt;/p&gt;
&lt;p&gt;Additionally there was work done to make some API methods accessible earlier. For any method that isn&amp;#8217;t a getter (returns a specific value from the player), if you call the method before the playback technology (HTML5/Flash) is ready, it will now cache the call until it is ready. So where previously you might have had to wait for the ready callback:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://gist.github.com/4092295.js?file=wait-for-ready.js" target="_blank"&gt;https://gist.github.com/4092295.js?file=wait-for-ready.js&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You could now do:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://gist.github.com/4092295.js?file=no-wait-for-ready.js" target="_blank"&gt;https://gist.github.com/4092295.js?file=no-wait-for-ready.js&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Again, that&amp;#8217;s just for methods where you are setting a value or triggering an action. If you try to get a value back like &lt;code&gt;myPlayer.duration()&lt;/code&gt;, you&amp;#8217;ll get nothing until the player is ready.&lt;/p&gt;
&lt;p&gt;One other feature that was requested in the forums was automatically translating relative video URLs to absolute URLs for the flash fallback. This was an issue with the CDN hosted version which involved loading a remote SWF file which didn&amp;#8217;t have the same context as the player. Before we would just tell people to use full URLs (http://) but that shouldn&amp;#8217;t be an issue anymore.&lt;/p&gt;
&lt;p&gt;Thanks to everyone that&amp;#8217;s helped contribute code lately, and apologies for any long response times in the forums as I continue to try to push out code.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s the full change log for the release.&lt;/p&gt;
&lt;h3&gt;3.2.0 / 2012-03-20 / baxter&lt;/h3&gt;
&lt;ul&gt;&lt;li&gt;Updated docs with more options.&lt;/li&gt;
&lt;li&gt;Overhauled HTML5 Track support.&lt;/li&gt;
&lt;li&gt;Fixed Flash always autoplaying when setting source.&lt;/li&gt;
&lt;li&gt;Fixed localStorage context&lt;/li&gt;
&lt;li&gt;Updated &amp;#8216;fullscreenchange&amp;#8217; event to be called even if the user presses escape to exit fullscreen.&lt;/li&gt;
&lt;li&gt;Automatically converting source URL to absolute for Flash fallback.&lt;/li&gt;
&lt;li&gt;Created new &amp;#8216;loadedalldata&amp;#8217; event for when the source is completely downloaded&lt;/li&gt;
&lt;li&gt;Improved player.destroy(). Now removes elements and references.&lt;/li&gt;
&lt;li&gt;Refactored API to be more immediately available.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Cheers,&lt;br/&gt; -Heff&lt;/p&gt;</description><link>http://blog.videojs.com/post/35883671470</link><guid>http://blog.videojs.com/post/35883671470</guid><pubDate>Fri, 23 Mar 2012 00:00:00 -0400</pubDate><category>version</category></item><item><title>Version 3.1 Update</title><description>&lt;p&gt;This is the first release since the initial 3.0 launch, aside from some hotfixes that went out immediately. It includes a number of fixes for things that users in the &lt;a href="http://help.videojs.com" target="_blank"&gt;forums&lt;/a&gt; found right off the bat.&lt;/p&gt;
&lt;p&gt;One feature that&amp;#8217;s optional for testing in this release is iFrame Mode for Flash. One the of the unique things about Video.js is we haven&amp;#8217;t built any controls into our Flash player, and instead use HTML and CSS to create the controls for the Flash side as well. This keeps the experience consistent and the Flash player very lightweight, however there&amp;#8217;s a number of issues that you run into with Flash when you take an approach like this. If you&amp;#8217;ve ever tried to resize the parent of a Flash object, or hide a Flash object and then show it again, you&amp;#8217;ve probably run into the issue of Flash reloading in Firefox. This is a bug that&amp;#8217;s been in Firefox for &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=90268" target="_blank"&gt;quite a long time&lt;/a&gt; however it looks like it might be fixed by version 13 (currently 9). To add on top of this, with the new &lt;a href="https://wiki.mozilla.org/Gecko:FullScreenAPI" target="_blank"&gt;browser fullscreen API&lt;/a&gt;, the other browsers now also reload Flash when you go to native fullscreen.&lt;/p&gt;
&lt;p&gt;We&amp;#8217;ve found a bit of a fix where if you embed the Flash object in an iframe first, it can get around the reloading in some of these cases. So in the new version there&amp;#8217;s an option to turn this on and try it.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://gist.github.com/4092929.js?file=iframe-mode.js" target="_blank"&gt;https://gist.github.com/4092929.js?file=iframe-mode.js&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We&amp;#8217;ll be doing some more testing to make sure it&amp;#8217;s stable before we push it out to everyone.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s the full change log for the release.&lt;/p&gt;
&lt;h4&gt;3.1.0 / 2012-01-30 / leonardo&lt;/h4&gt;
&lt;ul&gt;&lt;li&gt;Added CSS fix for Firefox 9 fullscreen (in the rare case that it&amp;#8217;s enabled)&lt;/li&gt;
&lt;li&gt;Replaced swfobject with custom embed to save file size.&lt;/li&gt;
&lt;li&gt;Added flash iframe-mode, an experimental method for getting around flash reloading issues.&lt;/li&gt;
&lt;li&gt;Fixed issue with volume knob position. Improved controls fading.&lt;/li&gt;
&lt;li&gt;Fixed ian issue with triggering fullscreen a second time.&lt;/li&gt;
&lt;li&gt;Fixed issue with getting attributes in Firefox 3.0&lt;/li&gt;
&lt;li&gt;Escaping special characters in source URL for Flash&lt;/li&gt;
&lt;li&gt;Added a check for if Firefox is enabled which fixes a Firefox 9 issue&lt;/li&gt;
&lt;li&gt;Stopped spinner from showing on &amp;#8216;stalled&amp;#8217; events since browsers sometimes don&amp;#8217;t show that they&amp;#8217;ve recovered.&lt;/li&gt;
&lt;li&gt;Fixed CDN Version which was breaking dev.html&lt;/li&gt;
&lt;li&gt;Made full-window mode more independent&lt;/li&gt;
&lt;li&gt;Added rakefile for release generation&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Cheers,&lt;br/&gt; -Heff&lt;/p&gt;</description><link>http://blog.videojs.com/post/35884369527</link><guid>http://blog.videojs.com/post/35884369527</guid><pubDate>Mon, 30 Jan 2012 00:00:00 -0500</pubDate><category>version</category></item><item><title>Video.js Version 3.0!</title><description>&lt;p&gt;After months and months of work we&amp;#8217;re happy to announce Video.js version 3.0. Some of the exiting new features include:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Same HTML/CSS Skin for both HTML5 and Flash video&lt;/li&gt;
&lt;li&gt;Super lightweight Flash fallback player for browsers that don&amp;#8217;t support HTML5 video&lt;/li&gt;
&lt;li&gt;Free CDN hosting by Level3&amp;#160;A lot more releases and developments are on their way!&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Cheers,&lt;br/&gt;-Heff&lt;/p&gt;</description><link>http://blog.videojs.com/post/35884704314</link><guid>http://blog.videojs.com/post/35884704314</guid><pubDate>Tue, 10 Jan 2012 00:00:00 -0500</pubDate><category>version</category></item><item><title>Lynda.com HTML5 Video Tutorial Released</title><description>&lt;p&gt;&lt;a href="http://goo.gl/y0SZb" target="_blank"&gt;&lt;img alt="Lynda HTML5 Video Tutorial" src="http://videojs.com/img/blog/2011/06/lynda_com.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I recently filmed a series of &lt;a href="http://goo.gl/y0SZb" target="_blank"&gt;HTML5 video tutorials&lt;/a&gt; for Lynda.com, a really great service for online training. It was a great experience, and the videos are now available for viewing. You can get a &lt;a href="http://www.lynda.com/promo/trial/Default.aspx?lpk35=1833&amp;amp;utm_medium=affiliate&amp;amp;utm_source=ldc_affiliate&amp;amp;utm_content=655&amp;amp;utm_campaign=CD3175&amp;amp;bid=655&amp;amp;aid=CD3175&amp;amp;opt=" target="_blank"&gt;7-day free trial here&lt;/a&gt; and check them out. Let me know if they&amp;#8217;re helpful at all.&lt;/p&gt;
&lt;p&gt;-Heff&lt;/p&gt;</description><link>http://blog.videojs.com/post/35884942031</link><guid>http://blog.videojs.com/post/35884942031</guid><pubDate>Fri, 17 Jun 2011 00:00:00 -0400</pubDate><category>news</category><category>code</category></item><item><title>How are you using video.js?</title><description>&lt;p&gt;I&amp;#8217;d love to hear where and how people are using video.js. If you&amp;#8217;re using it somewhere, leave a note/link in the comments.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br/&gt;-Heff&lt;/p&gt;</description><link>http://blog.videojs.com/post/35885081376</link><guid>http://blog.videojs.com/post/35885081376</guid><pubDate>Tue, 07 Jun 2011 00:00:00 -0400</pubDate></item><item><title>New MPEG LA WebM/VP8 Patent Pool</title><description>&lt;p&gt;One of the things that browser and device vendors stand behind when deciding to support MP4/h.264 over Google&amp;#8217;s Webm video format and VP8 codec, is that while VP8 is open source, it may still be encumbered by patents. So far none of these &lt;a href="http://en.wikipedia.org/wiki/Submarine_patent" target="_blank"&gt;submarine patents&lt;/a&gt; have surfaced, but now MPEG LA has &lt;a href="http://www.mpegla.com/main/pid/vp8/default.aspx" target="_blank"&gt;put out a call&lt;/a&gt;, and hopes to form a patent pool that would create a license for VP8, and essentially put a price on it. In &lt;a href="http://www.webmproject.org/license/additional/" target="_blank"&gt;Google&amp;#8217;s own license&lt;/a&gt;, it says:&lt;/p&gt;
&lt;blockquote&gt;&amp;#8220;If you or your agent or exclusive licensee institute or order or agree to the institution of patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that this implementation of VP8 or any code incorporated within this implementation of VP8 constitutes direct or contributory patent infringement, or inducement of patent infringement, then any patent rights granted to you under this License for this implementation of VP8 shall terminate as of the date such litigation is filed.&amp;#8221;&lt;/blockquote&gt;
&lt;p&gt;So if you claim VP8 infringes on a patent and sue, your license to use VP8 is terminated. Not sure exactly how that would affect a patent pool, but an interesting battle could be ahead.&lt;/p&gt;</description><link>http://blog.videojs.com/post/35885249818</link><guid>http://blog.videojs.com/post/35885249818</guid><pubDate>Fri, 11 Feb 2011 00:00:00 -0500</pubDate><category>news</category></item><item><title>Apple adds AirPlay to Mobile Safari</title><description>&lt;p&gt;AirPlay is a video feature on iOS devices that lets you play video from your device on your TV, by streaming it to an Apple TV on the same wireless network. Before now this was only available in the iPod and YouTube apps, but with iOS 4.3 (now in beta) it will be available through Mobile Safari as well.&lt;/p&gt;
&lt;p&gt;&lt;img alt="AirPlay Feature in Mobile Safari" src="http://macosrumors.com/wp-content/uploads/2011/01/IMG_0169.png"/&gt;&lt;/p&gt;
&lt;p&gt;In order to allow AirPlay as an option, video publishers have to add an attribute to the HTML5 video tag. &amp;lt;video width=&amp;#8221;480&amp;#8221; height=&amp;#8221;300&amp;#8221; controls x-webkit-airplay=&amp;#8221;allow&amp;#8221;&amp;gt; &amp;#8230; We&amp;#8217;ll be adding this as a default attribute in the next VideoJS version.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://macosrumors.com/2011/01/12/first-look-mobile-safari-airplay/" target="_blank"&gt;Read the whole story on MacRumors&lt;/a&gt;.&lt;/p&gt;</description><link>http://blog.videojs.com/post/35885444487</link><guid>http://blog.videojs.com/post/35885444487</guid><pubDate>Fri, 28 Jan 2011 00:00:00 -0500</pubDate><category>news</category><category>code</category></item><item><title>Google is dropping h.264 from Chrome</title><description>&lt;p&gt;UPDATE: Added a chart that shows what format support will look like without Chrome supporting h.264.&lt;/p&gt;
&lt;p&gt;&lt;img alt="Google Chrome Drops h.264 Support" src="http://videojs.com/img/blog/2011/01/google-chrome-drops-h264.png"/&gt;&lt;/p&gt;
&lt;p&gt;Google has decided to support the open source community by dropping h.264 support from Chrome. Previously Chrome was the only browser that could play all 3 major HTML5 formats—MP4/h.264, WebM/VP8, and Ogg/Theora. This is probably a strategic move at the same time, since h.264 seems unlikely to be beaten at this point, especially with IE9 supporting h.264 while requiring an extra plugin to use VP8. In my opinion, there&amp;#8217;s two major events that could end the format war.&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Apple adopts WebM/VP8 (which would require adequate hardware to include in iOS devices)&lt;/li&gt;
&lt;li&gt;MPEG LA removes all royalties from h.264&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;a href="http://blog.chromium.org/2011/01/html-video-codec-support-in-chrome.html" target="_blank"&gt;Read the original post&lt;/a&gt;.&lt;/p&gt;</description><link>http://blog.videojs.com/post/35885627647</link><guid>http://blog.videojs.com/post/35885627647</guid><pubDate>Tue, 11 Jan 2011 00:00:00 -0500</pubDate><category>news</category><category>stats</category></item><item><title>Over 50% of web users now support HTML5 Video</title><description>&lt;p&gt;As we roll into 2011, HTML5 video hits a major milestone. 50.5% of web users now support HTML5 video playback. This number was gathered by comparing browser versions that support HTML5 video with StatCounter&amp;#8217;s &lt;a href="http://gs.statcounter.com/#browser_version-ww-daily-20101201-20101231" target="_blank"&gt;world-wide browser version statistics&lt;/a&gt;. &lt;img alt="HTML5 Video Statistics" src="http://videojs.com/img/blog/2011/01/html5-video-user-support.png"/&gt;This is a 66% growth in HTML5 video user support since December of 2009. With the expected release of Internet Explorer 9 in the near future, 2011 could see a major increase in websites adopting HTML5 video as their primary playback method. Of browsers that support HTML5 video, Mozilla&amp;#8217;s Firefox is the clear leader, with Google&amp;#8217;s Chrome in second place. Much of the growth in HTML5 video support can be attributed to Chrome&amp;#8217;s success in stealing market share from Internet Explore over the last year.&lt;/p&gt;
&lt;h2&gt;Video Formats&lt;/h2&gt;
&lt;p&gt;The format war continues to be a deterrent of HTML5 video adoption, and there&amp;#8217;s no clear end in sight. While Apple has helped accelerate HTML5 video by requiring it for video playback on the iPhone, it&amp;#8217;s also the one vendor that will not support Google&amp;#8217;s WebM/VP8 format, which has the highest potential for becoming the standard format for HTML5 video. Among other reasons, Apple has invested a lot of money in the mp4/h.264 format, including hardware built into iPads and iPhones to decode/encode it. Meaning even if Apple decided to support WebM, it would take more than a simple software update to get WebM to the many iPhone and iPad users. Microsoft has said they will support WebM/VP8 in Internet Explorer 9, however only &amp;#8220;when the user has installed a VP8 codec&amp;#8221;. Which basically means they won&amp;#8217;t support it. Microsoft&amp;#8217;s preference for MP4/h.264 was made more obvious with their &lt;a href="http://news.cnet.com/8301-30685_3-20025721-264.html?part=rss&amp;amp;subj=news&amp;amp;tag=2547-1_3-0-20" target="_blank"&gt;release of a plugin&lt;/a&gt; that allows h.264 to be played back in Firefox on Windows. The following graphs show the support and growth of the different video formats. &lt;img alt="HTML5 Video Format Statistics" src="http://videojs.com/img/blog/2011/01/html5-format-statistics.png"/&gt; WebM had a sharp rise in August as Google released Chrome 6 and pushed out updates to its users. In the following charts you can see different views of how formats are divided among HTML5 video users. The first chart shows user support by combinations of formats. The second compares support of open vs. closed formats. &lt;img alt="HTML5 Video Format Group Statistics" src="http://videojs.com/img/blog/2011/01/html5-video-format-group-stats.png"/&gt; From an HTML5 video perspective, open formats win out significantly over closed formats, with Apple and IE9 hanging on to the last 10%. This may change over the next year with the official release of IE9, unless Microsoft decides to support WebM/VP8 without the need for an additional installation. Finally, if you are interested in the Flash vs. HTML5 debate, Flash is well entrenched and HTML5 video still has a long way to catch up. According to Adobe, Flash is supported by over 99% of web users. Statistics from other sites seem to support this, though according to Omniture (now Adobe), the internet average is 116.8% (sic). &lt;img alt="Omniture Flash Support Statistic" src="http://videojs.com/img/blog/2011/01/omniture-stat.png"/&gt; As of Flash 9 update 3 (9.0.115), Flash has supported the MP4/h.264 format for video playback. In the following chart, you can see how considering Flash affects the comparison of video format support. &lt;img alt="Flash vs. HTML5 Video Statistics" src="http://videojs.com/img/blog/2011/01/flash-vs-html5-statistics.png"/&gt; However, Adobe has &lt;a href="http://blogs.adobe.com/flashplatform/2010/05/adobe_support_for_vp8.html" target="_blank"&gt;said they will support WebM/VP8&lt;/a&gt; in a later release of Flash. The rate that users upgrade to the latest version of Flash is relatively fast, so this could have a big impact on WebM support when it happens. Overall, Flash will be difficult for HTML5 to dethrone. Beyond user support and format discrepancies there is a long list of features that Flash players have supported for years, which will take time for all browsers to build in. However, many of those features can be built with JavaScript, which allows them to be used across browsers immediately. It&amp;#8217;s up to the open source community to build the features people need to accept HTML5 as their primary means of video playback. VideoJS is an open source HTML5 video player and framework that makes it easy to support HTML5 video as well as Flash for older browsers. It provides a consistent interface across browsers and solves many browser/mobile device bugs. There are still quite a few rough edges with HTML5 video, but the many contributors to VideoJS are smoothing those over and expanding VideoJS to meet the needs of web users.&lt;/p&gt;</description><link>http://blog.videojs.com/post/35885839763</link><guid>http://blog.videojs.com/post/35885839763</guid><pubDate>Fri, 07 Jan 2011 00:00:00 -0500</pubDate><category>stats</category></item><item><title>HTML5 Video + Google Maps Mashup</title><description>&lt;p&gt;Mozilla has a cool demo of playing a video while drawing a line on a Google map similar to what you&amp;#8217;d see in an Indiana Jones film. Check out the &lt;a href="http://hacks.mozilla.org/2010/12/spirit-of-indiana-jones-syncing-html5-video-with-maps/" target="_blank"&gt;original post&lt;/a&gt; and the &lt;a href="http://isithackday.com/spirit-of-indiana/" target="_blank"&gt;demo&lt;/a&gt;.&lt;/p&gt;</description><link>http://blog.videojs.com/post/35886098711</link><guid>http://blog.videojs.com/post/35886098711</guid><pubDate>Thu, 16 Dec 2010 00:00:00 -0500</pubDate><category>news</category></item><item><title>2.0.2 Release - Subtitle Optimization + Safari on Leopard FS Fix</title><description>&lt;p&gt;Smallish update with some fixes and optimizations. Rewrote the subtitles parser so it&amp;#8217;s a lot more optimized and fixes a subtitle display bug. Put in a check for Safari running on Mac OSX 10.5 (Leopard), which doesn&amp;#8217;t like native fullscreen for some reason. Triggering full window mode instead.&lt;/p&gt;
&lt;p&gt;Full List&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Feature: Rewrote and optimized subtitle code.&lt;/li&gt;
&lt;li&gt;Feature: Protecting against volume ranges outside of 1 and 0.&lt;/li&gt;
&lt;li&gt;Fix: Bug in Safari for Mac OS 10.5 (Leopard) that was breaking fullscreen. &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;a href="http://videojs.com/#download" target="_blank"&gt;Download version 2.0.2&lt;/a&gt;&lt;/p&gt;</description><link>http://blog.videojs.com/post/35886359508</link><guid>http://blog.videojs.com/post/35886359508</guid><pubDate>Fri, 10 Dec 2010 00:00:00 -0500</pubDate><category>version</category></item><item><title>2.0.0 Release - Behaviors, fallback APIs, and more.</title><description>&lt;p&gt;Big update. The biggest change for current users is a move back to using DIVs for control bar elements instead of unordered lists. There were a lot of conflicting styles issues when using lists, which shouldn&amp;#8217;t be an issue with divs. So if you upgrade, don&amp;#8217;t forget to upgrade your stylesheets as well.&lt;/p&gt;
&lt;p&gt;Beyond that, a lot of code was reorganized and modularized to create a platform for further expansion, like custom plugins and controls. The concept of &amp;#8220;behaviors&amp;#8221; was added, so you can activate any element on the page to act like a video controls. For instance, the following code snippet will make the specified element act like a play button, and play the video when clicked.&lt;/p&gt;
&lt;pre&gt;myplayer.activateElement(myElement, "playButton");
&lt;/pre&gt;
&lt;p&gt;The next code snippet will make the element act like a play progress bar, meaning it will grow horizontally as the video plays.&lt;/p&gt;
&lt;pre&gt;myplayer.activateElement(myElement, "playProgressBar");
&lt;/pre&gt;
&lt;p&gt;More documentation on this is coming.&lt;/p&gt;
&lt;p&gt;The code is now prepped for APIs to the fallback flash players. So if you call myPlayer.play(), it will trigger a play in both the HTML5 and the Flash version, whichever is currently being used. A flowplayer API is just about done, and other popular Flash players will follow.&lt;/p&gt;
&lt;p&gt;Finally, you can change the fallback order by modifying the playerFallbackOrder option, which is an array of player platforms. So if you want Flash to be dominant, you would pass the following option.&lt;/p&gt;
&lt;pre&gt;VideoJS.setupAllWhenReady({
  playerFallbackOrder: ["flash", "html5", "links"]
});
&lt;/pre&gt;
&lt;p&gt;This also leaves room for other platforms to be added, like Quicktime.&lt;/p&gt;
&lt;p&gt;So coming up is Flash player APIs, and another cool feature I don&amp;#8217;t want to mention just yet.&lt;/p&gt;
&lt;p&gt;Full list:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Feature: Created &amp;#8220;behaviors&amp;#8221; concept for adding behaviors to elements - Feature: Switched back to divs for controls, for more portable styles&lt;/li&gt;
&lt;li&gt;Feature: Created playerFallbackOrder array option. [&amp;#8220;html5&amp;#8221;, &amp;#8220;flash&amp;#8221;, &amp;#8220;links&amp;#8221;]&lt;/li&gt;
&lt;li&gt;Feature: Created playerType concept, for initializing different platforms&lt;/li&gt;
&lt;li&gt;Feature: Added play button for Android&lt;/li&gt;
&lt;li&gt;Feature: Added spinner for iPad (non-fullscreen)&lt;/li&gt;
&lt;li&gt;Feature: Split into multiple files for easier development&lt;/li&gt;
&lt;li&gt;Feature: Combined VideoJS &amp;amp; _V_ into the same variable to reduce confusion&lt;/li&gt;
&lt;li&gt;Fix: Checking for m3u8 files (Apple HTTP Streaming)&lt;/li&gt;
&lt;li&gt;Fix: Catching error on localStorage full that safari seems to randomly throw&lt;/li&gt;
&lt;li&gt;Fix: Scrubbing to end doesn&amp;#8217;t trigger onEnded&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;a href="http://videojs.com/#download" target="_blank"&gt;Download version 2.0.0&lt;/a&gt;&lt;/p&gt;</description><link>http://blog.videojs.com/post/35887003151</link><guid>http://blog.videojs.com/post/35887003151</guid><pubDate>Mon, 22 Nov 2010 00:00:00 -0500</pubDate><category>version</category></item><item><title>Make sites serve you HTML5 video in Safari</title><description>&lt;p&gt;John Gruber of Daring Fireball has a cool post on &lt;a href="http://daringfireball.net/2010/11/masquerading_as_mobile_safari" target="_blank"&gt;tricking websites to display HTML5 video&lt;/a&gt; when they say they can only play Flash. Many sites will tell you they require Flash, even when they actually support &lt;a href="http://videojs.com/html5-video/" target="_blank"&gt;HTML5 video&lt;/a&gt; for iOS devices.&lt;/p&gt;
&lt;p&gt;To add to Gruber&amp;#8217;s post, there&amp;#8217;s two reasons a site might do this:&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;They&amp;#8217;re trying to protect their content from being easily downloaded, which HTML5 video can&amp;#8217;t do very well yet.&lt;/li&gt;
&lt;li&gt;They assume everyone with a browser has Flash, and just serve HTML5 video to iOS devices.&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;So for this first, this is actually a hack to download content some publishers might not want you to. I probably shouldn&amp;#8217;t be publishing this since security of the content is one of the main reasons HTML5 video will still take time to spread. But for that purpose, it&amp;#8217;s really not hard to figure out.&lt;/p&gt;
&lt;p&gt;For the second, it&amp;#8217;s kind of lazy implementation of fallbacks. It&amp;#8217;s pretty easy to check if Flash is supported, and if not, fall back to HTML5, instead of checking for a specific user agent string. So for sites using VideoJS, this method wouldn&amp;#8217;t work, but there also wouldn&amp;#8217;t be a need because VideoJS would fallback appropriately to HTML5.&lt;/p&gt;
&lt;p&gt;Gruber has disabled Flash in Safari for better performance with video. That says a lot. Most people probably won&amp;#8217;t go to same effort he has, but I know he&amp;#8217;s not the only one.&lt;/p&gt;</description><link>http://blog.videojs.com/post/35887203978</link><guid>http://blog.videojs.com/post/35887203978</guid><pubDate>Fri, 19 Nov 2010 00:00:00 -0500</pubDate><category>code</category></item><item><title>1.1.5 Release - Subtitles using track, Android fix &amp; more</title><description>&lt;ul&gt;&lt;li&gt;Feature: Switched to track method for setting subtitles. Now works like spec.&lt;/li&gt;
&lt;li&gt;Feature: Created &amp;#8220;players&amp;#8221; concept for defining fallbacks and fallback order&lt;/li&gt;
&lt;li&gt;Fix: Android playback bug.&lt;/li&gt;
&lt;li&gt;Fix: Massive reorganization of code to make easier to navigate&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;I&amp;#8217;ve switched the subtitles to use the new track element defined in the &lt;a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html" target="_blank"&gt;HTML5 spec&lt;/a&gt;. You can now add subtitles by creating a track element pointing to your &lt;a href="http://www.delphiki.com/websrt/" target="_blank"&gt;WebSRT&lt;/a&gt;subtitles source.&lt;/p&gt;
&lt;pre&gt;&amp;lt;video ...&amp;gt;
  &amp;lt;track kind="subtitles" src="../demo-subtitles.srt" srclang="en-US" label="English"&amp;gt;&amp;lt;/track&amp;gt;
&amp;lt;/vide&amp;gt;&lt;/pre&gt;
&lt;p&gt;The closing track tag is needed, otherwise Safari thinks everything else is a child of the track, even with a self-closing track tag. Not sure why that is, but it&amp;#8217;s kind of annoying.&lt;/p&gt;
&lt;p&gt;Also a fix for Android playback was added. Android HTML5 video is pretty rough. The canPlayType function returns nothing on Android so VideoJS has a check to see if the source is mp4/m4v, and assumes it&amp;#8217;ll play. Then VideoJS adds a click event to the video so it&amp;#8217;ll play when you touch it. Also the Android will show the poster image, but no indication that it&amp;#8217;s a video and not just an image. Hopefully this will be improved in the next Android version.&lt;/p&gt;
&lt;p&gt;Beyond that, I did a massive reorganization of the code, so it should be easier to navigate if you&amp;#8217;re planning to hack at it or contribute.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://videojs.com/downloads/video-js-1.1.5.zip" target="_blank"&gt;Download version 1.1.5&lt;/a&gt;&lt;/p&gt;</description><link>http://blog.videojs.com/post/35887428303</link><guid>http://blog.videojs.com/post/35887428303</guid><pubDate>Tue, 09 Nov 2010 00:00:00 -0500</pubDate><category>version</category></item><item><title>Version 1.1.4 Release - CSS Loading Spinner &amp; More</title><description>&lt;p&gt;The most notable update in this version is a loading indicator (spinner), for when the video is buffering or seeking. The spinner works pretty well, however it&amp;#8217;s limited by how accurately each browser tells us what it&amp;#8217;s currently doing through triggered events. The spinner works best in Firefox so far. Safari/Chrome are less consistent with what events are triggered and when. For this reason I&amp;#8217;m using a more careful approach that makes sure the spinner gets hidden, as opposed to making sure the spinner always shows when the player is busy. There&amp;#8217;s a few bugs I had to account for too, like when Safari throws a &amp;#8220;waiting&amp;#8221; event, but then no other event to let us know it&amp;#8217;s not waiting anymore.&lt;/p&gt;
&lt;p&gt;The spinner icon is made with CSS3 effects (border-radius and transform). The spinning animation is created with a little javascript for now. In webkit browsers the animation could have been done with CSS3 animation, but I&amp;#8217;d rather keep it consistent between browsers. The technique comes from &lt;a href="http://kilianvalkhof.com/2010/css-xhtml/css3-loading-spinners-without-images/" target="_blank"&gt;Kilian Valkhof&lt;/a&gt; with initial integration into VideoJS by &lt;a href="http://twitter.com/#!/dz0ny" target="_blank"&gt;Janez Troha&lt;/a&gt; (&lt;a href="https://github.com/dz0ny" target="_blank"&gt;dz0ny&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Other features and fixes include:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Feature: Added loading spinner.&lt;/li&gt;
&lt;li&gt;Feature: Improved styles loaded checking.&lt;/li&gt;
&lt;li&gt;Feature: Added volume() function to get and set volume through the player. - Fix: Fix issue where FF would loop video in background when ended.&lt;/li&gt;
&lt;li&gt;Fix: Bug in Chrome that shows poster &amp;amp; plays audio if you set currentTime too quickly.&lt;/li&gt;
&lt;li&gt;Fix: Bug in Safari where waiting is triggered and shows spinner when not needed&lt;/li&gt;
&lt;li&gt;Fix: Updated to show links if only unplayable sources and no Flash.&lt;/li&gt;
&lt;li&gt;Fix: Issue where if play button was loaded after play, it wouldn&amp;#8217;t hide.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;a href="http://videojs.com/downloads/video-js-1.1.4.zip" target="_blank"&gt;Download version 1.1.4&lt;/a&gt;&lt;/p&gt;</description><link>http://blog.videojs.com/post/35887609277</link><guid>http://blog.videojs.com/post/35887609277</guid><pubDate>Sat, 06 Nov 2010 00:00:00 -0400</pubDate><category>version</category></item><item><title>Version 1.1.3 Release</title><description>&lt;p&gt;Version 1.1.3 of VideoJS is now available.&lt;/p&gt;
&lt;p&gt;Probably the most notable change is a switch to using a big play button before the movie plays for the first time, as opposed to showing the control bar. The main reason for doing this is actually a bug in Safari. If you try to call any functions on the video other than play, before the video has loaded, Safari will error out. Some people mentioned that fullscreen mode did not work in Safari for them, and this is most likely what was happening for them. This would only happen if you were not preloading the video. You can still go back to showing the controls first through the showControlsAtStart option, but it&amp;#8217;s not recommended.&lt;/p&gt;
&lt;p&gt;Other features and fixes include:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Feature: Width/Height functions for resizing the player&lt;/li&gt;
&lt;li&gt;Feature: Made initial click &amp;amp; hold trigger new value on progress and volume&lt;/li&gt;
&lt;li&gt;Feature: Made controls not hide when hovering over them&lt;/li&gt;
&lt;li&gt;Fix: Removed trailing comma that was breaking IE7&lt;/li&gt;
&lt;li&gt;Fix: Removed some vars from global scope&lt;/li&gt;
&lt;li&gt;Fix: Changed a document.onmousemove to an eventListener to prevent conflicts&lt;/li&gt;
&lt;li&gt;Fix: Added a unique ID to FlowPlayer demo object to fix a FlowPlayer bug. Thanks @emirpprime.&lt;/li&gt;
&lt;li&gt;Fix: Safari error on unloaded video&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Let me know if you have any questions.&lt;/p&gt;</description><link>http://blog.videojs.com/post/35887731208</link><guid>http://blog.videojs.com/post/35887731208</guid><pubDate>Tue, 19 Oct 2010 00:00:00 -0400</pubDate><category>version</category></item></channel></rss>
