After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 654037 - gst-ffmpeg enables GPL parts in ffmpeg/libav
gst-ffmpeg enables GPL parts in ffmpeg/libav
Status: RESOLVED DUPLICATE of bug 532779
Product: GStreamer
Classification: Platform
Component: gst-libav
git master
Other All
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-07-05 18:46 UTC by Martin Storsjö
Modified: 2011-10-05 08:25 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch fixing the issue (2.50 KB, patch)
2011-07-05 18:46 UTC, Martin Storsjö
needs-work Details | Review
Updated patch (3.82 KB, patch)
2011-10-05 08:25 UTC, Martin Storsjö
none Details | Review

Description Martin Storsjö 2011-07-05 18:46:47 UTC
Created attachment 191353 [details] [review]
Patch fixing the issue

When building gst-ffmpeg, the built bundled ffmpeg is built with --enable-gpl with no option for disabling this.

The attached patch adds an --enable-lgpl configure option, which removes --enable-gpl --enable-postproc from the configure line of the embedded ffmpeg/libav, and disables building the libpostproc subdirectory.
Comment 1 Edward Hervey 2011-07-05 20:40:24 UTC

*** This bug has been marked as a duplicate of bug 532779 ***
Comment 2 Edward Hervey 2011-07-11 08:42:36 UTC
Review of attachment 191353 [details] [review]:

In addition to the comment about LGPL, this patch should also check dynamically how libav (whether included or system-wide) was built in order to modify the license field of the plugin details.

It's a bit late to include this one in the release

::: configure.ac
@@ +207,3 @@
+AC_ARG_ENABLE(lgpl,
+              [AC_HELP_STRING([--enable-lgpl], [build a LGPL licensed gst-ffmpeg])])
+AM_CONDITIONAL(LGPL, test "x$enable_lgpl" = "xyes")

LGPL is too generic of a name. Something like GST_FFMPEG_ENABLE_LGPL would be better.
Comment 3 Martin Storsjö 2011-07-11 12:26:49 UTC
(In reply to comment #2)
> Review of attachment 191353 [details] [review]:
> 
> In addition to the comment about LGPL, this patch should also check dynamically
> how libav (whether included or system-wide) was built in order to modify the
> license field of the plugin details.

Do you mean dynamically as in runtime, via e.g. avcodec_license()? As far as I can see, the license is compiled in into the binary by GST_PLUGIN_DEFINE() - how would I update this from e.g. the plugin_init function? (This can't be decided at compile time, since iirc the ffmpeg headers don't provide info about how it was configured - unless we just pass an extra define if --enable-gpl was used.)

> It's a bit late to include this one in the release

No problem, as long as it gets fixed eventually.

> ::: configure.ac
> @@ +207,3 @@
> +AC_ARG_ENABLE(lgpl,
> +              [AC_HELP_STRING([--enable-lgpl], [build a LGPL licensed
> gst-ffmpeg])])
> +AM_CONDITIONAL(LGPL, test "x$enable_lgpl" = "xyes")
> 
> LGPL is too generic of a name. Something like GST_FFMPEG_ENABLE_LGPL would be
> better.

Changed into GST_FFMPEG_ENABLE_LGPL locally, I'll resend it later.
Comment 4 Martin Storsjö 2011-10-05 08:25:11 UTC
Created attachment 198312 [details] [review]
Updated patch

Updated the patch according to the comments. Since it doesn't seem to be possible to change what license the plugin advertises at runtime, I changed it to be hardcoded depending on what configure flags were used at build time, which seems to be the most that can be done at the moment.