I __really__ __really__ don't get the mozilla stance here. It just doesn't make any sense to me.
Mozilla has been resisting Googles libre codecs even though they come with full source code and a patent pledge. Google has already even paid to eliminate potential threat from the evil MPEG LA. It is as free(libre) as you can get in this space.
On the other hand, the Cisco plugin is no solution at all. A binary module that has to be downloaded by each user? How can Mozilla justify recommending/requiring a binary module whose source it can not view/audit/share? This approach wouldn't be permitted under Debian Free Software Guidelines, thus ensuring that WebRTC-Firefox won't work on debian and its derivatives.
Cisco benefits from H.264 winning the standards battle. They also have patents in the MPEG LA pool. Apple, MS and Cisco - none of them are under any obligations to provide a libre implementation of WebRTC. Only Google and Mozilla have that responsibility. And they can make it happen today by just agreeing to go with VP8 and VP9 when it lands (both are covered by the patent pledge as well as under the MPEG LA agreement).
H.264 is a defacto standard already, I understand. But google, with its control of youtube and Android, can make a serious dent in that. If Moz and Google ensure that VP8 becomes the de-jure WebRTC standard, a Free software implementation of that can be released by mozilla today. No need to wait for Dwolla to come to fruition.
I'd really like to understand what I am missing here.
AFAICT, we (Mozilla) are trying to solve TWO problems:
1. We need a video codec that everybody agrees on for WebRTC.
2. We need a way to play H.264 on Windows XP and other operating systems that don't provide native H.264 playback, for compatibility with almost all HTML5 <video> content on the web.
If it weren't for problem #2, then I would agree with you more. But, really what Mozilla seems to have said is "Hey, if you provide a free H.264 decoder without field-of-use restrictions, then we'll compromise on WebRTC so we can make sure everybody on every platform can play all the HTML5 video content available on the web."
I don't have an opinion on VP9. But, there's no VP9 content on the web now. There's tons of H.264 content on the web. Mozilla got burned waiting for other players to help with WebM adoption before. Waiting for VP9 would probably just end up with us getting burned again.
FWIW, I work at Mozilla but not on this stuff, and I learned all I know on this topic from Brendan Eich's blog post.
1. Mozilla is the only browser that has no legal way to provide integrated H.264. Every other major browser is backed by a corporation and can afford the MPEG LA fee.
2. While Google probably would prefer VP8/VP9 becoming the WebRTC standard, its not like they can't do H.264. So they have been dropping the ball on pushing people towards WebM and away from H.264.
3. (Speculation) Cisco probably made an exploding offer - "We can enable legal H.264 for all your users and foot the bill for it, but only if you agree to it before the WebRTC meeting".
4. No matter what codec wins at the WebRTC meeting, H.264 content ain't going away anytime soon. Mozilla has to have it either way.
This is an interesting maneuver by the H.264 lobby. It leaves Mozilla very little wriggle room. In hindsight, I have to wonder if a better deal could have been worked out by Mozilla actively seeking a license from MPEG LA for some fixed one-time sum in perpetuity in return for Mozillas' compromise on H.264. Maybe a kickstarter could have been then done to raise the required one-time fee. Who knows - maybe Redhat, Ubuntu etc could have been asked to chip in.
"1. Mozilla is the only browser that has no legal way to provide integrated H.264. Every other major browser is backed by a corporation and can afford the MPEG LA fee."
Mozilla could afford to pay MPEGLA but that doesn't help any of Mozilla's downstream distributions and it doesn't help other developers building open source software that want to include H264 capabilities. (Not to mention that millions of dollars a year in patent fees could be better spent on initiatives like building a better video future with Daala.)
Mozilla's mission is about more than just Firefox, it's about the Web, and solutions that only work for Mozilla distributed products generally aren't great solutions for the long-term health of the Web.
Mozilla could have shelled out the cash to license patents from MPEG-LA and adopted an existing open source H264 implementation. That would certainly have been better sooner for Firefox users, and possibly for <video> on the Web, but that would not have been enough for Mozilla because we are not in this game for our own profit. We're here because the Web needs us on its side, looking out for the interests that BigCos generally won't.
Finally, there is no chance that Mozilla, even with a giant Kickstarter campaign, could buy out the MPEG-LA patents for H.264. Not gonna happen. (Unless I'm missing all the multi-billion dollar Kickstarter success stories.)
At least according to the wikipedia page, it looks like the Mozilla Foundation brings in $300M a year in revenue. I still wouldn't say that $6M a year is trivial for them, but it certainly isn't an impossible bridge to cross. Up until now the Mozilla party line has been that they don't want to pay the patent fees for reasons of principle.
So it looks to me like there was another option: bite the bullet, pay the licensing fee and distribute their own blessed binaries (they still couldn't grant a license to people building from source), then feel free to take whatever position on WebRTC they thought was best.
>Without Sun, HP, Digital and Microsoft on board Linux is dead on arrival.
I think the main reason H.264 is so popular is because of the absolutely fantastic x264 encoder. If anybody delivers something radically better (Daala promises to do) it will gain traction. See Opus. I listen only to podcasts by very technical people, and Opus took them in a storm, even without the MPEG LA.
Don't forget about Firefox OS! Imagine what impact H.264 would do there. Firefox OS and Tizen are the BigBets now, because TelCo's manufacturers don't like to rely on Google for delayed OS updates anymore. That's why these OS have a good chance of becoming as popular as android in a few years. But that's only valid, when Firefox OS and Tizen get their shit together and finally create a robust, independent, secure and most importantly not only beautiful, but usable user interface.
(Firefox does silent upgrades, just so you know. Luckily on Windows only.)
Mozilla has implemented WebM playback, but WebM hasn't gained enough traction to matter.
> But google, with its control of youtube and Android, can make a serious dent in that.
Uninstall Flash and try using a browser without H.264 codec. I have, and it sucks.
YouTube is the only major site that supports WebM, and even there WebM it's a second-class citizen (videos with ads are not allowed to use HTML5 player, and not all videos are transcoded to WebM).
Google dropped the ball here. Android still has better support for H.264 than WebM. YouTube is half-broken with WebM. Chrome broke promise of dropping H.264 — they know that a browser cannot survive without it.
And by the way, it is not possible to use Youtube without Flash Player. Some videos simply are not played with HTML player and Youtube tells you to download Adobe Flash Player :( Hope there will be some new competitor, who will offer video services without third party plugins. Maybe Vimeo?
I haven't had flash installed for years. For videos, I made a key-binding that extracts any URL's in XA_PRIMARY, launches https://github.com/rg3/youtube-dl and then plays the video with mplayer. Looks better (because the vid is full res) and never skips.
Same here. But I continue to endure a WebM only world. I miss out all the vimeo screen casts.. but so what? just means i will have to find another tutorial in text and life moves on.
It is simply a data format that is non-standard and that you have to pay for proprietary decoders. What is new about that? just because google give you that feature if you pay them with your data, does not make it free for everyone. so it is not in place for firefox.
Or should firefox charge a fee for each user? it is crazy, even so when the alternative is already existent and open standard.
what is even crazier is that they demand a payment, for a spec which only "benefit" over the open source code is that they can add DRM on top of it, so they can also charge the end user.
Arguably vimeo could make an effort here too, and do automatic transcoding and delivery to eg: webm and html5. It certainly wouldn't be trivial, but also not impossible.
Has anyone seen any recent news on why Google/youtube doesn't do this btw? The already do transcoding for different quality? And/or if they have any plans for a html5-based viewer that supports ads etc?
Almost nothing supports it. And with Apple dominating in web usage, editing tools and phones/tablets it is hard to see any format surviving without their support. And of course they are fully behind H.265.
if people had no voice youtube would still be showing quicktime or Real video.
I for one rather watch youtube (and uploads my videos there) because vimeo is a pain to watch (have to go get my closed source tablet). while youtube i can just hunt for a non-ad version that will work on html5.
I agree. This is just a move by Cisco to prevent the adoption of free codecs.
But why do you say that Mozilla resists free codecs? They are shipping with Theora, Vorbis, Opus, WebM/VP8 support and are quite active in that area. Meanwhile they were forced to adopt H.264 platform support because all other major browsers including Google Chrome and mobile platforms including Google Android use it and a large amount of Youtube videos are only available through H.264.
Google either lacks the will or capability to make a dent. If they'd ship Android without H.264 support then vendors would simply patch it back in. They said that Chrome would stop supporting H.264 but nothing happened. YouTube still uses H.264. (And Chrome stable still doesn't seem to support Opus.)
> I agree. This is just a move by Cisco to prevent the adoption of free codecs.
Well, yes. From Cisco's point of view, I'm guessing it's just ensuring that it can sell it's video conferencing gear (that users will be able to use them via webrtc etc). Much better for them than having to invest in hardware accelerated webm or whatever. Sad, but true.
>This is just a move by Cisco to prevent the adoption of free codecs.
Perhaps in part, but in addition to motives mentioned by others, Cisco obviously also benefits from increased use of bandwidth. When more people use video, it drives network equipment sales.
Mozilla has been resisting Googles libre codecs even
though they come with full source code and a patent
pledge. Google has already even paid to eliminate
potential threat from the evil MPEG LA. It is as
free(libre) as you can get in this space.
Source? As far as I can tell Firefox implements WebM for <video> and VP8 for WebRTC. In what way is Firefox resisting Google's libre codecs?
The whole idea of Mozilla and Google pushing vp8 (and later vp9) as the WebRTC standard was so that we would FINALLY have royalty free fully open source implementations which could be implemented/ported everywhere with no cost.
Atleast that's what I thought, but with this move Mozilla has shown that the 'royalty free open webstandards' which they touted as their goal was in reality 'as long as it's royalty free for _us_ to ship', as they are now switching sides one week before the voting and suddenly backs h264, which will only be royalty free if you accept a binary blob from Cisco.
I am truly disheartened by this move, and I can only assume that the hiring of Monty to work on Dalaa was just a calculated way of trying to mitigate the criticism by saying: 'look, we still believe in an open royalty free codec, sometime in the far future', which is weak as it's not as if Dalaa is even poised to compete with HEVC and VP9, but against whatever comes next.
And that is assuming that Dalaa will actually end up competitive at all, and if so, also having been able to avoid treading on the sadly insanely broad software patents that litter the video encoding field.
I think it's a huge betrayal of the principles they (Mozilla) have claimed to uphold, and the result is likely that we will end up with a binary blob for WebRTC standardisation come the vote, I'm so very disappointed.
The deal makes it free (as in beer) for everybody.
Mozilla could afford licensing H.264 for Firefox long time ago, but they've been fighting for license that allows anybody to build fully-functional Firefox fork (unlike Google — they bought H.264 for closed-source Chrome, but left FOSS Chromium without H.264 playback).
Willingness to use it doesn't affect how free (as in beer) it is. It does affect how free (as in speech) it is, but that's not what the grandparent was arguing, and there's a huge difference between the two.
Actually, assuming that MPEG-LA allows this Cisco scheme to happen then any corporation who's at the MPEG-LA yearly cap could offer this same scheme for free (and no cost to themselves) too e.g. possibly Google, Microsoft, Apple.
>I'd really like to understand what I am missing here.
You only need to look at what happened with <video> and it should be very clear just how much Mozilla can realistically rely on Google to defend VP8. Or how willing they (=Google) are to make a "dent in it" using YouTube and Android. The answer is: zero.
Firefox will continue supporting VP8 for WebRTC. But Mozilla won't block the standard on it not being MTI.
Mozilla didn't have a choice. VP9/WebM is not happening. The primary reason is almost all inter frame content is acquired or transmitted as H.264. Mobile phones, prosumer cameras, network based encoding appliances, PVR's, cable/satellite tv. No one wants to re-encode. Plus there is a lot of baked in hardware support for H.264 encoding/decoding.
Exactly. Does anyone know if there are any cheap solutions to capture in vp9 on devices such as cell phones?
I'm guessing this is Cisco's motive as well -- they want to sell video conferencing and ip video/voice-chat stuff -- and that'll have to work with cellphones and tablets. As long as almost all devices (including PCs via video hardware) have hw support for h.264 -- and no support for anything else -- we'll be stuck on h.264 for "cross platform" video.
H.264 already won over VP8. The battlefield now is now is going to be on the next generation of codecs (or even two ahead), and Mozilla puts their forces behind Daala.
> Mozilla has been resisting Googles libre codecs even though they come with full source code and a patent pledge. Google has already even paid to eliminate potential threat from the evil MPEG LA. It is as free(libre) as you can get in this space.
But Firefox supports WebM. I don't speak for Mozilla, of course, but I totally think you should use WebM over H.264. :)
Look, H.264 is the standard for online video. All Macs and Windows PCs can play it, the content industry is already tooled to provide it, and it's tough to beat on the compression front.
The fosstards who object to patent issues are a minority of a minority. Man up, pay your license fee, and comply with the fucking standard.
I don't know the exact plan since I'm not working on this, but it would be relatively easy for us to do:
1. Insist that the exact build configurations used by Cisco be open-sourced along with the rest of the code.
2. Require that every binary distributed by Cisco by tagged with the revision control revision ID.
3. Internally at Mozilla, build that revision of the code and compare the result to the binary blob that we would download from Cisco. Note we'd never distribute the outputs of our internal builds; we'd use those builds only to verify that the source code matches what we'd download.
4a: When we verify that the outputs match exactly, update some embedded hashes within Firefox to approve those versions of the binary blob for download/install, or
4b: Cisco could ask Mozilla to sign these blobs for them, and Mozilla would sign the blobs after doing the above checks. Then, the Firefox client would just verify that the blobs were signed by Mozilla's public key.
Actually, on second thoughts - yes, you are right. This could work - partially. But the other way around. Mozilla could build the blobs, sign them and then send them to Cisco who would then provide the download infrastructure.
It still won't allow a third party to verify the same and would require everyone to trust Mozilla itself. Its less problematic than having to trust Cisco, but far from ideal.
On that note: do you know if the blob download would be wrapped in a Cisco EULA?
From a person involved with this at Cisco:
"All the build scripts etc that Cisco uses will be part of the open source project so that anyone can build it them selves and check that their build matches the Cisco binary and check the code does not have backdoors to send all your video to the NSA."
http://www.ietf.org/mail-archive/web/rtcweb/current/msg09293...
They can't "supply". Cisco has the patent license with MPEG LA, not Mozilla. As per the announcement, each firefox user will have to download the blob directly from Cisco.
The main thing that you are missing is the practical downsides are very limited and that AVC/H.264 has won the war for the current generation of codecs (and did so many years again when it was baked into the silicon of the popular smartphones when iPhone and Android first launched (and it was used for Blu-ray, digital TV (in much of the world) and for many other non computer based systems. VP8 cannot be added to those devices. Practically every device supports AVC and new devices will continue to do so anyway for compatibility with existing systems and services so inclusion of VP8 would always be additional on the VAST majority of devices.
> Mozilla has been resisting Googles libre codecs even though they come with full source code and a patent pledge. Google has already even paid to eliminate potential threat from the evil MPEG LA. It is as free(libre) as you can get in this space.
Probably true although Nokia wasn't in the MPEG-LA VP8 pool and was bringing legal action. Not sure where this went but it might still be "as free(libre) as you can get in this space" without reverting to MPEG1 on which the patents should be expired by now.
> On the other hand, the Cisco plugin is no solution at all. A binary module that has to be downloaded by each user? How can Mozilla justify recommending/requiring a binary module whose source it can not view/audit/share? This approach wouldn't be permitted under Debian Free Software Guidelines, thus ensuring that WebRTC-Firefox won't work on debian and its derivatives.
As others have said it is auditable and open source. Debian could offer an option to download or not include it either leaving nothing or offering an non patent licensed FFMPEG decoder or the Cisco one without license or others.
Actually source distribution is probably not patent infringement and neither is personal use so for many people they could freely build from source themselves. Businesses may need to use the Cisco binary or otherwise procure a license.
Practically there is no barrier even if there is an ideological one. I don't expect Stallman to use the Cisco binary although few of us adhere as consistently to the free software lifestyle (and even he makes practical compromises sometimes).
> Cisco benefits from H.264 winning the standards battle. They also have patents in the MPEG LA pool. Apple, MS and Cisco - none of them are under any obligations to provide a libre implementation of WebRTC. Only Google and Mozilla have that responsibility. And they can make it happen today by just agreeing to go with VP8 and VP9 when it lands (both are covered by the patent pledge as well as under the MPEG LA agreement).
Cisco mainly win by being able to sell gear that is compatible everywhere without needing to bake in two codecs and have transcoding gear everywhere for when a Firefox/Chrome wants to talk to a phone user.
> H.264 is a defacto standard already, I understand. But google, with its control of youtube and Android, can make a serious dent in that. If Moz and Google ensure that VP8 becomes the de-jure WebRTC standard, a Free software implementation of that can be released by mozilla today. No need to wait for Dwolla to come to fruition.
It is an international standard too. Google could have made a dent in it a couple of years ago at the cost of some real fraction of Youtube traffic and revenue but it didn't. Moz and Google cannot ensure VP8 becomes the de-jure WebRTC standard because of the existing mobile hardware. [I haven't been following Dwolla so no comment on that].
> I'd really like to understand what I am missing here.
You are missing that AVC won the battle for the generation of video codecs we are currently using at sometime around 2005. (The competition at the time was VC-1, Xiph's video codecs were nowhere near at the time).
You are missing the practical benefits of ubiquity and especially mobile the benefits of hardware support.
I hope Monty is right and that Daala is going to be sufficiently better than HEVC in time to be relevant for the next generation and that it is free of patents. If that doesn't happen we will need to wait for about 2015[1] for a truly free and Free video ubiquitous video codec and that will be AVC when all the patents have expired.
[1] Estimate, I haven't checked the expiry dates, all should have been filed well before then but the grant dates are also critical.
Mozilla has been resisting Googles libre codecs even though they come with full source code and a patent pledge. Google has already even paid to eliminate potential threat from the evil MPEG LA. It is as free(libre) as you can get in this space.
On the other hand, the Cisco plugin is no solution at all. A binary module that has to be downloaded by each user? How can Mozilla justify recommending/requiring a binary module whose source it can not view/audit/share? This approach wouldn't be permitted under Debian Free Software Guidelines, thus ensuring that WebRTC-Firefox won't work on debian and its derivatives.
Cisco benefits from H.264 winning the standards battle. They also have patents in the MPEG LA pool. Apple, MS and Cisco - none of them are under any obligations to provide a libre implementation of WebRTC. Only Google and Mozilla have that responsibility. And they can make it happen today by just agreeing to go with VP8 and VP9 when it lands (both are covered by the patent pledge as well as under the MPEG LA agreement).
H.264 is a defacto standard already, I understand. But google, with its control of youtube and Android, can make a serious dent in that. If Moz and Google ensure that VP8 becomes the de-jure WebRTC standard, a Free software implementation of that can be released by mozilla today. No need to wait for Dwolla to come to fruition.
I'd really like to understand what I am missing here.