Google Chrome bevat LGPL videosoftware, mag dat?

google-chrome.pngGoogle Chrome, de minimalistische browser van het advertentie- en zoekmachinebedrijf bevat veel open source. Recent bleek de browser echter ook de open source FFMPEG videosoftware te bevatten om zo filmpjes op webpagina’s beter te kunnen afspelen. En dat is opvallend, omdat FFMPEG onder de LGPL 2.1 open source licentie is uitgebracht. De verhouding tussen LGPL 2.1 en de MPEG-octrooilicenties is op zijn zachtst moeilijk te noemen.

Wie MPEG-functionaliteit aan zijn product wil toevoegen, heeft octrooilicenties nodig. Organisaties als MPEG-LA verstrekken dergelijke licenties, uiteraard tegen betaling. Daarbij geldt de eis dat je alleen voor je eigen producten kunt betalen: maakt de klant een kopie, dan moet die zelf een nieuwe licentie komen halen. Iets dat moeilijk ligt bij open source software, omdat het daar juist de bedoeling is dat klanten het ook weer kopiëren en verspreiden.

De LGPL bevat namelijk een aantal clausules die bedoeld zijn voor deze situatie. De belangrijkste is artikel 10:

You may not impose any further restrictions on the recipients’ exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License.
Oftewel: u mag anderen geen beperkingen opleggen op de rechten die u zelf krijgt van de LGPL. Deze clausule maakt het, zo werd altijd aangenomen, erg moeilijk om open source te gebruiken als daarvoor betaalde octrooilicenties van derden nodig zijn. Maar, wat zegt nu Google’s open source program manager Chris DiBona:

(a) Party A gives Party B a library licensed under the LGPL 2.1
(b) Party B gets a patent license from Party C
(c) Party B then distribute the library under the LGPL 2.1

This situation is *not* prohibited by the LGPL 2.1 (see the LGPL 3.0 for a license that does deal with this situation). Under the LGPL 2.1, the fact that Party B may have a patent license with an unrelated third-party is irrelevant as long as it doesn’t prevent Party B from granting people the rights LGPL 2.1 requires they grant them (namely, only those rights it in fact received from Party A).

Oftewel (ik krijg er ook hoofdpijn van): het “further restrictions” gaat om restricties die de verspreider van de software oplegt, terwijl de MPEG-licentie een restrictie van een derde is. Google kan er niets aan doen dat derden een betaald licentieprogramma hebben op de software die zij van FFMPEG hebben gekregen.

Meer to-the-point is DiBona’s collega Daniel Berlin verderop:

Nowhere in the LGPL 2.1 are we required to grant you patent rights that we may have.

Dat is op zijn minst een originele interpretatie te noemen. In artikel 11 van de LGPL staat namelijk:

If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library.

De gebruikelijke interpretatie van dat voorbeeld is dat een octrooilicentie gratis voor de hele wereld moet zijn, wil de licentienemer in staat kunnen zijn de software onder LGPL te mogen verspreiden. Maar Google komt nu met de creatief gevonden interpretatie dat de MPEG-licentie haar niet verbiedt de software onder de LGPL te verspreiden. Helaas krijgen afnemers geen MPEG-licentie, maar dat is niet verplicht volgens de LGPL.

In Google’s visie moet de MPEG-licentie zeggen “U dient ervoor te zorgen dat uw afnemers geen kopieën maken van de MPEG-software” voordat haar verspreiding de LGPL zou overtreden. Maar dat doet deze niet – er staat alleen “u moet betalen per kopie die u verspreidt”. En zolang Google dat maar braaf doet, is er weinig aan de hand. Chrome-gebruikers mogen de MPEG-functionaliteit gebruiken. Alleen, als ze kopieën gaan maken is dat geheel op eigen risico.

Helaas loopt de discussie een beetje snel dood nadat Håkon Lie zich erin mengt met terechte en kritische vragen – Lie is van Chrome-concurrent Opera. Het is namelijk een zeer fundamentele vraag.

Persoonlijk zou ik het Google-standpunt niet snel durven verdedigen, hoewel ik er niet meteen grote gaten in kan schieten. Het is evident de bedoeling van de LGPL om dit soort uitzonderingsposities tegen te gaan. Maar aan de andere kant, er waren hele lappen tekst GPLv3 nodig om het op te schrijven dus het staat er niet expliciet. En als de bedoeling er niet staat, heeft over het algemeen de licentiegever pech.

Arnoud