Google Chrome's H.264 support not true "free" software
ianweller.org
ianweller.org
What we need is a catchy domain name, some marketing and a few devs and the spice shall flow again.
Nobody gives a shit about distributing the x264 source code, and only the fosstards even have a hiccup about distributing binaries, especially from hosts outside the US. Ubuntu may not ship with the gstreamer plugin, but it does prompt you to download it the first time it's asked for by an application.
- A large chunk of the rest is directly or indirectly enabled, possible or cheaper thanks to them.
- Every one I have met in person has been polite about their goals, and while they base them on fundamental principles I don't quite agree with, their reasoning as based on those principles is rock solid.
As such I think they deserve a little more respect than being called names, especially here. When was the last time you saw a start-up that used no FOSS software?
The vast majority of people writing GPL software do not align with the FSF's ideology, the GPL2 is just the most practical for their needs. Note how noone outside their core commune has switched to the GPL3, and how noone actually deeds the copyright for their random projects to the FSF like they recommend in the license text?
The only hard-GNU software I (and most others here) really use are GCC, coreutils, bash, and readline. Incidentally I'm hoping to be able to ditch all the first three in the near future for quality reasons mostly borne of FSF-pigheadedness (though I would like to swap out readline when that's the only GPL lib in a program). If I switch back to a Mac I'll be able to use better alternatives for all of them quite soon.
... or just use system codecs.
besides I'd guess Google would be happy to have h264-supporting Firefox, and end this farce, so getting some kind of sponsorship from big G wouldn't be that improbable.
They support not only H.264--which has a relatively reasonable, low-cost licensing system--but many formats whose licensing models are absurdly overpriced and unreasonable (e.g. MP3). And furthermore, VLC not only supports open standards like H.264, but also plenty of proprietary formats, like VP6, MSMPEG4, and Real Video.
They don't pay a cent to anyone.
Regarding Patentable Inventions, the second paragraph of article 52 of the European Patent Convention (EPC) states:
The following (..) shall not be regarded as [patentable] inventions: scientific theories and mathematical methods; (...) programs for computers (...).
The VideoLAN project only provides software, i.e. "programs for computers". Those are outside the scope of patentability. Hence there is not need to obtain any patent licenses for VideoLAN software within the European Union. In other venues, please check any applicable law.Please note however that the combination of software with hardware may yield something patentable. As such, if you do make a hardware product with VideoLAN software, you may conceivably need to obtain patent licenses for the hardware parts.
..and in so doing they have intentionally crippled their browser's ability to play one of the most widely used video formats. To some of us, this sounds like a dumb move. Hence "get with the program", that program being the one where you attempt to build the best software for browsing the web.
I'm not an adobe defender by any means, but the practical consequence of this is that there exists a lot of Free Software that supports PDF and PostScript (like Ghostscript) and ships with all distros. The situation for H.264 is hardly similar.
Perhaps no one remembers 8hz-enc or why the LAME project doesn't distribute binaries (or at least didn't for a long time; I've not looked lately). The story for MP3 players wasn't a super happy one either at one time.
I value the runtime on my battery operated devices enough to pay $0.20 for an efficiently decoded format.
(Maybe that is more than $0.20. Depending on volume the H.264 is $0.00, $0.20, or $0.10, but I think there is a base license also required that I can't find. In any event, adding H.264 to a computer probably costs less than half a can of beer.)
http://www.mpegla.com/main/programs/AVC/Documents/AVC_TermsS...
And remember, I am still allowed to do anything I want with the code. I just have to give MPEG-LA half a can of beer do it.
"And remember, I am still allowed to do anything I want with the code. I just have to give MPEG-LA half a can of beer do it." Then free software would'nt be ablo to be free software. You cannot preserve freedom this way.
This is the problem right here; you used a term without bothering to mention that you're using a very specific definition of that term. In your view "freedom" does not mean maximizing my rights to do things with the software; instead, it involves deliberately limiting my rights in order to force me to pass along (your definition of) "freedom" to others.
There are definitions of freedom, many surprisingly common, which do not include that little quirk, and you'll find that "give up some of your freedom for someone else's sake" is, to many people, like saying "pay higher taxes so someone else can benefit".
The license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license shall not require a royalty or other fee for such sale."
But I think it is going to be cheaper for them to spend a 100 million or so and buy out a top-end video codec developer and release the codec as open source.... or did they ?
Let me be clear: I welcome your rebuttal, and I will read it with an open mind. What I will not do, for you, for Mozilla, or any of the multitude in the Free Software movement and elsewhere that use this tactic is sit and wring my hands about how I'm no longer in the freedom-valuer's club or try to claw my way back into proper thought by hemming and hawing and qualifying my opinion until it is meaningless.
How using H.264 would be beneficial to free software and open standards?
This is really about how much you value your freedom. About at what point you will abandon your freedom for any other advantage, such as hardware support (proprietary drivers in the linux kernel for instance) or performance (h.264 vs theora in this case). So this more about being willing to sacrifice a little bit of performance for your freedom than looking for best performances at all costs. Theora is getting continuously improved and is catching up little by little. They may also be some other company releasing some other codecs under free software-friendly licenses, who knows? But in the mean time, what is more important to you (as a user, in general): performance or freedom?
So if you don't care about your freedom, it is understandable you wouldn't care less about theora vs h.264. If you would care a little bit more, you would be ready to compromise on some parts, and if you have a long beard, you wouldn't compromise at all.
And I am also wondering, if mozilla starts accepting patented or proprietary technologies, where would you draw the line? How would you ensure Mozilla's products remain free (as in freedom)
I don't know what to make of most of your second paragraph, as I've made no argument about performance. I'm talking about the simple fact that Firefox users cannot view certain content that is being deployed on the web today (h.264 in <video>) because Mozilla has chosen to use the size of its user base to "encourage" the adoption of Theora. This is not freedom. This is stupid.
if mozilla starts accepting patented or proprietary technologies
Nobody is saying they have to. There are a half dozen other comments in this thread explaining better than I could that Mozilla could support other codecs without tainting their own products if they chose to. The problem is that they are choosing not to and that hurts users to no good end.
Repeating "stupid" and "dumb" over and over will not make it real. They don't restrict anyone either, they just stick to their values.
They don't restrict anyone either
They do. They have chosen to implement <video> in such a way that users are unable to use it in conjunction with any other format than Theora. Not because users asked for it, not because it's useful, but because they want to push Theora.
they just stick to their values
I'm not passing judgement on their values. I'm passing judgement on their actions.
And then, how would you qualify apple by not supporting theora in safari? They are keeping their users from watching videos from wikipedia. You still end up with a big mess.
Newsflash: everybody's do. That doesn't automatically excuse them from doing stupid things in the name of those values. This is why again and again I keep pointing to the fact that I am criticizing their actions and not their values. You keep assuming that the values that Mozilla espouses can lead to one and only one possible course of action and that that is automatically the right one. I am saying that this is not so, and I'm pointing to the fact that users are being harmed and no good is coming of it as a sign that it wasn't the right choice.
how would you qualify apple by not supporting theora in safari?
The difference is that with Safari you can install Theora on your system (http://www.xiph.org/quicktime/) and it works just fine in <video> and everywhere else (and yes, it works on Wikipedia.) Apple simply doesn't ship Theora which is a much more benign way of "not supporting" something than disabling it altogether. Mozilla, on the other hand, has specifically chosen to prevent users from using anything other than Theora in conjunction with <video>, and not because it's not possible to do it any other way.
Blaming the user is not a strategy the results in good software. I contend that it does much to hurt the cause it it supposed to promote. You're also blaming the user for something they can't control: the format of the content they're trying to view.
Moreover, it isn't simply a patent-encumbrance issue, as Mozilla's choice has been to equally block other patent-free formats. It's Theora or nothing. Read that again and then tell me it's all about freedom.
Simple as that.
It isn't, in fact. Most of the video content on the web today is in patent-encumbered formats, specifically h.264. You're saying that users should not want to continue to be able to view the content is already out there.
It is not the place of a web browser vendor to punish users for wanting to use the web normally. In fact, quite the opposite.
There already been enough mess by formats supported by browser X but not Y.
...and Mozilla is demonstrably perpetuating that mess by only supporting a format that nobody uses and nobody wants to use. Meanwhile all major operating systems currently support h.264 natively, all major video sites use h.264, and all other <video>-supporting browsers support h.264. If Mozilla wants to help clear the mess, they're doing exactly the wrong thing.
I agree that ironically they could still use flash to access youtube (even though they eem to take all the votes for theora in consideration), but there are also big websites using theora such as dailymotion or wikipedia. But there is a huge differene between a html tag and a plug-in.
The burden of what? Deciding what video content is acceptable? Like I said before, that should not be Mozilla's role, but it's the one they've taken on.
they wouldn't be aware of patent issues and wouldn't care
Restricting them to Theora doesn't change this, as sites will continue to deliver h.264 through Flash to user agents that don't support it natively. I contend that Mozilla's approach to "educating" users about these issues is a bad one that fails to educate.
there are also big websites using theora such as dailymotion or wikipedia
DailyMotion also uses h.264 for every other platform. Wikipedia's reasons for using Ogg are very specific to Wikipedia's aims. Neither of these constitute a good reason to artificially restrict users to only Theora.
But there is a huge differene between a html tag and a plug-in.
Yes...and? What's your point?
The burden of dealing with patent encumbered formats. Someone would have to pay or it would remain illegal. As Firefox developers develop Firefox, they have their say in what do or don't do Firefox. And even if they pay it wouldn't be free since there would be strings attached.
"Yes...and? What's your point?"
My point is simple and has remained the same from the very beginning: h.264 is not compatible with an open and free (as in freedom) internet. Therefore implementing h.264 is either not compatible with free software, not an issue in countries where software patents don't exists, or done in an illegal manner. So here we go again: How much would someone value his freedom?
This guy explains it in much better terms than I could: http://shaver.off.net/diary/2010/01/23/html5-video-and-codec...
They already do this by letting users install Flash -- in fact, they make it particularly easy to do so, patent-encumbered though it is. And as I've pointed out before, they use Flash to play h.264 video anyway. The difference with <video> is that Mozilla is actively forbidding users from passing that supposed burden onto the operating system vendor, who in the case of Windows and Mac OS X, have already licensed h.264. In the case of free software operating systems, users can choose whether they want to have support for h.264 or not, just as they have for years with any number of other patent-encumbered formats.
And once again, we're not merely talking about patent-encumbered formats, as Mozilla prevents users from using non-Ogg patent-free formats like Dirac and Flac.
My point is simple...
You didn't actually answer my question. You keep mentioning things and then forgetting them entirely. Please just make a coherent argument or stop replying. If you're not going to talk sense, you're wasting time for both of us.
Therefore implementing h.264...
It has been made abundantly clear that they don't have to in order to allow users to use it of their own free will. Just as Apple did not have to implement Theora in order to allow users to view Theora content in <video> if they choose to do so.
This guy explains it in much better terms...
He didn't, actually. He made a lot of emotional appeals that fly in the face of reality and then breezily dismissed every other argument in a single concluding paragraph. I know this because I already read it: http://news.ycombinator.com/item?id=1073718
Flash (or any other proprietary thing such as activex) is not part of the html or maintained by W3C. It is controlled by a private company. Flash is a proprietary technology installed as an extension for browser. What flash does is irrelevant. If people wish to only published information under proprietary extensions and limit the scope of their work, that's their problem. But introducing non-free (as in freedom) part in basic protocols is another story. Internet should be open to anyone. So please, don't mix up proprietary extensions and standards published bu W3C, which should remain open.
Regardind Mozilla's choice, it is their choice to not support patent encumbered formats. Some approve (like me), some don't. If you wish to fork it, go ahead, code is free.
About other patent-free formats: "Dirac is great. At some point we'll probably add Dirac support. However, at typical Web bit rates, Dirac doesn't currently perform as well as Theora. The patent situation with Dirac is also currently less clear than with Theora. We'll keep an eye on it." from a mozilla developer.
"You didn't actually answer my question. You keep mentioning things and then forgetting them entirely. Please just make a coherent argument or stop replying. If you're not going to talk sense, you're wasting time for both of us."
I am not here to answer all your questions :) I don't like to waste my time either so I only answer interesting parts.
"It has been made abundantly clear that they don't have to in order to allow users to use it of their own free will. Just as Apple did not have to implement Theora in order to allow users to view Theora content in <video> if they choose to do so."
And as it has also been made abundantly clear (but not enough apparently), Mozilla is fighting to keep an open web. So yes, it tries to weight in and try to keep out patent encumbered formats in core protocols. But that's why Mozilla exist: http://www.mozilla.org/causes/ and http://www.mozilla.org/causes/better.html
"He didn't, actually. He made a lot of emotional appeals that fly in the face of reality and then breezily dismissed every other argument in a single concluding paragraph. I know this because I already read it: http://news.ycombinator.com/item?id=1073718
"He didn't, actually. He made a lot of emotional appeals that fly in the face of reality and then breezily dismissed every other argument in a single concluding paragraph. I know this because I already read it: http://news.ycombinator.com/item?id=1073718
Would have it been easier for you if he had he written "I want to make sure that for anyone, there isn’t a big piece of it (video) that they can’t afford to participate in." ?
What on earth are you talking about? The issue as it pertains to the spec was decided over six months ago. Here is the post by the editor of the spec saying so: http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-Jun... Neither h.264 or Theora are part of the HTML5 spec. The spec is open. Nobody is trying to force a proprietary format into the spec. For that matter, I don't recall anybody ever trying to get h.264 made part of the spec. <video> was format-agnostic from the start, just like <img>. Honestly, I have no idea where you got the idea that anybody was trying to add proprietary extensions to the spec--even Mozilla hasn't claimed that--you really don't seem to be familiar with the subject at all.
You also completely missed the point with Dirac. The point is that they are actively blocking their users from using it along with every other format except Theora. Nobody gives a shit about whether Mozilla implements it--they just want to be able to use whatever formats they like without having Mozilla play the role of Daddy--a role that nobody asked them to play and which does not follow naturally from their previously espoused values.
Mozilla is fighting to keep an open web
You're doing that thing again where you pretend that everything Mozilla does is automatically the right thing just because they claim it helps freedom. I am saying that that this mistaken, and have cited a very specific thing that they have done and many specific reasons why I think so.
All you have done here is repeat your first comment, which was bullshit fanaticism that has more to do with scaring people than it does reality.
try to keep out patent encumbered formats in core protocols
Nobody is trying to put h.264 in HTML5. Where did you get that idea?
You also completely missed the point with Dirac. The point is that they are actively blocking their users from using it along with every other format except Theora. Nobody gives a shit about whether Mozilla implements it--they just want to be able to use whatever formats they like without having Mozilla play the role of Daddy--a role that nobody asked them to play and which does not follow naturally from their previously espoused values."
If you would stop twisting what I say, that would really help conversation. Where did I say h.264 is part of any spec? How is it difficult to understand the difference between flash and codecs for <video>?
You may not give a shit about what Mozilla role is but "Mozilla believes the Internet is a global public resource, open and accessible to all." And they intend to keep it that way.
"You're doing that thing again where you pretend that everything Mozilla does is automatically the right thing just because they claim it helps freedom. I am saying that that this mistaken, and have cited a very specific thing that they have done and many specific reasons why I think so."
So far, you have only talked about how stupid it is because it's not their role (despite it's written in big on their website), people would use flash (which is not to be confused with html) or users cannot view h.264 content (how surprising). So what is your universal solution? How could you ensure any software (or even browsers derivating from Firefox) will be able to freely access all content on Internet? Just using whatever backend available isn't enough in USA.
"All you have done here is repeat your first comment, which was bullshit fanaticism that has more to do with scaring people than it does reality."
Of course it's easier to call other names than providing actual facts and logical reasoning. Again, as it is written in big on Mozilla's website: "Mozilla believes the Internet is a global public resource, open and accessible to all." So unsurprisingly, they push back patent encumbered format because there is no good way to guarantee "the Internet is a global public resource, open and accessible to all" with patent encumbered formats. If you have a solution for that, don't hesitate to share it, it would be very welcome by everyone.
It's the best of both worlds; you stay free and you get to be compatible.
Firefox won't use system codecs because they might be insecure, they might be buggy, and Mozilla wants to encourage Web authors to use Theora.
This does not address the original objection. Calls to the Mac and Windows are not known to be any less buggy or insecure than calls to the h264 APIs. So why accept one and not the other? The only sane answer of course is that you can't build an app at all without calling the OS basic APIs of your host machine, but you can try to have an ugly work around h264.
That seems to be working so well. Really they're just encouraging users to not use Firefox. The user chose to have those codecs on their system - either by installing and OS that comes with it, or installing the codec itself.
Let the user chose what codecs they want to support.
They're just assholes. If software patents are repealed in the US they'll mourn the loss of the mainstay excuse with which they force earnest activist wankery on their users. If patents were the real obstacle they'd distribute the x264 decoder to/from locales where the patents are unenforceable, and/or fall back on system libraries.
Their present actions serve only to strengthen the Copyright, Patent, and Trademark status quo, because without IP assholery they would neither have a soapbox to stand on nor an enemy to fight.
Sorry, this may seem like nit-picking, but such a fundamental mistake makes it harder to take your strong claims about Mozilla's design and intentions at face value.
There are plenty of other containers, audio formats, and video formats that are believed to be mostly patent-free; the same status as Theora. Firefox won't support any of them. Not Dirac the video format, not Matroska the container format, not FLAC the audio format, and so forth. Despite the fact that, for example, Matroska is far better-designed, more capable, and more popular than Ogg.
Mozilla could care less about patents: all they want is to promote their pet solutions at the expense of everyone else.
Chromium's approach to this is slightly better, but it's not all there yet. (Speculating here) Google can afford to distribute Chrome binaries with license protection, but they most likely track the total downloads in order to pay the fees. They cannot easily track the source, which is why Chromium doesn't ship with h.264 either. However, it uses ffmpeg, so if your system ffmpeg has h.264, you'll be able to use that (after this is fixed: http://code.google.com/p/chromium/issues/detail?id=21318)
Ideally, that's the approach Mozilla would take, too. If not, as other posts mentioned, the distros that are willing to distribute non-free will eventually solve the problem.
As they say: Patches Welcome.
I do, which is why I am so critical of Mozilla's "solution" to it, which has confused the issue of not being able to ship h.264 support for the reasons you mention with trying to promote a format that (whatever its merits) nobody wants.
Ideally, that's the approach Mozilla would take, too.
Indeed, it would be, but my understanding is that they are unwilling to do so or unable with their current code, due to the dumb (IMHO) decision to pressure people into using Ogg.
Nobody wanted it then, nobody wants it now. The dumping could even be seen as a brilliant strategic move to troll the hell out of the market for codecs by building a community of earnest activists yelling at everyone.
Clearly someone wants it, as it was created.
This is very presumptive when talking about an open source project.
The important questions are whether it is useful enough to merit inclusion in a browser, and whether it's useful enough to outweigh the downsides.
There are a lot of directions this could go, but let me make clear that I'm not against supporting Ogg Theora. I'm also not insisting that Mozilla include h.264 support in their products. I'm against limiting support to only Theora on ideological grounds, which is what Mozilla has done. That turns it into a question of whether it's useful and advantageous to actively prevent the use of all other codecs.
Given that h.264 is already the most widely used codec on the web (while Theora is among the least) and that YouTube and Vimeo, two of the largest video sites, have already started supporting it (and not Theora) in <video>, I think it's clearly not in the interests of users to block them from using it.
I did a bit more research, and found this[1] bug. Mozilla explicitly rejected using ffmpeg on mostly-ideological grounds. So, I guess there's plenty of blame to go around. They're still bound by software patents, but they could allow their users the ability to choose, and they refused.
... So I guess that means we're now in violent agreement. :)
Their implementation is designed to make it extremely difficult to swap in other codecs from a plugin or straightforward patchset. You'd have to fully fork at least Gecko and XULRunner, and extend Firefox. Due to their strong Trademark policies, your fork couldn't use their names or logos (see also: Iceweasel).
EDIT: Looks like someone's already blazing that trail[3]. They're using gstreamer, but the research they do for that will show anyone how to add a new one.
--
1) http://hg.mozilla.org/mozilla-central/file/b27f05c8743b/cont...
2) http://hg.mozilla.org/mozilla-central/file/b27f05c8743b/cont...
Mozilla wouldn't need to distribute h264 decoder. It should allow using 3rd party decoders, either by using system APIs (GStreamer, DirectShow etc) or exposing somekind of plugin interface.
> As they say: Patches Welcome.
Patches haven't been welcome.
Separation of concerns.
The vast majority of people I know in FOSS, both users and developers, could care less about patents. The apparent "FOSS position" comes from a vocal minority, not the majority of FOSS users and developers.
"The" H.264 patent? I have, sadly enough, the MPEG-LA agreement here, and there have got to be 25 pages at least simply listing patent numbers, with expiry dates ranging from very soon to a long time from now.
MPEG LA supporters
So everyone who is against Mozilla's attempt to force crappy software on us using the excuse of patents is an "MPEG LA supporter"? Some of us simply don't care about patents, as hard as it might be to believe for some.
It's not like Mozilla in any way had any influence on their websites becoming popular, nor will they be affected at all if browser user agents change from Firefox -> Chrome.
Interesting leap of logic.
Right now: Firefox is the only platform-neutral web browser. Firefox on Linux and Firefox on Windows are supposed to be the same browser.
Using OS codecs changes that, which means a Windows shop can test Windows browsers, but no (reasonable) way to test Linux browsers.
So long as there is a platform-neutral browser, browsers have to work similarly.
If you remember: Microsoft IE for mac and for windows operate so differently that they must be developed for as separate browsers, and yet banks regularly told people to use IE (despite the fact that IE on the mac didn't work either- and the bank programmers had no way to test it).
Content producers earn on eyeballs, and if 10-50% of their users aren't seeing what they want them to see, they'll adapt: browser sniff, flash fallback, or whatever it takes.
As a result, video will remain complicated. Maybe Apple and Microsoft can be pressured into supporting OGG, or maybe their users can be prompted to get higher quality video by downloading some codec or plugin. Maybe a technology like ChromeFrame will become popular.
Mozilla's obstinate asshattery around <video> is the biggest present obstacle to getting rid of Flash Video. It's entirely possible that the next IE will ship with full support, and then Mozilla will be the very last obstacle.
The submission is a reaction to a reaction to YouTube and Vimeo now supporting HTML5 <video>, which enables users of Safari and Chrome to use those sites without Flash. Today, right now.
Firefox users, on the other hand, must continue to use Flash, due to Mozilla's decision to ask the world to revolve around them.