7 ms·
The repo in question incorporated FFmpeg code while claiming their code is Apache 2.0-licensed over 1.5 years ago[1] This is not allowed under the LGPL, which
by merlindru 10mo ago
The repo in question incorporated FFmpeg code while claiming their code is Apache 2.0-licensed over 1.5 years ago[1]
This is not allowed under the LGPL, which mandates dynamic linking against the library. They copy-pasted FFmpeg code into their repo instead.
[1] https://x.com/HermanChen1982/status/1761230920563233137 https://x.com/HermanChen1982/status/1761230920563233137
- a_void_sky 10mo agothey waited for more than 1.5 years and they did not forgot
- mystraline 10mo agoThey were given 1.5 YEARS of lead time. And FLOSS should treat commercial entities the same way they treat us. Seriously, if we copied in violation their code, how many hours would pass before a DMCA violation? FLOSS should be dictatorial in application of the license. After all, its basically free to use and remix as long as you follow the easy rules. I'm also on the same boat that Android phone creators should also be providing source fully, and should be confiscated on import for failure of copyright violations. But ive seen FLOSS devs be like "let's be nice". Tit for tat is the best game theory so far. Time to use it.
- helterskelter 10mo agoMy understanding is that the GPL doesn't have fucktons of precedent behind it in court. You bet the house on a big case and lose, the precedent will stick with GPL and may even weaken all copyleft licenses. Also, it's better to gently apply pressure and set a track record of violators taking corrective measures so when you end up in court one day you've got a list of people and corporate entities which do comply because they believed that the terms were clear enough, which would lend weight to your argument. Saying this as a GPL hardliner myself.
- fl0id 10mo agoAFAIK it has enough precedent (also depending a bit on jurisdiction, but you only need one) but the interpretations of what that/the license should cover differ. Like f e if you wanted to argue driver devs would have to open-source their firmware blobs or their proprietary driver loaded by a kernel shim you will have a tough time and prob lose
- LeoWattenberg 10mo agoMost licenses, EULAs, contracts and so on don't have much precedent in court. There's no reason to believe that GPL would fold once subjected to sufficiently crafty lawyers.
- Conan_Kudo 10mo agoIt definitely does have precedent in multiple jurisdictions. Heck, SFC just won against Vizio enforcing the GPL's terms in the US, and there have been previous wins in France and Germany.
- ajross 10mo agoThat's not it. The LGPL doesn't require dynamic linking, just that any distributed artifacts be able to be used with derived versions of the LGPL code. Distributing buildable source under Apache 2.0 would surely qualify too. The problem here isn't a technical violation of the LGPL, it's that Rockchip doesn't own the copyright to FFMPEG and simply doesn't have the legal authority to release it under any license other than the LGPL. What they should have done is put their modified FFMPEG code into a forked project, clearly label it with an LGPL LICENSE file, and link against that.
- rvnx 10mo agoCould there have been other / better moves with sending a reminder. I think the devs of that Chinese company seemed to immediately acknowledge the attribution. Now the OSS community loses the OSS code of IloveRockchip, and FFmpeg wins practically nothing, except recognition on a single file (that devs from Rockchip actually publicly acknowledged, though in a clumsy way) but loses in reputation and loses a commercial fork (and potential partner).
- PunchyHamster 10mo agoThey had ample warning and ignored the license. what you're even on about?
- rvnx 10mo ago[flagged]
- akerl_ 10mo agoThe amount of armchair quarterbacking here is wild.
- rvnx 10mo agoThen waiting to see how they addressed these points and what were the approaches taken and why ? Here spent time to think and document all the IRC chats, the Twitter thread, the attitude of the SoC manufacturer, etc. There has to be a backstory to suddenly come after 1.5 years for an issue that could have been solved in 10 minutes.
- dzhiurgis 10mo agoWhat happens when you want to mix two libraries with different licences?
- koolba 10mo agoIf you own one of them, mix in LGPL code, and publish it, the result is entirely LGPL. If you don’t own it and cannot legally relicense part as LGPL, you’re not allowed to publish it. Just because you can merge someone else’s code does not mean you’re legally allowed to do so.
- deleted 10mo ago[deleted]
- eqvinox 10mo agoThis is not correct; you're simply required to follow all applicable licenses at the same time. This may or may not be possible, but is in practice quite commonly done.
- Nevermark 10mo ago> Just because you can merge someone else’s code does not mean you’re legally allowed to do so. > This may or may not be possible I am not sure what you are saying, that is different from the comment you replied to.
- deleted 10mo ago[deleted]
- abigail95 10mo agoCompletely depends on how much you've "mixed in", and facts specific to that individual work. Fair use doesn't get thrown out the window because GPL authors have a certain worldview. Second, there are a lot of non-copyrightable components to source code - if you can't copyright it - you certainly can't GPL it. These can be copied freely by anyone at any time.
- amszmidt 10mo agoIncorporating compatible code, under different license is perfectly OK and each work can have different license, while the whole combined work is under the terms of another. I'm honestly quite confused what FFmpeg is objecting to here, if ILoveRockchip wrote code, under a compatible license (which Apache 2.0 is wrt. LGPLv2+ which FFmpeg is licensed under) -- then that seems perfectly fine. The repository in question is of course gone. Is it that ILoveRockchip claims that they wrote code that was written FFmpeg? That is bad, and unrelated to any license terms, or license compatibility ... just outright plagiarism.
- papercrane 10mo agoThe DMCA notice is available here: https://github.com/github/dmca/blob/master/2025/12/2025-12-18-ffmpeg.md https://github.com/github/dmca/blob/master/2025/12/2025-12-1... The notice has a list of files and says that they were copied from ffmpeg, removed the original copyright notice, added their own and licensed under the more permissive Apache license.
- amszmidt 10mo agoThanks for the link; sadly none of the links to the repo can be viewed to see what exactly occurred. To those downvoting, curious why? Many of the links are not viewable, since GitHub hides them, so any discussion becomes quite tricky.
- kstrauser 10mo agoI didn't downvote. I suspect people did because it sounded like you were defending ILoveRockchip's actions, based on either 1) not understanding what they did, and/or 2) not having access to the facts. People get snippy about abusing Free Software.
- progval 10mo agoYou can find an archive of the links' targets at https://archive.softwareheritage.org/swh:1:dir:5861f191873366a1a6b18bdeacee9a55d2d8cb49;origin=https://github.com/rockchip-linux/mpp;visit=swh:1:snp:65c3ea2995fea50c556ae4fc2305e6b2bad6e4a3;anchor=swh:1:rev:437bfbeb9567cca9cd9080e3f6954aa9d6a94f18;path=/mpp/codec/dec/ https://archive.softwareheritage.org/swh:1:dir:5861f19187336...
- LeoWattenberg 10mo agoCopy pasting code is allowed under LGPL, but doing so while removing license headers and attribution of code snippets would not be.
- chii 10mo agocopy/pasting, or using some other mechanism to do digital duplication is irrelevant - the removal of the existing license and essentially _re-license_ without authority is the problem, no matter what the mechanism of including the code is.
- GuB-42 10mo agoOnly if the code you copy pasted the LGPL part into is licenced under a compatible license, and Apache is not. The simplest way to comply while keeping your incompatible license is to isolate the LGPL part into a dynamic library, there are other ways, but it is by far the most common.
- merlindru 10mo agothis is accurate and how i should have phrased it. i should not have mentioned dynamic linking; you're right it's not relevant thank you!
- ranger_danger 10mo agoLGPL does not mandate dynamic linking, it mandates the ability to re-assemble a new version of the library. This might mean distributing object files in the case of a statically-linked application, but it is still allowed by the license.
- merlindru 10mo agothis is accurate - thank you for the correction
- doctorpangloss 10mo agoI like FFmpeg, I hate doing the whole whataboutism thing, especially because FFmpeg is plainly in the right here, but... listen, FFmpeg as a product is a bunch of license violations too. Something something patents, something something, "doctrine of unclean hands." I worry that HN downvotes people who are trying to address the bigger picture here, because the net result of a lack of nuance always winds up being, "Okay, the real winners are Google and Apple."
- kortilla 10mo agoIndependent implementations of an algorithm are a different dimension from software licensing. So the “unclean hands” argument doesn’t hold water here. Patents != copyright
- webstrand 10mo agoWhat licenses are they violating?
- reedciccio 10mo agoThey don't violate licenses otherwise they would have been blown out of existence a long time ago, drown lawsuit after lawsuit.
- doctorpangloss 10mo agoThe ones that Microsoft Apple and Google pay for, the codec licenses. FFmpeg believes that only end users need licenses for codecs, which is not only their belief, but it’s not a belief of Microsoft, Apple and Google, and it is true the sense of the status quo, but also, LGPL violations are a status quo. So you can see how it’s a bad idea for FFmpeg to make a stink about licenses.
- saghm 10mo agoWith the exception of the Apache license, most major licenses don't cover patents. I have no idea about proprietary licenses if that's what you're talking about here, but it's a bit unclear, so it might help to go into more details than "something something" if you're intending to make a compelling case.
- compsciphd 10mo agothis is fundamentally false. The LGPL was created because of static linking where GPLd code would be in the distributed binary. It's an open question (the FSF has their opinion, but it has never been adjudicated) if the GPL impacts dynamic linking. One could argue that if one ships GPL dynamic libraries together with one's non GPLd code, one is shipping an aggregate and hence the GPL infects the whole, but its more complicated to say if one ships a non GPLd binary that runs on Debian, Redhat et al and uses GPLd libraries that they ship.