gstreamer/subprojects/gst-libav
Stéphane Cerveau dd17beb681 gstreamer-full: add full static support
Allow a project to use gstreamer-full as a static library
and link to create a binary without dependencies.

Introduce the option 'gst-full-target-type' to
select the build type, dynamic(default) or static.

In gstreamer-full/static build configuration gstreamer (gst.c)
needs the symbol gst_init_static_plugins which is defined
in gstreamer-full.
All the tests and examples are linking with gstreamer but the
symbol gst_init_static_plugins is only defined in the gstreamer-full
library. gstreamer-full can not be built first as it needs to know what plugins
will be built.

One option would be to build all the examples and tests after
gstreamer-full as the tools.

Disable tools build in subprojects too as it will be built at the end of
build process.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4128>
2023-05-31 15:17:11 +00:00
..
docs gst-libav: add avvideocompare element 2023-05-04 19:34:06 +00:00
ext/libav avviddec: Temporarily unlock stream lock while flushing buffers 2023-05-13 10:20:32 +00:00
scripts meson: Generate ChangeLog files for release tarballs on dist 2022-12-04 18:16:25 +00:00
tests gstreamer-full: add full static support 2023-05-31 15:17:11 +00:00
.gitignore Move files from gst-libav into the "subprojects/gst-libav/" subdir 2021-09-24 16:15:08 -03:00
AUTHORS Move files from gst-libav into the "subprojects/gst-libav/" subdir 2021-09-24 16:15:08 -03:00
COPYING Move files from gst-libav into the "subprojects/gst-libav/" subdir 2021-09-24 16:15:08 -03:00
gst-libav.doap Release 1.22.0 2023-01-23 19:41:07 +00:00
meson.build Back to development 2023-01-23 23:04:53 +00:00
meson_options.txt Move files from gst-libav into the "subprojects/gst-libav/" subdir 2021-09-24 16:15:08 -03:00
NEWS Release 1.22.0 2023-01-23 19:41:07 +00:00
README.md Move files from gst-libav into the "subprojects/gst-libav/" subdir 2021-09-24 16:15:08 -03:00
RELEASE Release 1.22.0 2023-01-23 19:41:07 +00:00

gst-libav

This module contains a GStreamer plugin for using the encoders, decoders, muxers, and demuxers provided by FFmpeg. It is called gst-libav for historical reasons.

Plugin Dependencies and Licenses

GStreamer is developed under the terms of the LGPL-2.1 (see COPYING file for details), and that includes the code in this repository.

However, this repository depends on FFmpeg, which can be built in the following modes using various ./configure switches: LGPL-2.1, LGPL-3, GPL, or non-free.

This can mean, for example, that if you are distributing an application which has a non-GPL compatible license (like a closed-source application) with GStreamer, you have to make sure not to build FFmpeg with GPL code enabled.

Overall, when using plugins that link to GPL libraries, GStreamer is for all practical reasons under the GPL itself.

The above recommendations are not legal advice, and you are responsible for ensuring that you meet your licensing obligations.