Skip to content

Relicense the library under LGPL-2.1-or-later - #174

Merged
georgmartius merged 3 commits into
masterfrom
chore/lgpl-relicense
Aug 6, 2026
Merged

Relicense the library under LGPL-2.1-or-later#174
georgmartius merged 3 commits into
masterfrom
chore/lgpl-relicense

Conversation

@georgmartius

@georgmartius georgmartius commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Moves vid.stab from GPL-2.0-or-later to LGPL-2.1-or-later.

Closes #165.

Why

vid.stab is a library, and the GPL forced every application linking it to be GPL as well. Concretely, ffmpeg can only build vidstabdetect and vidstabtransform under --enable-gpl, so most distributed ffmpeg builds ship with no video stabilization at all. The LGPL lets an application link vid.stab without taking on its licence, while modifications to vid.stab itself must still be published under the LGPL — the reciprocity that actually matters for a library.

Consent

Every contributor with code in src/ agreed in #165. The statements are recorded in RELICENSE.md with a permalink each:

Permission was granted in addition to the GPL, so copies already obtained under the GPL keep their GPL terms; nothing is revoked.

What changed

  • src/*.[ch] — all 40 files: licence blocks rewritten to the LGPL, plus an SPDX-License-Identifier: LGPL-2.1-or-later line. Comments only. Five files still described themselves as part of transcode, where they originated; they name vid.stab now.
  • COPYING.LESSER — the verbatim FSF text. The repository carried no licence text at all before, only a paraphrase in LICENSE.
  • LICENSE — states the licence and what it asks, instead of paraphrasing the GPL.
  • RELICENSE.md — new; the reasoning and the permissions.
  • README.md, Changelog — updated.

With transcode and the vendored sse2neon.h removed in #175, the tree is under a single licence, so no GPL or MIT text is shipped alongside.

Verified: builds clean and 35/35 unit tests pass — the source changes are comments.

Merge order

Stacked on #175, which is stacked on #171. Merge those two first; GitHub retargets this PR to master as they land.

🤖 Generated with Claude Code

@georgmartius
georgmartius force-pushed the chore/lgpl-relicense branch from 4d01cb4 to 218906e Compare August 6, 2026 06:27
@georgmartius
georgmartius changed the base branch from chore/msvc-portability to chore/remove-transcode August 6, 2026 06:27
@georgmartius
georgmartius force-pushed the chore/remove-transcode branch from 9858a83 to 95243b7 Compare August 6, 2026 06:50
Georg Martius added 3 commits August 6, 2026 08:51
The repository carried no licence text at all, only a paraphrase of the
GPL in LICENSE.
vid.stab is a library, and under the GPL every application linking it had
to be GPL as well.  In practice that meant ffmpeg could only build the
vidstabdetect and vidstabtransform filters under --enable-gpl, so most
distributed ffmpeg builds shipped with no video stabilization at all.

Under the LGPL an application may link vid.stab without taking on its
licence, while modifications to vid.stab itself still have to be
published under the LGPL -- the reciprocity that matters for a library.

Every contributor whose code is in src/ agreed to the change in issue
#165; the statements are recorded in RELICENSE.md.  Permission was
granted in addition to the GPL, so copies obtained under the GPL keep
their GPL terms.

Only comment blocks change here, and an SPDX-License-Identifier line is
added to each file.  Five files still described themselves as part of
transcode, where they were written many years ago; they say vid.stab now.
LICENSE paraphrased the GPL; it now states the licence and what it asks.
RELICENSE.md records why the library moved to the LGPL and links the
permission each copyright holder gave in issue #165.
@georgmartius
georgmartius force-pushed the chore/lgpl-relicense branch from 218906e to e4fef65 Compare August 6, 2026 06:53
@georgmartius
georgmartius changed the base branch from chore/remove-transcode to master August 6, 2026 06:59
@georgmartius georgmartius reopened this Aug 6, 2026
@georgmartius
georgmartius merged commit b85fa83 into master Aug 6, 2026
4 checks passed
@georgmartius
georgmartius deleted the chore/lgpl-relicense branch August 7, 2026 05:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Relicensing the vid.stab library from GPL-2.0-or-later to LGPL-2.1-or-later — consent needed

1 participant