Hardware-Accelerated Ogg Theora For Firefox Mobile
An anonymous reader writes "Matthew Gregan is working on bringing David Schleef's DSP accelerated port of Theora to Firefox Mobile. He writes on his blog: 'The C64x+ DSP is often found in systems built upon TI's OMAP3 SoC, such as the Palm Pre, Motorola Droid, and Nokia N900. Last year, Mozilla funded a port, named Leonora, of Xiph's Theora video codec to the TI C64x+ DSP. David Schleef conducted the port impressively quickly and published his results. The intention of this project was to provide a high-quality set of royalty-free media codecs for a common mobile computing platform. The initial focus is Firefox Mobile on the N900, so I am working on integrating David's work into Firefox. To experiment with other facilities Firefox could use to accelerate video playback, and test integration, I've been hacking on a branch of a stand-alone Ogg Theora and Vorbis player originally written by Chris Double called plogg.'"
I have no idea why Firefox still fights against the giant and loses money and time on it. Great, they got hw-accelerated Theora to one single mobile phone. What about all the televisions, other mobile phones, computers, airplanes, PS3, 360, and everything else under the sun that has H.264 hw supported? It's a lost battle.
If I were them, I would seriously start concentrating on the next generation of video codecs. It might be closed H.264 for now, but if you want to get an open source product out there, you have to make it technically better, make sure (and contact!) companies to support it in their products, and just do marketing and PR.
Open source has some advantages, but if it's technically lesser and doesn't work with companies, it's not going to win.
But even if it is bad now because it is free/open and being used, is it not very likely to improve in the future?
But I know very little about the format, maybe it is just fundamentally flawed.
Troll is not a replacement for I disagree.
In my mind, hardware accelerated means using fixed-function, special purpose functional blocks in silicon. Saying that using a DSP is hardware acceleration for video codecs is like saying that software is hardware accelerated by the execution units of a CPU.
It is fundamentally flawed. And, sure, the encoder might improve (even if this does not solve the fundamental problems), but with time passing by, people embracing Theora will be stuck with a lesser and thinner experience, while the rest of the world plays grande ball with the H.264 format and the superior encoders available for it, while Theora falls behind and Firefox loses ground.
I can't tell if you're being serious or trolling.
Change is certain; progress is not obligatory.
It's great seeing the benchmarks showing the CPU usage dropping from 99% to 1%, but at the same time the DSP and GPU usage is going up by some unstated amount. It would be really great to see some comparison of how this effects the battery life. Playing MP3s on the C64x can be done in a bit under 15mW, but Theora is a lot more complex and doing the colourspace conversions and compositing on the GPU is going to add a bit too. I'd expect the power usage to be lower than doing it on the CPU, but maybe not by a huge amount.
Either way, it's great that they can free up the CPU to do other stuff. 0.4% of the ARM core isn't really enough to run the scripts that typically accompany a web page that uses the video tag, 99% almost certainly is.
I am TheRaven on Soylent News
Theora isn't bad. It's better than MPEG-1 and a MPEG-2, and similar quality to MPEG-4 part 2. It's not as good as H.264, VC-1, or Dirac, but that's not the same as being bad. It's perfectly acceptable for a lot of uses.
I am TheRaven on Soylent News
I think he is serious, and so am I.
Theora is a shitty format. I wrote a long post about it before, but like the parent stated, it's fundamentally flawed. You can't improve it because of the initial design and its limitations.
If we want a open source codec, it's way better to support VP8. You do know that Theora is based on VP2, right?
I'll admit that Theora isn't the greatest video codec. But it's been explained many times that Mozilla simply can't use MPEG-4 AVC/h.264 because of the patents involved.
Mozilla and wider Open Source world has three options: (not mutually exclusive)
But no amount of whinging will make them use AVC/h.264. It's simply not an option at the moment.
VP3. One bigger.
This is a good example how open systems drive innovation. Allowing people to tinker with the device (root access, access to the DSP) attracts hackers, which in this case lead to DSP accelerated Theora video decoding. It's quite fitting that Apple is resisting Theora in HTML 5, mainly because their devices don't have accelerated Theora decoding (this is what I assume). While at the same time the restrictions imposed by Apple make it impossible to develop something like this for their iCrap devices (apart from not having root access, no API for accessing the DSP, it would also violate the developer agreement.. since you need some DSP assembly, which is not an approved language).
I still don't understand his comment, because if we do what he suggest, and look towards Google:
http://mobile.slashdot.org/story/10/04/10/1147254/Google-Funds-Ogg-Theora-For-Mobile?art_pos=8
Seems Google's view opposes his.
Change is certain; progress is not obligatory.
Mozilla can use AVC/H.264. They just need to do it via the OS, like I think IE and Safari will do, and Opera already does. H.264 is already directly supported on Windows 7 and Mac OSX. Linux users need to do their tricks, like with MP3.
That sounds like the worst possible solution, because then you'd have Firefox working differently on different platforms. I sure don't want to go back to the Bad Old Days where FF on Linux couldn't view the same media as FF on Windows.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
Will this work be adaptable to the VP8 codecs should Google open source them?
We need a backup in the case H.264 patent owners start collecting some money when H.264 is spread everywhere. If I understood right, the current permission to use H.264 freely in free web content is just temporary and ending December 31 2010! Developing and optimizing these codecs take time, so better start working now. In fact we should hurry!
Also the situation is very similar to using OpenOffice-threat to blackmail discounts for Microsoft Office. So even if you happen to like H.264 more than Theora, this development is a win for you (unless you happen to be H.264 patent owner).
One phone is a good start. If you carefully read the introduction, it says that C64x DSP is quite common. The optimization just have to be taken into use. N900 just happens to be the most open phone right now so it is a natural first target.
Also well working and hardware optimized codec brings some pressure to hardware optimize also H.264 for common platforms.
Mozilla can use AVC/H.264. They just need to do it via the OS, like I think IE and Safari will do, and Opera already does. H.264 is already directly supported on Windows 7 and Mac OSX. Linux users need to do their tricks, like with MP3.
They only way they can do as you suggest is by severely compromising Firefox. This has been answered exhaustively many times. See Mike Shaver's blog post about it. To quote:
People have raised questions about using existing support for H.264 (or other formats) that may already be installed on the user’s computer. There are issues there related to principle (fragmentation of format under the guise of standardized HTML), to effectiveness (about 60% of our users are on Windows XP, which provides no H.264 codec), to security (exposure of arbitrary codecs to hostile content), and to user experience (mapping the full and growing capabilities of to the system APIs provided); I’ll post next week about those in more detail, if others don’t beat me to it.
Security is not to be underestimated. It's worth noting that IE9 will not support all media formats supported on the host operating system, purely to limit the attack vector surface area available. See this comment by Microsoft's Frank Olivier on the IE blog. He's talking about image formats but the same applies to video formats:
We've not heard many requests for additional image types - to limit the attack surface in a web browser, it is a good idea to not expose more decoders.
See also Chris Blizzard's blog post about the decision to only support open video in Firefox. And most importantly of all, don't worry about. Open video is the way forward for video on the web. Theora is here now, VP8 may be joining it next month, and Dirac may join both in the future.
They made their point quite clearly.
They can't embed the codec and remain truly Free software.
Second, while they could link to platform-provided codecs, it's a support nightmare.
Third, it would legitimize patented crap.
That's currently the situation with plugins. They're pieces of object code, so you're dependent on the plugin developer to provide you with a version for your OS/architecture. For example, Flash (something that HTML 5 and the video tag could replace) is (AFAIK) only available on three mainstream platforms - Win/x86, OSX/x86, and Linux/x86. There's a beta version for x86-64 and special versions (Lite?) for embedded devices, but that's pretty much it. As for the Quicktime plugin, there's no Linux or *BSD support at all (mainly because there's no QT on those platforms), although there's plugins that use VLC or totem, etc instead.
Now, lets look at Firefox. The Debian iceweasel package (Firefox without the branding) is listed as being available for 14 architectures (not counting the unofficial 68k port that languishes at 2.0). That includes x86-64 for your latest AMD64/Intel64 machines, armel for your portable ARM devices, powerpc for your old G3/G4/G5 PowerMacs, and a bunch of other architectures too. None of those are supported by Adobe or the many other companies that have, over the years, tried to lock us into their proprietary software with binary-only plugins. So I'm siding with Mozilla for some very practical reasons. Theora's not the best out there, but I'd prefer the web to be open to all.
the rest of the world plays grande ball with the H.264 format and the superior encoders available for it
Up until Dec 31, 2010 when the patent holders have stated that they're ending the royalty-free period and it becomes the GIF of the video world.
You can bet that with all the money youtube loses now, Google ain't going to pay for millions of H.264 videos and H.264 will literally disappear overnight. I'm sure Google is working overtime on getting that shiny new codec they just bought into chrome, if not firefox. Perhaps they'll write a flash player for it too.
If I have been able to see further than others, it is because I bought a pair of binoculars.
Please check your facts on the licensing dates, they changed in February.
http://www.mpegla.com/main/Pages/Media.aspx
(direct PDF of the press release is here: http://www.mpegla.com/Lists/MPEG%20LA%20News%20List/Attachments/226/n-10-02-02.pdf )
This is /. so how dare you try to use an argument that may or may not use facts and or logic in it. Plus I ain't clicking on any fancy links just because you want to blow steam off on the internet. Remember winning an argument on the internet is like winning the special olympics, your still retarded after you get that medal.
I've been documenting the software patents situation for Theora here:
Adding information about On2's v8 codec would be very welcome.
Expert in software patents or patent law? Contribute to the ESP wiki!
VP8 is RUMORED to be made open source sometime in the near future.
We do not know for sure.
Theora isn't very good, but that doesn't mean that it is utter crap.
At youtube video quality it uses somewhere around 10% more bandwidth than h.264. It gets less efficient with HD content.
They got hw-accelerated Theora for an OMAP3 SoC. The testing was on a *single* mobile phone, there's a difference ;)
Anyway, the thing is that theora is as good as H264 or even better at low resolutions and bitrates, that's the reason why they are working on this for mobile phones/devices. Furthermore, having this for a SoC makes it much easier to port to other platforms and will probably work on future evolutions of the SoC as long as they keep the instructions set...
So, it's reasonable what they are doing ;)
Damnshock
That is not correct.
http://www.mpegla.com/Lists/MPEG%20LA%20News%20List/Attachments/226/n-10-02-02.pdf
(DENVER, CO, US – 2 February 2010) – MPEG LA announced today that its AVC Patent Portfolio License will continue not to charge royalties for Internet Video that is free to end users (known as Internet Broadcast AVC Video) during the next License term from January 1, 2011 to December 31, 2015. Products and services other than Internet Broadcast AVC Video continue to be royalty-bearing, and royalties to apply during the next term will be announced before the end of 2010.
Morpheus, God of Dreams.
And Microsoft and Apple CAN implement Theora, then we can have a nice baseline and H.264 fans can still use it if they wish to.
Analogies don't equal equalities, they are merely somewhat analogous.
No, that's a stupid idea.
Not all systems have an h.264 codec installed. Mac OS X does (via QuickTime). Windows 7 has an included h.264 codec, but neither Windows Vista nor Windows XP do. The only available h.264 codecs for Windows Vista and Windows XP are either commercial (which nearly nobody will have installed) or unlicensed. On Linux, there is exactly one licensed h.264 codec (Fluendo's GStreamer plugin), which virtually nobody has installed.
So this doesn't solve the problem at all. It also has some rather bad side-effects.
First, it makes the browser behave differently depending on which OS you're using. Mac OS X can basically only play h.264 and MPEG-4 ASP out of the box, and only in the MPEG-4 / QuickTime container format. Windows XP and Vista can play a couple of useless, outdated codecs in the AVI container, or one of several versions of WMV. Oh, and Windows XP didn't ship with a WMV9 codec. On Linux... anything can happen - GStreamer may or may not be available, and what codecs it actually contains varies widely (although it almost always includes Theora). What about embedded systems that don't even have their own codecs? What about embedded systems which have their own codecs, but provide no way to install new ones?
It also increases the attack surface, which will cause more security vulnerabilities. Say you just let DirectShow handle any media type. You've not only exposed Windows' h.264 decoder, but also every other decoder and parser available through DirectShow. Some of those are from the mid to late 90's. More likely than not, they're full of security vulnerabilities.
To put it another way:
IE9 ships with it's own h.264 decoder. It's the only way to support h.264 on Vista, and it limits the attack surface. Silverlight ships with it's own h.264 decoder, for exactly the same reasons. So does Flash. Safari on Windows effectively ships with it's own h.264 decoder (via QuickTime). It only uses the OS supplied codecs on a Mac, where Apple control the entire platform anyway. Chrome includes it's own h.264 and Theora decoders on all platforms. Opera includes it's own Theora decoder, via an included version of GStreamer. Firefox includes it's own Theora decoder.
You missed a 4th option:
With support for H.264, Theora, (and hopefully soon VP8) all the bases are covered. This is the option that gets my vote, and now I can relax and enjoy the web as it's meant to be enjoyed, without having to worry or whinge about anything.
Because I have yet to see a Theora video site. I say that the price of the additional data traffic costs to get the same quality as H.264 is still more than the license.
I”m all for an open codec. But everybody knows that unless it”s also a *better* codec, we won”t see it being used. Companies have no interest in paying more and don—t care as much about open source as they should for their own good.
File sharers don’t care about licenses anyway.
So we”re left with the tiny subset of private people and very small companies who don”t use it for file sharing.
And then there’s the point of one actually caring about licensing. Honestly I don’t thing the MPEG will ever sue. Because that would kill off H.264 pretty quickly on the web. They have other interests that are more important than a bit of license money.
So I will use H.264 even without a license, just as I did with GIF, JPEG, etc, etc, etc.
Because I think we are stronger, and the can”t ever hurt us. Instead of backing down like a submissive beta-human loser.
Also, the whole discussion is retarded anyway, because it's utterly idiotic of the Firefox team, to not just link to ffmpeg/DirectShow/CoreVideo, and be done with it. No legal issues for them whatsoever. It’s been said a thousand times already. But they want to ram their thing down our throats no matter what.
To me, that is no better than if the MPEG group would force us to pay for a license. Except that they don’t (yet).
Protip: If fighting has made you into what you fought against in the first place, then maybe you should stop, and take a deep breath...
Any sufficiently advanced intelligence is indistinguishable from stupidity.
They only way they can do as you suggest is by severely compromising Firefox. This has been answered exhaustively many times. See Mike Shaver's blog post about it [off.net]. To quote:
People have raised questions about using existing support for H.264 (or other formats) that may already be installed on the user’s computer. There are issues there related to principle (fragmentation of format under the guise of standardized HTML), to effectiveness (about 60% of our users are on Windows XP, which provides no H.264 codec), to security (exposure of arbitrary codecs to hostile content), and to user experience (mapping the full and growing capabilities of to the system APIs provided); I’ll post next week about those in more detail, if others don’t beat me to it.
We've all read the arguments (I hope), we just don't buy them. I'm sorry but the OS should be handling video codecs for applications. Too many different applications such as video players, teleconferencing, browsers, and editing software all need to use codecs and the OS handling them on behalf of applications is simply the right way to engineer things. I can use Theora in my browser right now using HTML5 tags because I gave the OS a codec and my browser can use any codec I have installed. In practice I don't use it though.
See also Chris Blizzard's blog post [0xdeadbeef.com] about the decision to only support open video in Firefox. And most importantly of all, don't worry about. Open video is the way forward for video on the web. Theora is here now, VP8 may be joining it next month, and Dirac may join both in the future.
As I said, I can use Theora, but I don't... because there are basically no Theora streams in any of the mainstream video sites I use. Theora may be here, but you'd never notice. To a whole lot of us this the refusal of Firefox to build in support for the OS's video codecs (and yes there are plenty of h.264 codec available for WinXP via WMP) means Firefox just can't watch some of the video on the Web without reverting back to a Flash plug-in. Great job promoting security there guys. I feel so much safer.
You say don't worry about Firefox's open video. I'm not, I'm worried about it's ability to play mainstream video securely, because it sure as hell can't do so today like other browsers can. I don't know if they're trying to get people to fork Firefox or if they think Firefox has too much market share and they're determined to get people to switch to Chrome. It looks like pigheaded ideology being put before users to me.
Now you're on to something...!
That's right, since Quicktime uses standard H.264 with AAC, there were plugins for nearly every system on the planet since day 1.
The problem with flash isn't that it's a big bad plugin. The problem is that it's proprietary. H.264 is NOT proprietary. It just happens to be patented.
Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
While streaming H.264 is currently royalty free, distributing a codec for it is NOT. So how about it moneybags, would you care to foot the bill for a worldwide unlimited license from MPEG-LA?
NO? That's what everyone else says, and there's your answer. Mozilla made the choice they did because that's the one they are legally able to make. If you find it that objectionable, perhaps you can help Mozilla get a deal from MPEG-LA?
It's an OS function.
Firefox should have nothing to do with it. The browser should play whatever the OS can support.
This is like Firefox saying they now support Dvorak keyboards.
http://lkml.org/lkml/2005/8/20/95
I'll admit that Theora isn't the greatest video codec. But it's been explained many times that Mozilla simply can't use MPEG-4 AVC/h.264 because of the patents involved.
And has been explained many times before, that's complete, utter bullshit.
All Firefox needs to do is use a generic video decoding pipeline for it's backend. GStreamer and DirectShow come to mind (interesting sidebar, they're *already doing this with Fennec*, they just refuse to backport the changes to Firefox for idiotic political reasons). Then, Firefox can immediately use *any* codec those pipelines support, and given the video tag is supposed to be codec agnostic, that's a good thing, as it gives the web developer a choice of a wide variety of codecs to target. And if the user happens to have installed an h264 codec for one of those pipelines, then voila, Firefox immediately gets H.264 support without ever shipping any patented code.
Honestly, how is the hard to understand? The simple fact is, there are *no technical or legal arguments for not supporting H.264*. None. Zero. Nada. The only reason to refuse is for political or ideological reasons.
They only way they can do as you suggest is by severely compromising Firefox.
Utter garbage. Firefox is *already* subject to any bugs in the underlying OS on an incredibly wide range of issues. Hell, just a few years back, Firefox was compromised thanks to an image rendering bug in GDI on Windows. So, what, *now* they've suddenly decided they're going to reimplement OS-supplied services for fear of security issues? Please.
On the bright side, at least the Mozilla devs *tried* to invent a technical excuse for not supporting H.264, now that people have realized there are no legal barriers to doing so. Of course, it's a stupid, irrelevant, indefensible technical excuse. But, hey, kudos for trying, guys.
Excuse me... Video in HTML5 is supposed to get rid of that plugin thinking in the first place .
It's not that you can do that- HELL, you can do that NOW.
The real problem is that while it's implemented and "legitimized", each and every use requires a payment and a sign off against a license you may/may not agree with. Even to provide the content on the Internet will eventually require royalty payments with it. You won't be able to legally implement ANYTHING with video without their permission- and they can withhold it- just witness what's happening with Nokia and Apple right at the moment.
If you've not caught all of that, perhaps you need to pay closer attention.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
Heh... Damnshock, have you ever worked with a TI SoC?
The codec was implemented against the C64x+ on a Linux based target on OMAP3.
Each phone isn't magically different in that respect. In fact, TI provides a platform SDK to use the DSP and everybody using Linux as their base OS is using the same SDK and pathways to get the data in/out of the engine and merely specifying their own get/on get/off points, which are actually submitted to the DSP via the API TI provides to each and every customer of their hardware.
What does this mean?
It means that the DSP work done now is available, largely ready for use on:
Motorola Droid ...and anything else using an OMAP3 SoC and Linux.
Palm Pre
Palm Pixi
Nokia N900
BeagleBoard and derivatives...
Gumstix Overo Water & Fire
Open Pandora Handheld
iPhone GS...
Seriously. Done once, able to be used elsewhere as long as you provide consistent interface rules. You might need to adjust the place you get and put the data for the operation, but the algorithm and the vast bulk of the DSP code doesn't change from device to device.
More to the point, you're going to find that with a bit of tweakage, the work can probably be implemented on OMAP2 platforms such as the Nokia N800/N810 as there's more than enough headroom on the C64x+ to lead me to believe that there's a possibility of doing it on a C55x class DSP- not that someone would go to that trouble unless there was a business case for it.
Now, this doesn't mean everybody gets "hardware" Theora yet- you still need to implement for at least Blackfin and Snapdragon as well for the bulk of the mobile device space. The main big deal here is that it has now been shown that it CAN be done and done fairly easily.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
and before you remark... iPhone uses a similar DSP edge so my offhand remark about iPhone alongside with "anything else Linux" shouldn't nullify the argument... I added iPhone at the last moment and didn't qualify it this way.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
If Firefox uses something like DirectShow on Windows:
1/ they will need to have codec support for theora (not necessarily installed);
2/ the H.264 codec is only available on Windows 7 and later, and they cannot legally ship a H.264 codec for XP/Vista;
3/ they need to ensure that the DirectShow output works with the layers/svg/smil infrastructure as well as DirectWrite/Direct2D on Windows 7 -- e.g. does having a rotating, scaling video in a smil/svg file work;
4/ they need to ensure that the audio output works well with other audio content (e.g. playing a and object at the same time);
5/ they would have to work around/live with any issues in the use of DirectShow/framework.
Same for GStreamer (which may not necessarily be installed on all Linux platforms).
In addition, you also need a multimedia layer in the browser to support all of the multimedia frameworks, in addition to the audio and graphics support layers required at the moment.
but its not a firefox issue anymore. the user needs to get his codecs, as he needs for other purposes, too.
``Open source has some advantages, but if it's technically lesser and doesn't work with companies, it's not going to win.''
I've emphasized the part that I think is the main point here. It's not about quality. It's not about cost. It's about how businesses work.
I don't know this for sure, but I would be surprised if H.264 weren't pushed through the normal corporate channels. If you run a company that makes H.264 decoders, you are going to have some of your people meet with people from other companies to try and sell them your decoder. Your salespeople have lunch with representatives from other companies, they play golf with them, and they show them some shiny demos. This is how the game is played: the same way as it is played for many other products.
Conversely, I would be highly surprised if there was nearly as much time, effort, and money being spent on selling Theora. It doesn't even matter very much how good Theora is relative to H.264, or which will be cheaper to run your website on. It's simply not being sold like H.264 is. Theora is this scary thing: made by a bunch of idealists who believe in freedom and openness.
Now picture yourself in the position of any of the large stakeholders in this game. Could be one of the desktop OS giants: Microsoft and Apple. Or one of the entities that are in the multimedia business, say Macromedia, MPEG-LA, Sony, or Universal. Or perhaps you are one of the players in the very important field of mobile devices; say, HTC, RIM, or AT&T. Would you rather go with the technology pushed by the nice salesman who treated you to dinner and made you a nice, business to business, the way things have always been done offer? Or would you go with the rebels, who are screaming that you should implement their technology so that they will be in control instead of you?
Please correct me if I got my facts wrong.
I have no idea why Firefox still fights against the giant, emm, I mean Microsoft and loses money and time on it. I mean, great, geeks have nice browser on Linux, but what about Windows 98, Windows 2000, Windows XP, Windows Vista, etc. and everything else...emmm there is no anything else that has Internet Explorer support? It's a lost battle.
If I were them...ok, I can't continue this with straight face.
I have question - why do you ask? Mozilla can't distribute H.264, period. Not in this, nor in parallel universe (assuming that they have softpatents too). What is left for them? Theora is here and while some of cool guys don't use, I and lot of geeks do. It is functional, it is usable. So why do you care? It's their decision.
If you don't dig reasons why open source community sometimes do things they do - fine. If it won't succeed in overtaking H.264 - fine. But you have to think about that there never be one, holy video format. That there will be multiple competitive ones. Theora suits very good for distributing content where you need to avoid to touch softpatents (ok, some people insist that there should be some threats but it's not in the open like MPEG-4, which has special agency who collects royality). H.264 is and probably will be used for distributing lot of commercial videos where distributor already paid royalties. There comes Dirac.
And in the end - open source has always been some kind of underdog, so fighting instead of accepting defeat is in our blood.
user@ubuntubox:~$ stfu This server is going down for shutdown NOW!
Maybe you should read the comment again carefully. If video codec support can be treated as an "OS supplied service", why won't IE9 support all OS supplied codecs?
They *are* using OS supplied codecs, they're just choosing to limit the options available to reduce the security footprint. Firefox could do exactly the same thing.
Meanwhile, the MS statement was about image codecs. The OP was speculating they would do the same for video codecs, without any actual evidence to back that claim.
1/ they will need to have codec support for theora (not necessarily installed);
User problem.
2/ the H.264 codec is only available on Windows 7 and later, and they cannot legally ship a H.264 codec for XP/Vista
User problem.
3/ they need to ensure that the DirectShow output works with the layers/svg/smil infrastructure as well as DirectWrite/Direct2D on Windows 7 -- e.g. does having a rotating, scaling video in a smil/svg file work;
Yup, it's a technical challenge. But don't tell me it's a blocker, as other browsers are already using this approach.
4/ they need to ensure that the audio output works well with other audio content (e.g. playing a and object at the same time);
See above. And this one's far easier (what audio output framework doesn't support hardware mixing multiple output streams in this day and age?).
5/ they would have to work around/live with any issues in the use of DirectShow/framework.
Yup, they sure do.
In addition, you also need a multimedia layer in the browser to support all of the multimedia frameworks,
You mean kinda like how they already wrap the platform-specific GUI libraries, rendering, etc, etc?
Sorry, *none* of these issues is a blocker. Not a single one. People are claiming Firefox *can't* support H.264, either for baseless legal reasons, or dubious technical reasons. But the reality is that Mozilla could add support if they wanted to. They *choose* not to because they took an ideological stance early, and now they don't want to back down, even if their choice is not in the best interests of their userbase.
I have no idea why Firefox still fights against the giant and loses money and time on it. Great, they got hw-accelerated Theora to one single mobile phone. What about all the televisions, other mobile phones, computers, airplanes, PS3, 360, and everything else under the sun that has H.264 hw supported? It's a lost battle.
The number of licensees for AVC/H.264 has passed the 800 mark.
They include - for all practical purposes - every significant player in consumer tech, video production and video distribution in the world.
You could begin, if you like, with
What exactly are you trying to imply with that?
I'm not implying anything. I'm *saying* that defenders of Mozilla's ridiculous stance have tried to claim:
1) Mozilla simply *can't* support H.264 for legal reasons. This is false, as there is no need for Mozilla to ship any codecs.
2) Mozilla simply *can't* support H.264 using OS-provided codecs because it's, like, hard and stuff. This is just BS.
3) Mozilla simply *can't* support H.264 using OS-provided codecs because of, like, security and stuff. As if Mozilla packaging it's own multimedia framework is suddenly so much better, and it's much wiser to not take advantage of OS-provided services that are regularly vetted and patched.
And now Mozilla simply *can't* support H.264 because then Firefox would behave differently on different platforms. As if it doesn't do so already.
In short, I'm saying, not implying, flat out stating, the people defending Mozilla's ridiculous position (either Mozilla staff themselves, or Mozilla fanbois) are now scraping around at the bottom of the barrel to come up with excuses to support their stance, instead of just admitting that the original choice was purely ideological, and their current stance is essentially an unwillingness to simply admit they were wrong.
Chrome already supports Theora allright.
user@ubuntubox:~$ stfu This server is going down for shutdown NOW!
I would argue that Youtube qualifies. But let's see. Also this claim is not binding. In fact, MP3 patent holders had a public pledge of not enforcing patent fees from free software/open source mp3 players, but later changed their mind. So I wouldn't sleep on it.
user@ubuntubox:~$ stfu This server is going down for shutdown NOW!
Uh huh. And why doesn't Chrome?
Because Google decided to just package H.264 with Chrome, as they're apparently unconcerned about patents. Firefox is concerned, so they need another approach.
And what of the 60% of Windows users with no H.264 support in the OS?
They, uh, install the codec?
And what of other desktop platforms and mobile platforms?
Fennec is *already* moving to gstreamer for video support. Firefox just decided not to backport the implementation.
Your approach is a poor solution which limits cross platform deployment,
Bull. Shit. Gstreamer is already cross-platform. For those freak platforms with no gstreamer or DirectShow support, they can just use the existing Theora implementation.
Okaaay.. so you're suggesting that video codecs are somehow more secure that image codecs?
Yeah, that's exactly what I said.
Or maybe I didn't say that at all, but you apparently felt like knocking down a strawman for kicks.
So, allow me to elucidate: All I said was that the OP pointed to an article about image codecs. We have no idea what MS will do when it comes to the video element. Though I'll be very surprised if they don't use DirectShow as the decoder backend (though they may choose to limit the codecs they expose through the video element).
Microsoft doesn't even support WMV videos in IE9.
Well goodie for them. But I'll bet you they're using DirectShow or something similar, rather than building an entire new decoding pipeline specifically for IE. Why? Because they aren't fucking idiots.
And you're completely mistaken. Not wrong, just mistaken.
The decision by Mozilla not to integrate support for the H264 codec is only ideological if you define that term to mean 'respectful of the rule of law'.
You keep talking about 'support' for the H264 codec. The issue is not support, per se - any 3rd party could do that via a plugin.
The issue is that Mozilla cannot legally integrate an H264 codec into their code base and remain GPL-compliant.
This kind of matters because of the way HTML5 removes the technical requirement for some 3rd party plugin to be able to view video content and because of the increasing presence of software running embedded on devices.
Of course Firefox will be able to play H264 video. That's not the issue. The issue is that the legal framework is prejudiced against Mozilla and all FOSS software that wants to support this codec. The issue is equally that other major players on the Web seem perfectly happy to acquiesce to the promise (not the threat) of patent-driven royalties for all content producers down the road.
Crumb's Corollary: Never bring a knife to a bun fight.
One big thing getting in the way of Theora is the lack of easy encoders.
Have you seen what they call easy? Two lines of cryptic text commands - commands that change from version to version, and aren't listed in the documentation.
With H.264, you can pick up a GUI for free, drag a slider to "Maximum", and wait 2-3 hours. Then you have a wondrous quality video, ready to be streamed, and hardware accelerated on a lot of platforms. There's even websites that will generate all the code for you, so plunking it in your own website is easy, even for the average nitwit that barely knows HTML.
If you haven't got technical superiority, and you haven't got ease of use, what have you got that's going to win people over?
I knew it would some day be possible to have full-HD on my old C64 :-)
You make an interesting point. Theora is particularly well suited for high bitrates, so DVDs would actually be a fine use. It's trivial for any modern device to decode theora in hardware - the software just has to exist, and be bundled in the firmware of the device.
I feel H.264 or a codec like VP8 should win for streaming, simply because of the reduced bitrate. H.264 does exceptionally well at super low bitrates(256-512kbit), where other codecs would turn into a blurry mess. Because of the low bitrate, it's not that CPU/DSP intense.
On the other hand, H.264 is very hard to decode at very high bitrates. At 25mbit, the quality gain over a codec like Theora probably isn't as significant as the increased decoding difficulty, which would prevent it from decoding at all on most devices.
The issue is that Mozilla cannot legally integrate an H264 codec into their code base and remain GPL-compliant.
Sorry, no, that's just false, legally and technically.
All Firefox needs to do is integrate with a *generic* video backend. That backend can then provide H.264 support, and Firefox will be legally in the clear. It's just that simple.
Firefox simply chooses not to do this. They've tried to invent a bunch of technical reasons why they don't want to, but alas, they're weak at best. No, the Firefox devs dug their heels in for ideological reasons early, and continue to dig their heels in because they're stubborn and don't give a crap about their users (as an aside, they also *massively* overestimate the impact they can have on the web, hilariously of the belief that Firefox making a stand will somehow stem the tide of H.264 video on the web... it'd be funny if it weren't so sad).
The issue is that Mozilla cannot legally integrate an H264 codec into their code base and remain GPL-compliant.
Good, they shouldn't be doing that in the first place.
Screw you. I do not want to use IE and Windows in order to use the internet.
Call me a commie all you want but I have a moral problem with creating a monopoly by abusing standards. Standards exist to prevent monopolies and encourage competition. H.264 is designed to create a monopoly in order to scew users over with drm and fees and lock people in.
How can the web be a free platform when you can't develop media rich websites without proprietary $$$$ non free software due to patents and drm. Flash already killed the opportunity for any serious web developers to learn new skills without paying adobe $$$$. Html 5 is designed to open it back up again ... with the exception of h.264.
Didn't the RIAA/MPAA want spyware on every pc sold? A forced plug in will be perfect.
Good job Firefox! Keep up the work and with you refusing to support it the less likely webmasters will use h.264 over alternatives.
if you like h.264 then use it but do not force it on the resut of us.
http://saveie6.com/
And since everyone's moving to HD content, that makes it a WONDERFUL choice! Wait, no, that's not right...
Canada: The US's more awesome sibling.
Anyway, the thing is that theora is as good as H264 or even better at low resolutions and bitrates,
This is not actually true. h.264 is significantly better, including at low resolution and bitrates.
(Theora loses a little bit less at low resolutions, but this is mainly because Theora is so bad at high-resolution video.)
Theora is particularly well suited for high bitrates
Actually, Theora is bad at exactly that. Or no so much high bitrates as high resolutions, which is often the same thing.
If you hadn't noticed, Firefox already plays h.264 just fine. Through Flash.
So you do not use Flash, then?
Well, you're right - it certainly is easy!
But it doesn't offer any options for bitrate or quality. It's a bit like taking a screenshot and saving it as a .BMP with MS Paint.
When you upload that to a website, people will shout at you for not compressing it or picking a better format.
Actually, Theora is bad at exactly that. Or no so much high bitrates as high resolutions, which is often the same thing.
Well then, what is Theora good at? I'm drawing a blank.
H.264 is open and yet proprietary. The patent holders own H.264. It's not Free, nor is it free, although various entities will pay on your behalf if you are a member of one of several common classes of computer user.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
It's pretty fast.
This keeps getting brought up, and people keep regurgitating the same bad information. Here's the facts:
It's Slashdot hyperbole and trolling again. I know I fall into that trap myself, but being slightly behind the best does not translate to totally useless. On the contrary: being a format that can potentially be used universally by any platform is a HUGE advantage that more than outweighs the slight difference in quality.
For example, Flash (something that HTML 5 and the video tag could replace)
Flash video .
HTML5 will do nothing to replace embeddable TrueType fonts, vector animation, built-in MP3 and MP4 support, etc., etc., etc.
You know... the 99% of stuff that Flash does that you failed to mention in your little deceptive aside. Well, deceptive or woefully ignorant.
That's not Google's view, though. That's just a single guy, who's working independently from Google, but they finance his work. Their official stance with respect to backing H.264 for HTML5 didn't change - they're still opposed to standardizing on Theora.
And VP8 rumors are just that, rumors - for now. We shall see later. In any case, if it goes ahead as rumored, it would be very different from Theora (which may in fact be why Google opposes standardizing HTML5 on the latter!).
IE9 ships with it's own h.264 decoder.
Er, how do you know that? So far all we saw is a "preview", which isn't even a proper browser!
It's the only way to support h.264 on Vista
This is rather obviously false. All it takes to support H.264 on Vista is to install an H.264 DirectShow codec.
It is easy to decode since it doesn't offer as many compression techniques. That is both its benefit and its downfall. It is the same thing that prevents MPEG-4/ASP from being usefull at HD resolutions
They don't have to use DirectShow in particular, just any extensible framework.
For example, Opera (10.5+) uses GStreamer on all platforms. On a Unix system, it'll just use the one that is already installed, and all the codecs therein, so adding H.264 support is trivial - you just install GStreamer wrapper for ffmpeg.
On Windows and OS X, they simply package a private version of GStreamer with Opera itself, and add the baseline plugins (in their case, just Theora and Vorbis) there. It does not conflict with system in any way, nor does it expose any vulnerabilities other than those in the codecs they pick. But it is still proper GStreamer with dynamic loading of codecs - just from a private folder - so it can be extended if user wishes that.
Or, better yet, use the system framework, but whitelist codecs - and let user edit the whitelist, adding codecs he wants to be supported as needed. This is perfectly implementable with DirectShow (no idea about QuickTime).
they need to ensure that the DirectShow output works with the layers/svg/smil infrastructure as well as DirectWrite/Direct2D on Windows 7 -- e.g. does having a rotating, scaling video in a smil/svg file work;
Yup, it's a technical challenge. But don't tell me it's a blocker, as other browsers are already using this approach.
It's not even a challenge. In both GStreamer and DirectShow, the codec just outputs an image (usually YUV). The browser can scale/rotate/resize it as it sees fit. Yes, those frameworks also offer facilities for hardware-accelerated rendering of those images, but it doesn't have to be used (or it can only be used when image isn't rotated or partially obscured, etc).
Heck, Opera already does it with GStreamer - cross-platform, and they support arbitrary rotation/translation/scaling of page elements or the entire page, including HTML5 video. You can see for yourself if you download Opera, go to any HTML5 video demo page (you'll need Theora-based ones, sine Opera doesn't come with H.264) - e.g. this will do - and then type the following in URL textbox:
IE, Safari, and Chrome and Opera all claim to be Mozilla implementations.
ROFL! Wow, you honestly have absolutely *no idea* how modern web browsers came about, do you?
Christ, the fact that you think "Mozilla" in a user agent string means they're trying to mimic modern Firefox demonstrates just how laughably ignorant you must be.
Honestly, that must be one of the funnier things I've read in some time. Well done!
Ultimately, you're on the losing end of this debate. Open video is where it's at.
No. It's really not. Theora looks worse, requires more bits, doesn't yet have hardware acceleration (though that may be changing soon, we'll see), streams poorly (though that's Ogg's fault)... it's *only* advantage is on the patent issue, and the content providers have already paid for their licenses, and the users simply don't give a shit.
Meanwhile, Google, Vimeo, and basically every other major content provider has already standardized on H.264, largely because it's backwards compatible with their existing Flash-based players while also working in the video element.
No, Theora lost before the race ever began. The only question now, is, will Firefox finally relent before HTML5 really starts to make it big, and Firefox is left in the dust by browsers run by people who aren't blind ideologues with delusions of grandeur.
Waste your points mods, waste them all away...it doesn't change the facts: FACT- HTML V5 IS NOT just a generic container, so sayeth Wikipedia and I quote "User agents should support Ogg Theora video and Ogg Vorbis audio, as well as the Ogg container format."
FACT- Theora has NO hardware acceleration on most platforms. FACT- Theora runs like hammered shit on anything less than a P4 3.2GHz, which means you just cut out most netbooks/nettops, older PCs, and pretty much every mobile device except the ONE CHIP that Moz has wrote a plugin for. FACT-everyone else that matters, Apple, MSFT, and Google, are running H.264. FACT- Nearly every device sold today, from cheap ass media boxes to cell phones, support H.264. FACT-Every single major motherboard AND discrete GPU comes with H.264 support out of the box.
If you want to waste mod points going "la la la I can't hear you" knock yourself out, but it don't change reality. The reality is as of this moment HTML V5, which is standardized on Theora according to the spec, is a slow bloated POS that plays videos like the days of dialup unless you are running a serious hog CPU, and frankly it is a shit codec to start with and can BARELY keep up with H.263, and can't hold a candle to H.264. MSFT bet the farm on CPUs always getting bigger and better, and got bit right in the ass with Vista. Are you really gonna be dumb enough to follow MSFT down the road of failure?
ACs don't waste your time replying, your posts are never seen by me.
Oh, I remember this guy. See: http://people.xiph.org/~greg/video/ytcompare/comparison.html
I doubt this person speaks for all of Google too, considering other departments are doing the opposite as shown before.
Change is certain; progress is not obligatory.
Great, they got hw-accelerated Theora to one single mobile phone.
From TFA: "This SoC (System on Chip) is best known as being the base behind Nokia’s N series of mobiles (including the N900), the Motorola Droid, Palm Pre, and the Beagle Board." That's slightly more than a single mobile phone.
The iPhone 3Gs uses a samsung SoC not an OMAP3
No. It is not proprietary in any sense of the word. You really need to look up the definition before you speak.
Theora has more claim to being proprietary, as one single organization defined it and continues to change it however they see fit. That has been expressed as one of the reasons companies refuse to accept Theora... Not that the quality and installed-base issue isn't overwhelmingly paramount, though.
Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
I have no idea why Firefox still fights against the giant and loses money and time on it.
I think it's great, completely aside from the merits of any video codec or open vs proprietary. I'm just happy to read about software makers standing behind their solution and pushing to make it work. A lot of Slashdotters rightly pointed out hardware support as a major issue for Mozilla's Theora support, and Mozilla seems to be working on it. Obviously, this is a small step against a massive obstacle, that should go without saying (but I'm not actually new here). I think it's great precisely because it would be so much easier for Mozilla to take the H.264 path of least resistance.
Everything to do with the web is becoming more and more... convergent. The Internet doesn't crumble to a halt if browsers don't all work the same; we still got by when some sites built their layouts with divs, and others with layers. I'd much rather see smart people still working to develop different implementations of things then reach the point where everyone gets behind whatever manages to be the entrenched giant.
It's a lost battle.... Open source has some advantages, but if it's technically lesser and doesn't work with companies, it's not going to win.
That could be said now and in the past about so many things that didn't give up and go away, and yet have users. You can still buy Ogg portable media players, because even though they've gone from ugly to pricey, they've always found a customer base. I've read comments that lament that pushing this issue could be the death of Firefox, but they will find a user base (not everyone picks a browser on the ability to stream videos). Opera is still around, thanks to its loyal users, and it's not even open source.
As good as it was to see so many friends and family members shift from IE5 & 6 to Firefox, I don't think there's any danger of those people reverting to IE6. I don't mind if they switch to Chrome or Opera or Safari, so long as it does the job well enough. Mozilla (or any other company/project) fighting the uphill battle and supporting what it thinks is best isn't something I ever want to see stop, particularly with the Internet. The strength of the "web development platform" is in full bloom, and with it seems to come an assumption that it's vital for all browsers to always go in a direction that supports and strengthens the "web platform" concept.
Well, I work in web development, and I admit it's definitely nicer when browsers are more consistent at handling the same code the same way. Nicer, meaning, we can officially support more browsers. IMHO, that luxury isn't worth moving into an age where browsers all emphasise conformity rather than developing what makes them unique in their vision.
HTML5 will do nothing to replace embeddable TrueType fonts
No, HTML won't do it because that's something that has been doable with src, url & format keywords in CSS. The only problem is that not all browsers supports those.
HTML is about content, CSS is about visual style.
vector animation
Again, animation isn't HTML's job. It's Javascript's. And SVG could be animated with DOM. Once again the main obstacle is getting the specification adopted everywhere.
built-in MP3 and MP4 support
Supporting audio is a problem tackled by the Audio tag.
Specific codecs: Well that's where the whole debate is. Both Mp3 and Mp4 are covered by patents. Some like Mozilla feel that, as an open standard, HTML5 should also use codecs which are freely implementable by anyone.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Sopssa expert of all things! I'm so glad you have weighed in on this issue so informedly as usual! Thanks for the same trolling insight you always have good sir!
Hatin' on products I don't like and getting modded up talking about tech I totally don't understand like it was 2005!
> HTML5 will do nothing to replace embeddable TrueType fonts
No, but CSS fonts do.
> vector animation
SVG or canvas depending on whether you want retained mode or immediate. Granted, SVG is a bit of a pain to work with.
> built-in MP3 and MP4 support,
This is tougher, since it has the patent issues we're discussing right now, right?
> etc., etc., etc.
Details?
The fact is, the general web standards push right now seems to be in the "make Flash irrelevant" direction.