U. Artie Eoff
5fb2bbc2eb
libav: guard dropped AV_OPT_TYPE_CHANNEL_LAYOUT
...
The FF_API_OLD_CHANNEL_LAYOUT api was dropped in upstream:
https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/65ddc7498824
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6341 >
2024-04-02 07:12:37 +00:00
Guillaume Desmottes
6d94b77ae8
libav: expose fake booleans properties as enums
...
Some ffmpeg options claims to be booleans but are actually 3-values enums
with -1 as default instead of 1 or 0. Handle those using a custom enum
so we keep the same defaults as ffmpeg and users can properly configure them
if they need to.
See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3035
for an actual example of this problem. The GStreamer element was
automatically enabling a non-default option, leading to strange behavior
in the AAC encoder.
Fix #3035
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5507 >
2023-10-19 12:39:06 +00:00
Edward Hervey
47833c8b36
avcfg: Don't leak the support GArray when registering flag/enums
...
* Only create it if we are attempting to put values in it
* If we sucessfully registered the values, only free the GArray
* IF we didn't, also free the backing memory
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390 >
2022-11-13 06:59:11 +01:00
Edward Hervey
0213536f77
libav: avcfg: Avoid brittle comparision
...
Subtracting a gint from another (or a guint from another) has no guarantees that
it will result in a gint.
Therefore do the actual comparision instead.
Also use the *actual* type for comparing flags (the field value types are different)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319 >
2022-11-04 17:59:21 +00:00
Edward Hervey
cadc067bde
libav: avcfg: Don't leak duplicate enumvalue entries
...
If we discard the duplicates, we also need to free the allocated strings.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319 >
2022-11-04 17:59:21 +00:00
Seungha Yang
0513e51716
libav: Fix for APNG encoder property registration
...
The AVClass name of Animated PNG in FFmpeg 5.x is "(A)PNG"
and it will be converted to "-a-png" through
g_ascii_strdown() and g_strcanon(). But GLib disallow leading '-'
character for a GType name. Strip leading '-' to workaround it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2724 >
2022-07-08 13:56:35 +00:00
Thibault Saunier
7a371e75b7
Move files from gst-libav into the "subprojects/gst-libav/" subdir
2021-09-24 16:15:08 -03:00