We were previously installing hardcoded properties for all
video encoders, refactor to instead use FFmpeg's AVOption API.
avvidenc still exposes a few properties related to the pass
mechanism: while the AVOption API allows specifying both passes
as flags at the same time, this is not practical in GStreamer's
context, where passes need to be run separately using a stats file.
https://bugzilla.gnome.org/show_bug.cgi?id=792900
The remaining use of CODEC_ are codec flags that has been moved into the
new codec private properties or have been deperated. Will be fixed in
later patches.
https://bugzilla.gnome.org/show_bug.cgi?id=792900
Store the original AS environment variable passed to configure
correctly, and export it so it's actually available to the sub-process
when configuring the embedded ffmpeg
Otherwise we will reference the dependant libraries with -lfoo rather than
/path/to/libfoo.la which breaks with the Android-based .la parser which
simply passes through all -l libraries.
https://bugzilla.gnome.org/show_bug.cgi?id=786403
WARNING: Trying to compare values of different types (str, int).
The result of this is undefined and will become a hard error
in a future Meson release.
The documentation of libav says -Bsymbolic may be needed when building a
shared library which links statically to libav.
Fixes linking error on FreeBSD:
gst-libav/gst-libs/ext/.libs/libavcodec.a(simple_idct10.o):
relocation R_X86_64_PC32 against `ff_pw_1023' can not be used when making a
shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
https://bugzilla.gnome.org/show_bug.cgi?id=791783
Autotools automatically appends user CPPFLAGS after target
CPPFLAGS. Also, it puts all CPPFLAGS before CFLAGS in final
generated gcc compile command. The internal ffmpeg include
paths need to come before any other external include paths
to ensure we don't accidentally pickup external ffmpeg
headers first (i.e. from user CPPFLAGS include paths). Thus,
move the internal LIBAV include paths to LIBAV_CPPFLAGS so
that they come before any user defined CPPFLAGS.
This allows ffmpeg and gst-ffmpeg to coexist on users system.
https://bugzilla.gnome.org/show_bug.cgi?id=789379