Linked by Preston5 on Sat 27th Mar 2010 11:46 UTC
Multimedia, AV In January, we had read the various arguments regarding Mozilla's decision not to get an H.264 license. This has generated a lot of discussion about the future of video on the web. With Youtube, Dailymotion, Hulu and Vimeo having adopted H.264 for HD video, Mozilla and Opera should use the codecs installed on a user's system to determine what the browser can play, rather than force other vendors to adopt Ogg. Refusing to support a superior codec would be a disservice to your users in years to come. Why hold back the majority of your users because 2% of your users are on niche OSes?
Thread beginning with comment 416274
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[9]: You don't get it
by Kuukunen on Wed 31st Mar 2010 19:48 UTC in reply to "RE[8]: You don't get it"
Kuukunen
Member since:
2010-03-28

You do not have a choice in codecs. You have to pay their extortion fees, full stop. H.264 is closed and patent-encumbered. Just like IE, it will hold the web back.


Ok, I've been mostly talking about the video quality point of view, but since that has to be brought up anyway, let's delve into the magical world of "I Am Not A Lawyer, but..."

Funnily enough, tiny fraction of the people who talk about the licensing issues and patent-encumbering probably have probably actually read the licensing terms. One reason might be that they're not readily available. MPEG LA only provides the summary:
http://www.mpegla.com/main/programs/avc/Documents/AVC_TermsSummary....

However it even says: "The licensing terms summarized below are for informational purposes only. They are not an offer to license and may not be relied upon for any purpose. The AVC Patent Portfolio License provides the actual terms of license on which users may rely."

MPEG LA (LA stands for License Administrator) is a firm that handles the licensing of technologies such as H.264, MPEG-2 and FireWire. It doesn't actually own the patents, but it's a lot easier to talk with MPEG LA than licensing each patent separately: there's apparently ~25 companies with more than 1000 patents that are essential for use of H.264.

By the way, the patents are from loads of countries, so you're not safe if you're from Europe or outside USA.

So... The AVC Patent Portfolio License is actually an agreement between a Licensee and MPEG LA that you have form.

Luckily with a bit of Googling, I managed to find a copy of the agreement between DivX Inc and MPEG LA from one of DivX's regulatory filings that is publicly available:
http://divx.client.shareholder.com/common/download/sec.cfm?companyi...

The summary seems to be pretty good for explaining the license terms, so let's go through the cases, where you might have to pay royalties to MPEG LA (And therefore to the companies holding the patents.) A summary of summary, if you will.

Basically there are two groups of licensees and two sublicenses for each case:
(a) encoder and decoder manufacturers
(a.1) sublicense for branded encoder and decoder products Sold to End Users
(a.2) sublicense for branded encoder and decoder products Sold on an OEM basis as part of an operating system
(b) video content or service providers
(b.1) where End User pays for each title or pays for subscription
(b.2) where remuneration is from other sources (like advertising)

I'll be focusing on a.1 and b.2 for obvious reasons.

But this is where the legalese starts kicking in. The license redefines lots of words and According to the Portfolio License:
"Sale (Sell) (Sold) (Seller) - shall mean any sale, rental, lease, license, copying, transfer, reproduction, Transmission, or other form of distribution of an AVC Product or the Transmission by any means of AVC Video either directly or through a chain of distribution."

So even providing free download to a decoder would fall under the license, because it's "Selling". (With capital S)

What's worse, even the Consumer is included in the article 2.1 of the AVC Patent Portfolio License.

And furthermore, widely circulated news about the (b.2) part for internet video being free doesn't mean you don't have to license it. You still have to contact MPEG LA for a license, but you don't have to pay royalties.

So that leaves us a.1. The royalties start only after 100,000 Units Sold, so for small businesses, that's not really a problem, although I guess you still have to do the licensing.

********

Ok so that was Part 1: the theory. Now let's to go Part 2: the practice.

"AVC Product(s) - shall mean any product or thing in whatever form which constitutes or contains one or more fully functioning AVC Decoder(s), AVC Encoder(s) or AVC Codec(s). AVC Product(s) shall not include OEM AVC Products."

So if we assume a source code of a H.264 encoder or decoder is not a "fully functioning" decoder or encoder, this might explain two things: 1) why projects such as x264 and ffmpeg are not under too much threat 2) why those projects don't have an official binary distributions ;)

On the other hand, there are projects like VLC and ffdshow, who do provide the binary and haven't licensed anything. So why aren't they sued and pestered?

You see, MPEG LA aren't stupid twats that go around suing everyone. VideoLAN is basically bunch of guys who don't really get huge monetary rewards for their work. Suing projects like that wouldn't help anyone, because 1) It wouldn't even kill the project, they could just stop providing official binary, go underground or host it in another country. 2) It would mean lots of people wouldn't be able to decode H.264 video made by royalty paying licensees. 3) They wouldn't get any money out of them anyway and would look very evil for trying.

Mozilla is sort of a special case, since they're pretty big. They get $50 million dumped on their doorstep each year by Google, so they might be a real target for MPEG LA.

Here's a of tip for Mozilla or Opera, though: Use the decoders from the OS. Opera is already using GStreamer, so I don't know why they couldn't add DirectShow support, so pretty much everyone would be able to decode H.264 videos on Windows without including a decoder in the download. (On Windows Opera ported a GStreamer implementation that only decodes Theora, but on other systems, it could handle all the formats GStreamer normally can.)

Or would it be bad that all browsers can't decode all video-tags? Well that's how it is already, just that there's no way to fix it.

