diff options
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 491 |
1 files changed, 491 insertions, 0 deletions
@@ -1,3 +1,494 @@ +=== release 1.16.3 === + +2020-10-21 14:45:38 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-plugins-base.doap: + * meson.build: + Release 1.16.3 + +2020-10-21 14:45:38 +0100 Tim-Philipp Müller <tim@centricular.com> + + * docs/plugins/gst-plugins-base-plugins.args: + * docs/plugins/gst-plugins-base-plugins.hierarchy: + * docs/plugins/gst-plugins-base-plugins.interfaces: + * docs/plugins/inspect/plugin-adder.xml: + * docs/plugins/inspect/plugin-alsa.xml: + * docs/plugins/inspect/plugin-app.xml: + * docs/plugins/inspect/plugin-audioconvert.xml: + * docs/plugins/inspect/plugin-audiomixer.xml: + * docs/plugins/inspect/plugin-audiorate.xml: + * docs/plugins/inspect/plugin-audioresample.xml: + * docs/plugins/inspect/plugin-audiotestsrc.xml: + * docs/plugins/inspect/plugin-cdparanoia.xml: + * docs/plugins/inspect/plugin-compositor.xml: + * docs/plugins/inspect/plugin-encoding.xml: + * docs/plugins/inspect/plugin-gio.xml: + * docs/plugins/inspect/plugin-libvisual.xml: + * docs/plugins/inspect/plugin-ogg.xml: + * docs/plugins/inspect/plugin-opengl.xml: + * docs/plugins/inspect/plugin-opus.xml: + * docs/plugins/inspect/plugin-overlaycomposition.xml: + * docs/plugins/inspect/plugin-pango.xml: + * docs/plugins/inspect/plugin-pbtypes.xml: + * docs/plugins/inspect/plugin-playback.xml: + * docs/plugins/inspect/plugin-rawparse.xml: + * docs/plugins/inspect/plugin-subparse.xml: + * docs/plugins/inspect/plugin-tcp.xml: + * docs/plugins/inspect/plugin-theora.xml: + * docs/plugins/inspect/plugin-typefindfunctions.xml: + * docs/plugins/inspect/plugin-videoconvert.xml: + * docs/plugins/inspect/plugin-videorate.xml: + * docs/plugins/inspect/plugin-videoscale.xml: + * docs/plugins/inspect/plugin-videotestsrc.xml: + * docs/plugins/inspect/plugin-volume.xml: + * docs/plugins/inspect/plugin-vorbis.xml: + * docs/plugins/inspect/plugin-ximagesink.xml: + * docs/plugins/inspect/plugin-xvimagesink.xml: + Update docs + +2020-10-21 14:45:36 +0100 Tim-Philipp Müller <tim@centricular.com> + + * po/da.po: + * po/pt_BR.po: + * po/ro.po: + * po/sr.po: + Update translations + +2020-10-21 12:16:37 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/gl/egl/Makefile.am: + gl: dist new private egl header + +2020-10-20 15:09:56 +0100 Tim-Philipp Müller <tim@centricular.com> + + * README: + * common: + Automatic update of common submodule + From 59cb678 to a825d27 + +2020-10-17 10:42:49 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst/typefind/gsttypefindfunctions.c: + typefind/xdgmime: Validate mimetypes to be valid GstStructure names before using them + On macOS, for example, "text/*" can be returned as mimetype for + plaintext files but we don't allow '*' in structure names and this would + cause critical warnings. + It's a valid mimetype but not a valid structure name. + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/616 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/879> + +2020-10-12 12:21:17 +0100 Will Miller <will.miller@pexip.com> + + * gst-libs/gst/rtp/gstrtpbuffer.c: + * tests/check/libs/rtp.c: + gstrtpbuffer: fix header extension length validation + We validate the header extensions length of an RTP buffer by comparing + it against the block size. Since we multiply the length in words by 4 to + get the length in bytes, a suitably large length could cause a wrapround + of the uint16, giving a lower length which erroneously passes the check + and allows the buffer to be mapped. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/866> + +2020-10-09 12:02:14 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com> + + * gst-libs/gst/video/video-info.h: + video-info: clarify GST_VIDEO_INTERLACE_MODE_ALTERNATE doc + Fields really should alternate in this mode. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/862> + +2020-10-05 12:07:22 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com> + + * gst-libs/gst/video/gstvideodecoder.c: + videodecoder: fix output state interlace-mode + When user is passing the actual interlace-mode when calling + gst_video_decoder_set_interlaced_output_state() it should not be + overidden by the input interlace-mode. + Needed to fix #825 as we want to keep interlace-mode=interleaved from + parsers and have the OMX decoder producing interlace-mode=alternate. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/862> + +2020-10-05 11:38:09 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com> + + * gst-libs/gst/video/gstvideodecoder.c: + videodecoder: add interlace-mode to debug output when setting output state + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/862> + +2020-10-10 17:26:42 +0200 François Laignel <fengalin@free.fr> + + * gst/playback/gstdecodebin3.c: + decodebin3: only force streams-selected seqnum after a select-streams + The initial streams-selected message might not match any select-streams, + in which case it is currently overriden with GST_SEQNUM_INVALID. + Related to: + - https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/601 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/863> + +2020-05-14 14:00:22 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/egl/gstgldisplay_egl.c: + gl/display/egl: ensure debug category is initialized + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/833> + +2020-07-27 18:55:35 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: Only check downstream caps when handling CAPS events if we didn't negotiate with downstream yet + If we already negotiated with downstream there is not point in checking + if the caps are supported. We already know that this is the case. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/834> + +2020-07-27 18:49:48 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: Check all downstream allowed caps structures if they support the upstream rate + Otherwise it might happen that downstream prefers a different rate (i.e. + puts it into the first structure) and also supports other rates, but + audioaggregator would then fail negotiation. + Also this now correctly handles downstream returning a range of + supported rates. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/795 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/834> + +2020-06-02 16:56:44 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-format.c: + video-format: RGB16/15 are not 16 bit per component but only 5.333 and 5 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/826> + +2020-06-04 11:22:00 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/video/video-format.c: + video: Fix NV12_64Z32 number of component + This format has 3 components, just like NV12. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/827> + +2020-06-12 00:21:56 +0200 David Bender <benderdave@gitlab.fdo> + + * gst-libs/gst/gl/x11/gstglwindow_x11.c: + gstglwindow_x11: fix resize + This patch was taken from #629#note_178766, the comment made + at the time was: + The root issue is a mismatch between the initialization of render_rect + in GstGLWindowX11Private and what's expected in the draw_cb function. + Because render_rect is not explicitly initialized to a width and height + of -1 (unlike gstglwindow_wayland_egl.c which does initialize to -1), + the less-than check for explicitly-set render_rect at gstglwindow_x11.c:453-454 + always fails, even when the parent_win has been set and the render rectangle + has never been set. + Maybe this came from copying the similar check in the wayland code? Regardless, + I think the correct inequality should be '<= 0' (on both lines). + Alternatively initialization could be changed, but other sinks, e.g. + xvimagesink don't appear to use -1 to mean "unset" render_rect this way. + The issue can be reproduced by running the example in + tests/examples/gl/qt/videooverlay/ on X11, and resizing the output + window + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/829> + +2020-08-25 12:56:21 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst/audioresample/gstaudioresample.c: + * gst/videorate/gstvideorate.c: + * gst/videoscale/gstvideoscale.c: + videorate/videoscale/audioresample: Ensure that the caps returned from fixate_caps() are actually fixated + If there is some other field than the ones we care about left and not + fixated yet then basetransform will just error out. So instead just pass + the result through gst_caps_fixate() in the very end. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/832> + +2020-08-11 17:15:50 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/pbutils/codec-utils.c: + pbutils: Add latest H.264 level values + The spec now list 6, 6.1 and 6.2. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/831> + +2020-07-09 12:45:27 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: Fix negotiation with downstream if there is no peer yet + get_allowed_caps() will return NULL, which is not a problem in itself. + Just take the template caps for negotiation in that case instead of + erroring out. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/830> + +2020-06-11 20:57:58 +0300 Jordan Petridis <jpetridis@gnome.org> + + * ext/libvisual/visual.c: + libvisual: use gst_element_class_set_metadata when passing dynamic strings + gst_element_class_set_metadata is meant to only be used with + static or inlined strings, which isn't the case for this element + resulting in use-after-free later on. + https://gstreamer.freedesktop.org/documentation/gstreamer/gstelement.html?gi-language=c#gst_element_class_set_static_metadata + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/828> + +2020-05-06 11:52:20 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/pbutils/gstdiscoverer.c: + discoverer: Check sinkpad existence before retrieving caps + Otherwise we would error out without releasing the caps first. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/825> + +2020-05-06 11:44:39 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/pbutils/gstdiscoverer.c: + discoverer: Ensure that we have fixed, non-empty caps before passing passing to is_subtitle_caps() + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/825> + +2020-05-06 11:42:05 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/pbutils/gstdiscoverer.c: + discoverer: Try to get negotiated caps first on pad-added and only then fall back to a caps query + The negotiated caps will be more accurate and are fixed caps in any + case. + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/498 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/825> + +2020-04-10 22:45:26 +1000 Jan Schmidt <jan@centricular.com> + + * gst/typefind/gsttypefindfunctions.c: + typefind: Consider MPEG-PS PSM to be a PES type + Include the Program Stream Map packet type 0xBC in the + set of packets we treat as PES. This fixes typefinding + on MPEG-PS streams with PSM, where the PSM would previously + be considered a loss-of-sync and cause the typefind + to require more data. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/824> + +2020-03-11 01:01:34 +0100 Mathieu Duponchelle <mathieu@centricular.com> + + * gst/subparse/gstsubparse.c: + subparse: accept WebVTT timestamps without an hour component + https://www.w3.org/TR/webvtt1/#webvtt-timestamp + mm:ss,000 is a valid WebVTT timestamp + +2020-04-10 04:24:03 +1000 Jan Schmidt <jan@centricular.com> + + * ext/pango/gsttextrender.c: + textrender: Fix AYUV output. + Fix the check for whether the element is operating in ARGB mode. It + was incorrectly checking if the output format has an alpha channel, + which is true for both ARGB and AYUV, leading to the element + incorrectly outputting ARGB values into AYUV caps. + +2020-05-10 15:13:16 +0100 Chris Mayo <aklhfex@gmail.com> + + * m4/gst-gl.m4: + build: Replace bashisms in configure for Wayland and GLES3 + checking for wayland-scanner... wayland-scanner + ./configure: 28389: test: xyes: unexpected operator + checking libdrm/drm_fourcc.h usability... yes + checking libdrm/drm_fourcc.h presence... yes + checking for libdrm/drm_fourcc.h... yes + checking for glTexDirectVIV in -lGLESv2... no + ./configure: 28530: test: xyes: unexpected operator + ./configure: 28533: test: x: unexpected operator + Causes build failure: + make[6]: *** No rule to make target '/stable/xdg-shell/xdg-shell.xml', + needed by 'xdg-shell-client-protocol.c'. Stop. + +2020-03-26 13:46:56 +0800 Haihao Xiang <haihao.xiang@intel.com> + + * gst-libs/gst/gl/gstglupload.c: + glupload: fix segfault + Without this fix, it is possible that outbuf is not initialized, which + will result in segfault when call gst_buffer_replace (&outbuf, NULL). In + addition, the patch fixes potential memory leak in restart path. + The segfault can be reproduced by the pipeline below: + GST_GL_PLATFORM=egl \ + gst-launch-1.0 videotestsrc ! msdkh265enc ! msdkh265dec ! \ + 'video/x-raw(memory:DMABuf)' ! glimagesink + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/619 + +2020-03-09 10:21:53 +0000 Chris Lord <clord@igalia.com> + + * gst-libs/gst/gl/egl/gsteglimage.c: + * gst-libs/gst/gl/egl/gsteglimage_private.h: + * gst-libs/gst/gl/gstglupload.c: + glupload: Fix fallback from direct dmabuf to dmabuf upload method + In the situation that the direct dmabuf path is chosen, but with an + unsupported texture format, this causes accept to fail rather than + continue and fail at the upload stage. It is also possibly necessary to + reconfigure after falling back from direct to non-direct dmabuf upload + paths. + +2020-03-09 20:16:47 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/blend.c: + compositor: Create a square checkerboard for UYVY/YUY2/YVYU too + Previously the "squares" were twice as wide. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/732 + +2020-03-09 20:12:12 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/blend.c: + * gst/compositor/blend.h: + compositor: Define a separate checker fill function for BGRx/RGBx than for xBGR/xRGB + Otherwise we'll create a cyan or yellow checkerboard. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/736 + +2020-02-10 10:29:25 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com> + + * gst-libs/gst/video/video-info.h: + video-info: fix typo in doc + +2020-02-07 11:18:24 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com> + + * gst-libs/gst/video/video-frame.h: + * tests/check/libs/video.c: + video: fix GST_VIDEO_FRAME_IS_BOTTOM_FIELD() + GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD is a subset of + GST_VIDEO_FRAME_FLAG_TOP_FIELD so needs to be checked accordingly. + Fix #726 + +2020-02-12 13:11:43 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/app/gstappsink.c: + * gst-libs/gst/app/gstappsrc.c: + appsrc/appsink: Make setting/replacing callbacks thread-safe + Previously we would simply use them without any locking at all, while + using the object lock for setting them. Nothing prevented new callbacks + to be set in the meantime, potentially calling a callback with already + freed user_data. + To prevent this move the callbacks into a reference counted struct and + use the appsrc/appsink mutex to protect access to it, which is used in + all functions calling the callbacks already anyway. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/729 + +2020-02-10 17:15:13 -0300 Thibault Saunier <tsaunier@igalia.com> + + * gst-libs/gst/pbutils/gstdiscoverer.c: + discoverer: Start discovering next URI from right thread + When using the cache, we were not using the right GMainContext to setup + next URI to discovery, fix that. + +2020-02-04 14:14:38 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglcolorconvert.c: + glcolorconvert: error out if memory context is different than ours + +2020-02-04 14:06:36 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstgltestsrc.c: + gltestsrc: NULL out the functions used + Fixes segfault when the display changes + +2020-02-04 14:01:47 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglviewconvert.c: + glviewconvert: fix reset context for GL context change + We need to remove GL resources from the old context instead of the new + GL context. The two GL context may not even be shared. + +2020-02-04 13:59:37 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglviewconvert.c: + glviewconvert: also remove GL buffers on a reset + Fixes a possible memory leak on renegotiation + +2020-01-28 22:07:44 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Don't configure NULL chroma-site/colorimetry + If there's no known value in the best caps then the functions to convert + them to strings will return NULL. Having the fields not in the caps is + not a problem, having them with a NULL value however will cause + negotiation failures. + +2019-06-05 18:17:35 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: perform _get_highest_precision on the GL thread + gst_gl_shader_string_get_highest_precision needs to make an OpenGL call + so execution outside the OpenGL thread and context results in undefined + behaviour. + +2020-01-17 11:22:48 +0100 Dimitrios Katsaros <patcherwork@gmail.com> + + * gst/playback/gsturidecodebin3.c: + uridecodebin3: Fixed defauts not being set on initialization + The default values were not being set on element initialization. This + was a problem for buffer_duration and buffer_size since they would be + zero initialized, rather then being set to -1. This would cause the + underlaying queue2 element to have no limits and depending on the + streamed file, could cause queue2 to allocate massive amounts of memory. + +2020-01-13 09:06:02 +0000 Philippe Normand <philn@igalia.com> + + * ext/ogg/gstoggstream.c: + oggstream: Workaround for broken PAR in VP8 BOS + Similarily to the Theora mapping, process 0:N, N:0 and 0:0 pixel aspect ratios + as 1:1. + Fixes #719 + +2019-12-27 11:34:26 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/fft/_kiss_fft_guts_f32.h: + * gst-libs/gst/fft/_kiss_fft_guts_f64.h: + * gst-libs/gst/fft/_kiss_fft_guts_s16.h: + * gst-libs/gst/fft/_kiss_fft_guts_s32.h: + * gst-libs/gst/fft/kiss_fft_f32.c: + * gst-libs/gst/fft/kiss_fft_f32.h: + * gst-libs/gst/fft/kiss_fft_f64.c: + * gst-libs/gst/fft/kiss_fft_f64.h: + * gst-libs/gst/fft/kiss_fft_s16.c: + * gst-libs/gst/fft/kiss_fft_s16.h: + * gst-libs/gst/fft/kiss_fft_s32.c: + * gst-libs/gst/fft/kiss_fft_s32.h: + * gst-libs/gst/fft/kiss_fftr_f32.c: + * gst-libs/gst/fft/kiss_fftr_f32.h: + * gst-libs/gst/fft/kiss_fftr_f64.c: + * gst-libs/gst/fft/kiss_fftr_f64.h: + * gst-libs/gst/fft/kiss_fftr_s16.c: + * gst-libs/gst/fft/kiss_fftr_s16.h: + * gst-libs/gst/fft/kiss_fftr_s32.c: + * gst-libs/gst/fft/kiss_fftr_s32.h: + * gst-libs/gst/fft/kiss_version: + fft: Update our kiss fft version + This fixes thread-safety issues and various other minor issues. Our + previous version was about 13 years old. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/715 + +2019-12-20 13:35:53 +0100 Jonas Holmberg <jonashg@axis.com> + + * gst-libs/gst/audio/gstaudioencoder.c: + audioencoder: fix segment event leak + Segment event was leaked if format != _TIME. + +2019-09-03 16:03:49 -0400 Thibault Saunier <tsaunier@igalia.com> + + * gst/playback/gstplaybin2.c: + playbin: Handle error message with redirection indication + There are in the wild (mp4) streams that basically contain no tracks + but do have a redirect info[0], in which case, qtdemux won't be able + to expose any pad (there are no tracks) so can't post anything but + an error on the bus, as: + - it can't send EOS downstream, it has no pad, + - posting an EOS message will be useless as PAUSED state can't be + reached and there is no sink in the pipeline meaning GstBin will + simply ignore it + In that case, currently the application could try to handle that but it + is pretty complex as it will get the REDIRECT message on the bus at + which point it could set the URL but playbin will ignore it, as + it will only be for the next EOS, it thus need to set the pipeline to + NULL (READY won't do as it is already in READY at that point). And it + needs to figure out the following ERROR message on the bus needs to be + ignored, which is not really simple. + The approach here is to allow element to add details to the ERROR + message with a `redirect-location` field which elements like playbin handle + and use right away. + We could also use the element 'redirect' message in playbin, but the + issue with that approach is that the element will still emit the ERROR + message on the bus, leading to wrong behaviour. That can't be avoided + since in the case the app/parent pipeline is not handling the redirect + instruction, the ERROR message is necessary (and there is no way to + detect that the message has been "handled" from the element emitting the + redirect). + [0]: http://movietrailers.apple.com/movies/paramount/terminator-dark-fate/terminator-dark-fate-trailer-2_480p.mov + === release 1.16.2 === 2019-12-03 11:03:11 +0000 Tim-Philipp Müller <tim@centricular.com> |