Several months ago, Google bought ON2, the company behind the successful video codecs VP6 (used in Flash) and VP7 (used in Skype). Ever since the first rumors of this acquisition emerged, the online video community has speculated what this would mean for HTML5 video and its current issues around codec support. Last wednesday, Google finally made the announcement people hoped for: it open-sourced On2's VP8 codec as part of its WebM open media project.
Immediately after the announcement, we started receiving questions from our users: What exactly is WebM? Is it better than H.264? Do I have to re-encode my videos? Do you support WebM? This blog post answers these questions, focussing on the practical implications of WebM. Feel free to comment on this post if you have additional questions - we'll keep an eye on it.
First, a little overview. WebM is the overall name of the new video format Google launched last wednesday. WebM videos have the extension .webm (e.g. myCoolVideo.webm). They contain three major building blocks:
The big issue surrounding HTML5 video - video codecs - is basically an issue of rights. On one hand there is the H.264 codec, which is of superior quality but heavily patented. End users and online video publishers do not have to pay (at least, not yet), but browser and device vendors do pay millions of dollars for incorporating H264 support. On the other hand, there's the Theora codec, which is royalty-free but of inferior quality (in fact, Theora is a heavily modified version of ON2's VP3 codec).
Like Theora, VP8 is released using an open-source, royalty free license. The license also permits free inclusion in closed-source commercial products. Because of its free license, the VP8 codec has the ability to end the HTML5 codec war and become the de facto HTML5 video codec. Like VP8, the WebM container and Vorbis audio codec are open source, royalty-free and liberally licensed.
In its current state, VP8 is not better than H.264. The quality of VP8 video is more or less on par with the lowest quality profile of H.264: Baseline. The two higher quality profiles - Main and High - offer better results. VP8 is definitely better than Theora though.
Is this bad news? Absolutely not. One could say that VP8 video simply is good enough, just like JPEG was good enough for images and MP3 was good enough for audio. On top of that, the majority of today's H.264 videos use the Baseline profile, for efficiency and compatibility reasons. For example, Bits on the Run uses H.264 Baseline because videos transcode faster and more computers (e.g. ATOM-based netbooks) can play the videos without stuttering. Also, most mobile devices (like the iPhone) only support H.264 Baseline.
It depends. If you just want to do some tests with WebM, you can get started today. Download Miro Video Converter to encode your videos to WebM. Download Opera 10.54 to play these videos using the HTML5 video tag. Here is a WebM example using the JW Player for HTML5.
If you want to use WebM in a production environment, the story is different. The ecosystem around WebM (browsers, transcoders, hardware support) is in its infancy. It will take a few years until WebM has the same level of support and end-user penetration (browsers, phones) than H.264 has today. Also expect major improvements to the VP8 quality and processing speed, and solutions for advanced use cases like live streaming or security. This year for sure, H.264 will remain to be the best option for publishing video in a production environment.
Let's start with our JW Player and its family of products. Since the JW Players are in fact middleware (written in actionscript/javascript), we depend upon support for WebM decoding in the underlying technologies:
For our video platform, Bits on the Run, expect WebM transcoding support to arrive in 3 to 6 months. We will wait for official releases of web browsers that can play WebM. Luckily, the implementation itself is fairly straightforward, since the WebM project includes an encoding library for the tool we use - FFmpeg.
As to when we will endorse WebM as the video format of choice - it depends upon the speed with which WebM will be adopted by the online community. It could be five years from now. It could also be one year from now, if WebM is adopted as fast as the <video> tag. Overall, we are very excited about WebM - both in terms of quality and licensing, it has what it takes to become the de facto format for online video.
Comments
Is there a Worpress plugin for html5? Is there a code I can get to paste into my Wordpress (self hosted) blog to publish webm format? I dont have any code experience
Interested in the potential of httml 5
Submitted by Mike on Thu, 2010-05-27 07:10.
Hi Mike,
We currently only have a WordPress plugin for the Flash version of the JW Player. In the future we will update this plugin to support the HTML5 player.
As mentioned in the blog post, webm support is dependent on when the browser's officially support it.
Thanks.
Submitted by Cameron on Thu, 2010-05-27 10:01.
Hi Guys,
Just started to follow you on Twitter after receiving your newsletter. I look forward to giving your HTML5 player a shot.
As for the new Google V8 format... I'm not impressed, I'm sure it'll get better over time, meanwhile I think it's simply going to fragment the HTML5 video market even more. Apple are pretty much going to stick to h.264 and so far Chrome is the only browser that supports all the HTML5 codecs. I'm concerned about how it could end going backwards, only this time I don't need browser plug-ins I need multiple browsers! Lol... In this situation I can't see why people would abandon Flash? As a content publisher, Flash makes it so easy and works on everything but Apple's mobile devices.
I wrote more about it http://www.ohanaware.com/weblog/2010/05/html5-v-s-flash-round-3-looks-like-flash-has-a-chance-of-bea...
Keep up the good work with your player, it makes our life a lot easier, we encode all our videos using h.264 so they work on the Apple mobile platform and use your player to deliver them to non Apple browsers.
Sam Rowlands
Ohanaware.com
Submitted by Sam Rowlands on Thu, 2010-05-27 20:20.
Sam, totally agreed. At present, HTML5 support is fragmented and Flash is still the better option.
WebM has the ability - longer term - to end this fragentation though. It is both royalty free and high quality. One indeed wonders what apple would do when WebM takes off...
Submitted by JeroenW on Fri, 2010-05-28 05:50.
I agree with some points rised here, however Webm is similar on resources requirements as is flash, that let though big companies will offer it without so much suffering after official realease.
Otherwise, h.246 isn't get better, h.246 hasn't good quality versus size, maybe even the first releases of webm can address this issue.
Submitted by Felipe Lima on Fri, 2010-05-28 13:22.
I find myself curious as to how much less/more(?) bandwidth is likely to be used for VP8 as compared say, to Flash?
Submitted by Adrian on Tue, 2010-06-08 13:23.
Excellent posting! Very informative, thanks!
Submitted by Garethj Hooper on Tue, 2010-06-08 13:35.
I was hoping VP8 would be much better. It's clearly inferior than H.264 at higher-quality settings and unfortunately that's not going to change too much:
"The VP8 and WebM specifications as released on May 19th, 2010 are final"
See: http://www.webmproject.org/about/faq/
Sure, the argument can be made that it's good enough for most web applications now but if we want a royalty-free codec that will be useful into the future as bandwidth and the average quality of video on the web improves, this isn't it.
Submitted by Darren on Tue, 2010-06-08 19:14.
@Adrian: Flash is not a video format by itself, but I presume you talk about FLV video? That's really hard to quantify, but here's some extremely rough guesses: VP8 is about 75% the filesize of the newer FLV (VP6) and 50% the filesize of the older FLV (Spark). VP8 is on par with H.264 Baseline, which can also be played in Flash.
@Darren: Agreed. It would have been awesome if VP8 was on par with or better than H264, but unfortunately it isn't. I think the quality will improve though. The spec is frozen, but the encoder(s) will get better over time. They'll get smarter in encoding files according to the spec, resulting in slightly optimized video. Perhaps VP8 will move beyond H264 Baseline coming year in terms of quality-to-filesize.
However, as you point out, bandwidth will improve. In other words, we can afford to have slightly larger files. I think performance of user agents ( CPU, battery life) will become the restricting factor, and therefore users might prefer VP8 or H.264 Baseline over H.264 High.
For high-quality entertainment, backup of originals and such, H264 High will probably be the standard. For web clips (News, UCG, etc.), VP8 seems to have a good chance.
Submitted by JeroenW on Wed, 2010-06-09 12:24.
Jeroen, can you please explain me how do you encode H264 on Bits on the run platform? It seems you are using FFMPEG but the only way I know is to use x264 lib and this lib is GPL. How do you deal with that? Is it legal?
Submitted by Erwan on Mon, 2010-06-14 04:07.
x264 can be used without problems - as long as you're not re-selling the tool yourself. So implementing this in a hosted service (like our transcoder) is no problem.
Submitted by JeroenW on Tue, 2010-06-29 13:11.
Totally disagree wih statement on H.264. Most H.264 is main or high profile and the Atom processors have video acceleration to cope with main and high profile for playback of blu-ray etc. VP8 does not have any hardware support as it too new. VP8 has not technical advantage over any of the H.264 profiles
Submitted by Sinbad on Fri, 2010-11-26 10:04.
There is some support for H264 main across devices indeed. H264 High is not really supported. For example the current iPhone Android phones do not play H264 High.
Decoding H264 High is also fairly difficult - it will drain battery. At a certain point, using a lower profile provides a better end-user experience than trying to cut down bandwidth at the expense of all else.
Submitted by JeroenW on Mon, 2010-11-29 08:17.
Post new comment