In any case, in theory if you as much as think about H.264, you have to form a license, and if you ask the lawyers, everything is patented, maybe. In practice, you don't have to care and unlike PresentIt is saying, I don't have to pay any "extortion fees" for using the encoders and decoders.

There have been "patent-encumbered" video formats before and I haven't worried one bit.

********

So now, Part 3: how does this all relate to Theora?

You might be thinking: "Aaarrghh! Patents! Licenses! Loopholes! Fear of litigation!! This is why I want Theora!!!" So even if in practice, you have nothing to worry about, in theory, you could get sued, so you want to use Theora to be safe.

Wrong.

If you Google a bit, you can find the interview where MPEG LA CEO talks about Theora being patent-encumbered too.

So let me teach you about patent portfolios, and especially video compression patents: They suck.

There is no such thing as "patent-free" video encoder. Look at VC-1 for example: Microsoft claimed it was royalty-free, but suddenly dozens of companies jumped out of the woods claiming patents on it.

If Theora becomes a popular and of commercial value, same thing might happen. After decades of careful legal struggling companies have managed to patent such a large array of very general algorithms and methods it's practically impossible to make a video encoder or decoder without breaking them.

Theora is based on On2's VP3, which they assume is not under any patents any more. They added their own modifications to the format and with each new version of libtheora, they add code that might be, and probably is, patent infringing. It's just practically impossible to check.

According to an interview, Xiph's only defense is that they have made their algorithms and methods publicly known asking any company to contact them if they're using something patented. But why would the companies tell them what they think is patented? Not to mention it would be a HUGE task to go through all the patents and all the source code and it wouldn't help the company one bit. It's a lot better to wait for a format to become popular and THEN say "we have patents on this!"

Logically, also MPEG LA's official response to all this is "No comment".

So would it matter in practice? Probably not. In theory? Definitely. Exactly the same situation as with H.264.

Reply Parent Score: 1

RE[10]: You don't get it
by Preston5 on Thu 1st Apr 2010 08:30 in reply to "RE[9]: You don't get it"
Preston5 Member since:
2010-03-19

In regards to your last point, Theora advocates have used the defence if such a company exists (that holds patents on Theora), they would find Google to be an attractive target to sue.

Reply Parent Score: 1

RE[11]: You don't get it
by Kuukunen on Thu 1st Apr 2010 10:42 in reply to "RE[10]: You don't get it"
Kuukunen Member since:
2010-03-28

In regards to your last point, Theora advocates have used the defence if such a company exists (that holds patents on Theora), they would find Google to be an attractive target to sue.

Again, I don't really know how these things go, but I'd imagine the worst case scenario might go something like this:
1) Theora gets popular, used in most of the video service sites as the standard HTML5 format (be it a real standard or not)
2) The relevant companies go through their patent portfolios and find patents that are related
3) They start publicly claiming patents on Theora
4) They form a patent pool together
5) They start selling licenses and are prepared to sue anyone using unlicensed Theora, starting of course with the big ones like Google

The patents might be US only, but would that help? It would still effectively prevent Theora from becoming the common standard.

By the way, just to give some kind of taste of what kind of patent minefield the (video) compression field is, look at something like arithmetic coding. Arithmetic coding is an old technique for entropy coding, everyone knows how to implement it, but it's also heavily patent-encumbered.

As far as I know, the patents on the basic methods have pretty much expired, but patents on all kinds of optimizations still stand and you can run into them accidentally, unless you're very careful, and even then you should be prepared for possible litigation.

This is how the Dirac people handled it:
http://lwn.net/Articles/272973/

Another way is to use a specifc implementation of range coding which is known to be patent free. According to Wikipedia, this is just what some people have done:
http://en.wikipedia.org/wiki/Range_coding

The method used in H.264 (CABAC) is of course patented. Probably because when some kind of big standard is being planned, companies will try to push their own patents into the standard as much as possible. Meh.

As far as I know, Theora uses Huffman (which causes yet another 15% inefficiency.) so this doesn't specifically touch Theora, but I took this just as an example, because it's a small, but important part of modern video encoders and patents around arithmetic encoding are somewhat known.

While looking around, I also ran into a link that among other things lists patents on arithmetic coding:
http://www.faqs.org/faqs/compression-faq/part1/

But there I also another example explaining the situation:
- Waterworth patented (4,701,745) the algorithm now known as LZRW1, because Ross Williams reinvented it later and posted it on comp.compression on April 22, 1991. (See item 5 for the ftp site with all LZRW derivatives.) The *same* algorithm has later been patented by Gibson & Graybill (see below). The patent office failed to recognize that the same algorithm was patented twice, even though the wording used in the two patents is very similar.

The Waterworth patent is now owned by Stac Inc, which won a lawsuit against Microsoft, concerning the compression feature of MSDOS 6.0. Damages awarded were $120 million. (Microsoft and Stac later settled out of court.)

(*Snip* Lots of more patents on very similar things and more law suits...)

So a method simple enough it can be reinvintened, not once, but twice, that is (maybe) related to a $120 million lawsuit? Sounds nice.

And somehow even the patent office fails to notice there is already an existing patent on it? If THEY don't notice it, would a bunch of open source software people have the legal resources for going through the (tens of?) thousands of patents that they might be accidentally infringing with each new optimization?

But, as I said, I'm am not a lawyer, and you might dismiss this as "I dunno, but what if?!" Yet, the patents in this area REALLY are that stupid and hard to avoid. Like the patents list for arithmetic coding on that faq says, "The list is not exhaustive."

Edited 2010-04-01 11:00 UTC

Reply Parent Score: 1