summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2019-05-29 17:36:53 +0100
committerTim-Philipp Müller <tim@centricular.com>2019-05-29 17:36:55 +0100
commitc1b4b0f80505cc8bf5579f56dd0028f40e611159 (patch)
treefffbe040f3f9f004234c152099e2f868103d6b55
parent2d9a02e5d097095efc9aae90252d1a9f9069f030 (diff)
Release 1.14.51.14.5
-rw-r--r--ChangeLog919
-rw-r--r--NEWS198
-rw-r--r--README2
-rw-r--r--RELEASE22
-rw-r--r--configure.ac6
-rw-r--r--gst-plugins-base.doap10
-rw-r--r--meson.build2
7 files changed, 1139 insertions, 20 deletions
diff --git a/ChangeLog b/ChangeLog
index 11bde90d7..752f0ae14 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,922 @@
+=== release 1.14.5 ===
+
+2019-05-29 17:36:53 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ChangeLog:
+ * NEWS:
+ * README:
+ * RELEASE:
+ * configure.ac:
+ * gst-plugins-base.doap:
+ * meson.build:
+ Release 1.14.5
+
+2019-05-29 17:36:53 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * 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-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-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
+
+2019-05-26 16:36:20 +0200 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/gl/wayland/wayland_event_source.c:
+ Revert "gl/wayland: fix glib mainloop integration"
+ This reverts commit 85c9b7670839801c766a9d1432a5bbc40abcb718.
+ This caused regressions in master which have not been resolved
+ yet, so removing backport from 1.14 branch.
+ See !241 and #603.
+ Fixes #607
+
+2018-11-05 05:35:12 +0000 Matthew Waters <matthew@centricular.com>
+
+ * .gitmodules:
+ Update common submodule location without /git/ directory
+
+2018-11-05 12:06:15 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * .gitmodules:
+ * gst-plugins-base.doap:
+ Clone the code from gitlab
+ This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/503
+
+2019-04-26 09:44:07 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/tag/gstid3tag.c:
+ id3tag: Correctly validate the year from v1 tags before passing to GstDateTime
+ By using strtoul(), invalid values will get mapped to MAXULONG and we
+ would have to check errno. They won't get mapped to 0.
+ To solve this, use the signed g_ascii_strtoll(). This will map errors to
+ 0 or G_MAXINT64 or G_MININT64, and the valid range for GstDateTime is >
+ 0 and <= 9999 so we can directly check for this here.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/384
+
+2019-04-23 17:10:47 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ eglimage: Add compatibility define for DRM_FORMAT_NV24
+
+2019-03-06 00:59:35 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstgloverlaycompositor.c:
+ gloverlaycompositor: Also free the texcoord GL buffer
+ Fix a typo that was attempting to free the position GL buffer twice
+ (without any consequences as there was a if (buffer) check)
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/561
+
+2019-01-27 12:35:12 +0900 mrk501 <mrk501e@outlook.com>
+
+ * gst-libs/gst/audio/gstaudioringbuffer.c:
+ audioringbuffer: Fix wrong memcpy address when reordering channels
+ When using multichannel audio data and being needed to reorder channels,
+ audio data is not copied correctly because destination address of
+ memcpy is wrong.
+ For example, the following command
+ $ gst-launch-1.0 pulsesrc ! audio/x-raw,channels=6,format=S16LE ! filesink location=test.raw
+ will reproduce this issue if there is 6-ch audio input device.
+ This commit fixes that.
+ The detailed process of this issue is as follows:
+ 1. gst-launch-1.0 calls gst_pulsesrc_prepare (gst-plugins-good/ext/pulse/pulsesrc.c)
+ 1466 gst_pulsesrc_prepare (GstAudioSrc * asrc, GstAudioRingBufferSpec * spec)
+ 1467 {
+ (skip...)
+ 1480 {
+ 1481 GstAudioRingBufferSpec s = *spec;
+ 1482 const pa_channel_map *m;
+ 1483
+ 1484 m = pa_stream_get_channel_map (pulsesrc->stream);
+ 1485 gst_pulse_channel_map_to_gst (m, &s);
+ 1486 gst_audio_ring_buffer_set_channel_positions (GST_AUDIO_BASE_SRC
+ 1487 (pulsesrc)->ringbuffer, s.info.position);
+ 1488 }
+ In my environment, after line 1485 is processed, position of spec and s are
+ spec->info.position[0] = 0
+ spec->info.position[1] = 1
+ spec->info.position[2] = 2
+ spec->info.position[3] = 6
+ spec->info.position[4] = 7
+ spec->info.position[5] = 8
+ s.info.position[0] = 0
+ s.info.position[1] = 6
+ s.info.position[2] = 2
+ s.info.position[3] = 1
+ s.info.position[4] = 7
+ s.info.position[5] = 8
+ The values of spec->info.positions equal
+ GST_AUDIO_BASE_SRC(pulsesrc)->ringbuffer->spec->info.positions.
+ 2. gst_audio_ring_buffer_set_channel_positions calls
+ gst_audio_get_channel_reorder_map.
+ 3. Arguments of gst_audio_get_channel_reorder_map are
+ from = s.info.position
+ to = GST_AUDIO_BASE_SRC(pulsesrc)->ringbuffer->spec->info.positions
+ At the end of this function, reorder_map is set to
+ reorder_map[0] = 0
+ reorder_map[1] = 3
+ reorder_map[2] = 2
+ reorder_map[3] = 1
+ reorder_map[4] = 4
+ reorder_map[5] = 5
+ 4. Go back to gst_audio_ring_buffer_set_channel_positions and
+ 2065 buf->need_reorder = TRUE;
+ is processed.
+ 5. Finally, in gst_audio_ring_buffer_read,
+ 1821 if (need_reorder) {
+ (skip...)
+ 1829 memcpy (data + i * bpf + reorder_map[j] * bps, ptr + j * bps, bps);
+ is processed and makes this issue.
+
+2018-12-14 14:07:47 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c:
+ gl/wayland: destroy wl_shell instance at finalize
+
+2019-04-23 14:52:28 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/audio/gstaudioaggregator.h:
+ audioaggregator: Add Since: 1.14 markers to all public structs
+
+2019-01-23 12:50:40 +0100 Michael Tretter <m.tretter@pengutronix.de>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: prevent segfault when updating caps
+ When the glupload element renegotiates the caps, set_caps will reset the
+ method_impl to NULL, but the method will be kept. transform_caps tries
+ to use the method_impl to transform the caps, because a method is set,
+ but will segfault.
+
+2019-03-25 13:49:39 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-info.c:
+ video-info: explain in logs why colorimetry are rejected
+ It wasn't clear from the logs why some colorimetry format were rejected.
+
+2019-04-01 09:53:19 -0400 Aaron Boxer <aaron.boxer@collabora.com>
+
+ * tests/check/libs/discoverer.c:
+ discoverer: fix a race bug in disco test
+
+2019-04-01 11:10:21 -0400 Aaron Boxer <aaron.boxer@collabora.com>
+
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ discoverer: async_timeout_cb: don't clean up timeout_source
+ discoverer_collect() already does this. So, the second
+ unref triggers an assert.
+
+2019-03-24 20:45:03 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/playback/gstdecodebin2.c:
+ decodebin2: fix pad leak and problem with GWeakRef code
+ Follow-up to !160 and commit 6a99ad2c.
+ Firstly, don't leak the sinkpad. g_weak_ref_get() returns
+ a strong reference (unless it returns NULL), so that must
+ be unrefed, as detected by the playbin-complex and
+ discoverer unit tests.
+ Next, if we do that we get invalid memory access when the
+ final pad ref is dropped a few lines below after the
+ request pad is released. The reason for this is that
+ GWeakRefs are not movable once they're in use, because
+ their address will be stored inside the object. In this
+ case the GWeakRef was embedded inside the GstDemuxerPad
+ struct which in turn was embedded inside the GArray data
+ section, and when the GArray gets resized, the structs
+ move. Just KISS and use a list with individual allocations
+ for each DemuxerPad instead.
+
+2019-03-15 18:21:37 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/playback/gstdecodebin2.c:
+ decodebin2: Make sure to remove probes when free GstDecodeGroup
+ Nothing guarantees that when we free a DecodeGroup the demuxer pads
+ have already been freed and thus the probes have been removed meaning
+ that in some case it is possible that the pad probes still get called
+ *after* the GstDecodeGroup is freed, leading to segfaults (as we use
+ the freed group in that function).
+ Sample stack trace when that happens:
+ #0 sink_pad_query_probe (pad=pad@entry=0x7fe654027180, info=info@entry=0x7ffe433bf270, user_data=0x7fe668076f80) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:3004
+ 3004 if (last_group->reqpads) {
+ [Current thread is 1 (Thread 0x7fe69d8a0880 (LWP 24366))]
+ Missing separate debuginfos, use: dnf debuginfo-install elfutils-libelf-0.176-1.fc29.x86_64 elfutils-libs-0.176-1.fc29.x86_64 libXcursor-1.1.15-4.fc29.x86_64 libXi-1.7.9-8.fc29.x86_64 libgpg-error-1.33-1.fc29.x86_64 libvpx-1.7.0-7.fc29.x86_64 soundtouch-2.1.1-1.fc29.x86_64
+ (gdb) bt
+ #0 0x00007fe68f7f3430 in sink_pad_query_probe (pad=pad@entry=0x7fe654027180 [GstMultiQueuePad], info=info@entry=0x7ffe433bf270, user_data=0x7fe668076f80) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:3004
+ #1 0x00007fe69e79815e in probe_hook_marshal (hook=0x7fe63003a840, data=0x7ffe433bf160) at ../subprojects/gstreamer/gst/gstpad.c:3565
+ #2 0x00007fe69e5774cc in g_hook_list_marshal (hook_list=hook_list@entry=0x7fe654027218, may_recurse=may_recurse@entry=1, marshaller=marshaller@entry=0x7fe69e797d40 <probe_hook_marshal>, data=data@entry=0x7ffe433bf160) at ghook.c:672
+ #3 0x00007fe69e797823 in do_probe_callbacks (pad=pad@entry=0x7fe654027180 [GstMultiQueuePad], info=info@entry=0x7ffe433bf270, defaultval=defaultval@entry=GST_FLOW_OK) at ../subprojects/gstreamer/gst/gstpad.c:3727
+ #4 0x00007fe69e7a25fd in gst_pad_peer_query (pad=pad@entry=0x7fe654027180 [GstMultiQueuePad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4194
+ #5 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe654027180 [GstMultiQueuePad], data=data@entry=0x7ffe433bf3c0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #6 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6540273d0 [GstPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433bf3c0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #7 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6540273d0 [GstPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #8 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe6540273d0 [GstPad], parent=0x7fe61c035e00 [GstMultiQueue], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #9 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6540273d0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #10 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe648019620 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #11 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe648019620 [GstPad], data=data@entry=0x7ffe433bf6f0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #12 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe62000a9b0 [GstPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433bf6f0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #13 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=pad@entry=0x7fe62000a9b0 [GstPad], parent=<optimized out>, query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #14 0x00007fe69e0594d6 in gst_video_decoder_src_query_default (dec=0x7fe63001e290 [GstVP8Dec], query=0x7fe67803f140) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1684
+ #15 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe62000a9b0 [GstPad], parent=0x7fe63001e290 [GstVP8Dec], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #16 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe62000a9b0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #17 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe630054300 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #18 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe630054300 [GstProxyPad], data=data@entry=0x7ffe433bfa80) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #19 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe660047810 [GstDecodePad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433bfa80) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #20 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe660047810 [GstDecodePad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #21 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe660047810 [GstDecodePad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #22 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe654076cf0 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #23 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe654076cf0 [GstProxyPad], data=data@entry=0x7ffe433bfce0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #24 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe668037720 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433bfce0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #25 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe668037720 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #26 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe668037720 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #27 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa762c0 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #28 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa762c0 [GstPad], data=data@entry=0x7ffe433bff40) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #29 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xa76510 [GstPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433bff40) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #30 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=pad@entry=0xa76510 [GstPad], parent=parent@entry=0x7fe67002b240 [GstQueue], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #31 0x00007fe68f7bd321 in gst_queue_handle_src_query (pad=0xa76510 [GstPad], parent=0x7fe67002b240 [GstQueue], query=0x7fe67803f140) at ../subprojects/gstreamer/plugins/elements/gstqueue.c:1619
+ #32 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa76510 [GstPad], parent=0x7fe67002b240 [GstQueue], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #33 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa76510 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #34 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa770a0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #35 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa6f4d0 [GstVideoConvert], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #36 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa772f0 [GstPad], parent=0xa6f4d0 [GstVideoConvert], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #37 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa772f0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #38 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa779e0 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #39 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa779e0 [GstPad], data=data@entry=0x7ffe433c0550) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #40 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xa77c30 [GstPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c0550) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #41 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=pad@entry=0xa77c30 [GstPad], parent=parent@entry=0xa7f800 [GstDeinterlace], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #42 0x00007fe68c0449a7 in gst_deinterlace_src_query (pad=0xa77c30 [GstPad], parent=0xa7f800 [GstDeinterlace], query=0x7fe67803f140) at ../subprojects/gst-plugins-good/gst/deinterlace/gstdeinterlace.c:3265
+ #43 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa77c30 [GstPad], parent=0xa7f800 [GstDeinterlace], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #44 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa77c30 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #45 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa76760 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #46 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa46860 [GstFramePositioner], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #47 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa769b0 [GstPad], parent=0xa46860 [GstFramePositioner], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #48 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa769b0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #49 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa76c00 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #50 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa7eb20 [GstVideoScale], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #51 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa76e50 [GstPad], parent=0xa7eb20 [GstVideoScale], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #52 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa76e50 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #53 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa77540 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #54 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa6f980 [GstVideoRate], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #55 0x00007fe68f7369f0 in gst_video_rate_query (trans=0xa6f980 [GstVideoRate], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gst-plugins-base/gst/videorate/gstvideorate.c:1115
+ #56 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa77790 [GstPad], parent=0xa6f980 [GstVideoRate], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #57 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa77790 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #58 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa82120 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #59 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa172a0 [GstCapsFilter], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #60 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa82370 [GstPad], parent=0xa172a0 [GstCapsFilter], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #61 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa82370 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #62 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa44c70 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #63 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa44c70 [GstProxyPad], data=data@entry=0x7ffe433c13a0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #64 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6700271e0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c13a0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #65 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6700271e0 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #66 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6700271e0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #67 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa447b0 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #68 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa447b0 [GstProxyPad], data=data@entry=0x7ffe433c1600) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #69 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe670026f60 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c1600) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #70 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe670026f60 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #71 0x00007fe68f54bb18 in ghostpad_query_function (ghostpad=0x7fe670026f60 [GstGhostPad], parent=0xa2a870 [NleSource], query=0x7fe67803f140) at ../subprojects/gst-editing-services/plugins/nle/nleghostpad.c:556
+ #72 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe670026f60 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #73 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe61c00ab30 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #74 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe61c00ab30 [GstGhostPad], data=data@entry=0x7ffe433c18c0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #75 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680ccab0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c18c0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #76 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680ccab0 [GstProxyPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #77 0x00007fe68f54b6a9 in internalpad_query_function (internal=0x7fe6680ccab0 [GstProxyPad], parent=0x7fe61c00ab30 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gst-editing-services/plugins/nle/nleghostpad.c:448
+ #78 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680ccab0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #79 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe66800e510 [GESSmartMixerPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #80 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe66800e510 [GESSmartMixerPad], data=data@entry=0x7ffe433c1b80) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #81 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680cc5f0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c1b80) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #82 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680cc5f0 [GstProxyPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #83 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680cc5f0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #84 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe66805ee60 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #85 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe66805ee60 [GstGhostPad], data=data@entry=0x7ffe433c1de0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #86 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe654077d90 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c1de0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #87 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe654077d90 [GstProxyPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #88 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe654077d90 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #89 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe654027ac0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #90 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe6680c71d0 [GstVideoConvert], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #91 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe654026a90 [GstPad], parent=0x7fe6680c71d0 [GstVideoConvert], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #92 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe654026a90 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #93 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe6680cc850 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #94 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe6680cc850 [GstProxyPad], data=data@entry=0x7ffe433c22d0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #95 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680374a0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c22d0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #96 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680374a0 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #97 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680374a0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #98 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe6680c7e20 [GstCompositorPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #99 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe6680c7e20 [GstCompositorPad], data=data@entry=0x7ffe433c2530) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #100 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xa24170 [GstAggregatorPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c2530) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #101 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0xa24170 [GstAggregatorPad], parent=<optimized out>, query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #102 0x00007fe69e0e5512 in gst_aggregator_default_src_query (self=0xa21e90 [GstCompositor], query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstaggregator.c:1909
+ #103 0x00007fe69e0547be in gst_video_aggregator_src_query (agg=0xa21e90 [GstCompositor], query=0x7fe67803f140) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.c:2022
+ #104 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa24170 [GstAggregatorPad], parent=0xa21e90 [GstCompositor], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #105 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa24170 [GstAggregatorPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #106 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x9aac10 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #107 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa28280 [GstIdentity], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #108 0x00007fe68f79dfc4 in gst_identity_query (base=0xa28280 [GstIdentity], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/plugins/elements/gstidentity.c:957
+ #109 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x9aae60 [GstPad], parent=0xa28280 [GstIdentity], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #110 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9aae60 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #111 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99cc40 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #112 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99cc40 [GstProxyPad], data=data@entry=0x7ffe433c2c00) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #113 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9aee40 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c2c00) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #114 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9aee40 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #115 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9aee40 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #116 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99d100 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #117 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99d100 [GstProxyPad], data=data@entry=0x7ffe433c2e60) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #118 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9af0c0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c2e60) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #119 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9af0c0 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #120 0x00007fe68f54bb18 in ghostpad_query_function (ghostpad=0x9af0c0 [GstGhostPad], parent=0x99ce70 [NleOperation], query=0x7fe67803f140) at ../subprojects/gst-editing-services/plugins/nle/nleghostpad.c:556
+ #121 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9af0c0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #122 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99c2c0 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #123 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99c2c0 [GstProxyPad], data=data@entry=0x7ffe433c3120) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #124 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9ae1c0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c3120) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #125 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9ae1c0 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #126 0x00007fe68f54bb18 in ghostpad_query_function (ghostpad=0x9ae1c0 [GstGhostPad], parent=0xa16290 [NleComposition], query=0x7fe67803f140) at ../subprojects/gst-editing-services/plugins/nle/nleghostpad.c:556
+ #127 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9ae1c0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #128 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x9aa080 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #129 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0xa165a0 [GstCapsFilter], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #130 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x9aa9c0 [GstPad], parent=0xa165a0 [GstCapsFilter], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #131 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9aa9c0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #132 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99c9e0 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #133 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99c9e0 [GstProxyPad], data=data@entry=0x7ffe433c3670) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #134 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9aebc0 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c3670) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #135 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9aebc0 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #136 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9aebc0 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #137 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x99d820 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #138 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x99d820 [GstProxyPad], data=data@entry=0x7ffe433c38d0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #139 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x9af840 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c38d0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #140 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x9af840 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #141 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x9af840 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #142 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe6780247d0 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #143 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe6780247d0 [GstPad], data=data@entry=0x7ffe433c3b30) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #144 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe684032780 [GstTeePad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c3b30) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #145 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe684032780 [GstTeePad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #146 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe684032780 [GstTeePad], parent=0x7383f0 [GstTee], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #147 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe684032780 [GstTeePad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #148 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe670026060 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #149 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe670026060 [GstGhostPad], data=data@entry=0x7ffe433c3e60) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #150 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x99dce0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c3e60) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #151 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x99dce0 [GstProxyPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #152 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x99dce0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #153 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa8d6b0 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #154 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa8d6b0 [GstPad], data=data@entry=0x7ffe433c40c0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #155 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xa8d900 [GstPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c40c0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #156 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0xa8d900 [GstPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #157 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0xa8d900 [GstPad], parent=0x9f6060 [GstStreamSynchronizer], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #158 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xa8d900 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #159 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xad5a80 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #160 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xad5a80 [GstGhostPad], data=data@entry=0x7ffe433c43f0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #161 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680275b0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c43f0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #162 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680275b0 [GstProxyPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #163 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680275b0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #164 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa39580 [GstPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #165 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xa39580 [GstPad], data=data@entry=0x7ffe433c4650) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #166 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6780240e0 [GstPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c4650) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #167 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=pad@entry=0x7fe6780240e0 [GstPad], parent=parent@entry=0x7fe66800e7b0 [GstQueue], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #168 0x00007fe68f7bd321 in gst_queue_handle_src_query (pad=0x7fe6780240e0 [GstPad], parent=0x7fe66800e7b0 [GstQueue], query=0x7fe67803f140) at ../subprojects/gstreamer/plugins/elements/gstqueue.c:1619
+ #169 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe6780240e0 [GstPad], parent=0x7fe66800e7b0 [GstQueue], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #170 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6780240e0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #171 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xad5580 [GstGhostPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #172 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0xad5580 [GstGhostPad], data=data@entry=0x7ffe433c49d0) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #173 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0x7fe6680270f0 [GstProxyPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c49d0) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #174 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0x7fe6680270f0 [GstProxyPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #175 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe6680270f0 [GstProxyPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #176 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe6780255b0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #177 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe674032fa0 [GstVideoConvert], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #178 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe678025a50 [GstPad], parent=0x7fe674032fa0 [GstVideoConvert], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #179 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe678025a50 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #180 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe678025800 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #181 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe6740346d0 [GstVideoScale], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #182 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe678025360 [GstPad], parent=0x7fe6740346d0 [GstVideoScale], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #183 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe678025360 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #184 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe678024580 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #185 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe674011950 [GstVideoBalance], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #186 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe678025110 [GstPad], parent=0x7fe674011950 [GstVideoBalance], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #187 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe678025110 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #188 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0xa8d460 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #189 0x00007fe69e118c6b in gst_base_transform_default_query (trans=0x7fe674037330 [GstVideoConvert], direction=GST_PAD_SRC, query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1557
+ #190 0x00007fe69e6a60e9 in gst_validate_pad_monitor_query_func (pad=0x7fe678024ec0 [GstPad], parent=0x7fe674037330 [GstVideoConvert], query=0x7fe67803f140) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-pad-monitor.c:2378
+ #191 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0x7fe678024ec0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #192 0x00007fe69e7a263b in gst_pad_peer_query (pad=pad@entry=0x7fe668027350 [GstProxyPad], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #193 0x00007fe69e7a2c2c in query_forward_func (pad=pad@entry=0x7fe668027350 [GstProxyPad], data=data@entry=0x7ffe433c5670) at ../subprojects/gstreamer/gst/gstpad.c:3376
+ #194 0x00007fe69e7a0aae in gst_pad_forward (pad=pad@entry=0xad5800 [GstGhostPad], forward=forward@entry=0x7fe69e7a2b70 <query_forward_func>, user_data=user_data@entry=0x7ffe433c5670) at ../subprojects/gstreamer/gst/gstpad.c:3008
+ #195 0x00007fe69e7a0ea2 in gst_pad_query_default (pad=0xad5800 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:3447
+ #196 0x00007fe68f84ad95 in gst_play_sink_convert_bin_query (pad=0xad5800 [GstGhostPad], parent=<optimized out>, query=0x7fe67803f140) at ../subprojects/gst-plugins-base/gst/playback/gstplaysinkconvertbin.c:525
+ #197 0x00007fe69e7a1ee0 in gst_pad_query (pad=pad@entry=0xad5800 [GstGhostPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4071
+ #198 0x00007fe69e7a263b in gst_pad_peer_query (pad=0xa380b0 [GstPad], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstpad.c:4203
+ #199 0x00007fe69e10564c in default_element_query (element=0xa369f0 [GstFakeSink], query=0x7fe67803f140) at ../subprojects/gstreamer/libs/gst/base/gstbasesink.c:5034
+ #200 0x00007fe69e77f8f0 in gst_element_query (element=0xa369f0 [GstFakeSink], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstelement.c:1959
+ #201 0x00007fe69e7584f7 in bin_query_generic_fold (vitem=<optimized out>, ret=0x7ffe433c59d0, fold=0x7ffe433c5a60) at ../subprojects/gstreamer/gst/gstbin.c:4232
+ #202 0x00007fe69e78ffcc in gst_iterator_fold (it=it@entry=0x744820, func=func@entry=0x7fe69e758460 <bin_query_generic_fold>, ret=ret@entry=0x7ffe433c59d0, user_data=user_data@entry=0x7ffe433c5a60) at ../subprojects/gstreamer/gst/gstiterator.c:617
+ #203 0x00007fe69e758b82 in bin_iterate_fold (bin=bin@entry=0xa19d80 [GstBin], iter=iter@entry=0x744820, fold_init=fold_init@entry=0x0, fold_done=fold_done@entry=0x0, fold_func=fold_func@entry=0x7fe69e758460 <bin_query_generic_fold>, fold_data=fold_data@entry=0x7ffe433c5a60, default_return=0) at ../subprojects/gstreamer/gst/gstbin.c:4259
+ #204 0x00007fe69e75e776 in gst_bin_query (element=0xa19d80 [GstBin], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstbin.c:4379
+ #205 0x00007fe69e77f8f0 in gst_element_query (element=0xa19d80 [GstBin], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstelement.c:1959
+ #206 0x00007fe69e7584f7 in bin_query_generic_fold (vitem=<optimized out>, ret=0x7ffe433c5ba0, fold=0x7ffe433c5c30) at ../subprojects/gstreamer/gst/gstbin.c:4232
+ #207 0x00007fe69e78ffcc in gst_iterator_fold (it=it@entry=0x744cf0, func=func@entry=0x7fe69e758460 <bin_query_generic_fold>, ret=ret@entry=0x7ffe433c5ba0, user_data=user_data@entry=0x7ffe433c5c30) at ../subprojects/gstreamer/gst/gstiterator.c:617
+ #208 0x00007fe69e758b82 in bin_iterate_fold (bin=bin@entry=0x9f42e0 [GstPlaySink], iter=iter@entry=0x744cf0, fold_init=fold_init@entry=0x0, fold_done=fold_done@entry=0x0, fold_func=fold_func@entry=0x7fe69e758460 <bin_query_generic_fold>, fold_data=fold_data@entry=0x7ffe433c5c30, default_return=0) at ../subprojects/gstreamer/gst/gstbin.c:4259
+ #209 0x00007fe69e75e776 in gst_bin_query (element=0x9f42e0 [GstPlaySink], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstbin.c:4379
+ #210 0x00007fe69e77f8f0 in gst_element_query (element=0x9f42e0 [GstPlaySink], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstelement.c:1959
+ #211 0x00007fe69e7584f7 in bin_query_generic_fold (vitem=<optimized out>, ret=0x7ffe433c5d70, fold=0x7ffe433c5e00) at ../subprojects/gstreamer/gst/gstbin.c:4232
+ #212 0x00007fe69e78ffcc in gst_iterator_fold (it=it@entry=0x7448d0, func=func@entry=0x7fe69e758460 <bin_query_generic_fold>, ret=ret@entry=0x7ffe433c5d70, user_data=user_data@entry=0x7ffe433c5e00) at ../subprojects/gstreamer/gst/gstiterator.c:617
+ #213 0x00007fe69e758b82 in bin_iterate_fold (bin=bin@entry=0x9ee0a0 [GESPipeline], iter=iter@entry=0x7448d0, fold_init=fold_init@entry=0x0, fold_done=fold_done@entry=0x0, fold_func=fold_func@entry=0x7fe69e758460 <bin_query_generic_fold>, fold_data=fold_data@entry=0x7ffe433c5e00, default_return=0) at ../subprojects/gstreamer/gst/gstbin.c:4259
+ #214 0x00007fe69e75e776 in gst_bin_query (element=0x9ee0a0 [GESPipeline], query=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstbin.c:4379
+ #215 0x00007fe69e77f8f0 in gst_element_query (element=0x9ee0a0 [GESPipeline], query=query@entry=0x7fe67803f140) at ../subprojects/gstreamer/gst/gstelement.c:1959
+ #216 0x00007fe69e6b5d01 in _check_position (rate=0x7ffe433c5ee0, position=0x7ffe433c5ee8, act=0xaa82a0, scenario=0x9fe250 [GstValidateScenario]) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-scenario.c:1658
+ #217 0x00007fe69e6b5d01 in execute_next_action (scenario=scenario@entry=0x9fe250 [GstValidateScenario]) at ../subprojects/gst-devtools/validate/gst/validate/gst-validate-scenario.c:2107
+ #218 0x00007fe69e587b31 in g_timeout_dispatch (source=0xaa7da0, callback=0x7fe69e6b5830 <execute_next_action>, user_data=0x9fe250) at gmain.c:4667
+ #219 0x00007fe69e58706d in g_main_dispatch (context=0x71bc50) at gmain.c:3182
+ #220 0x00007fe69e58706d in g_main_context_dispatch (context=context@entry=0x71bc50) at gmain.c:3847
+ #221 0x00007fe69e587438 in g_main_context_iterate (context=context@entry=0x71bc50, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3920
+ #222 0x00007fe69e5874d0 in g_main_context_iteration (context=context@entry=0x71bc50, may_block=may_block@entry=1) at gmain.c:3981
+ #223 0x00007fe69e3dfd25 in g_application_run (application=0x71c1f0 [GESLauncher], argc=argc@entry=6, argv=argv@entry=0x7ffe433c61c8) at gapplication.c:2470
+ #224 0x000000000040393c in main (argc=6, argv=0x7ffe433c61c8) at ../subprojects/gst-editing-services/tools/ges-launch.c:88
+ (gdb) p last_group
+ $1 = (GstDecodeGroup *) 0x52c
+ (gdb) p group
+ $2 = (GstDecodeGroup *) 0x7fe668076f80
+ (gdb) p group->parent
+ $3 = (GstDecodeChain *) 0x7fe6680774c0
+ (gdb) p group->parent->next_group
+ There is no member named next_group.
+ (gdb) group->parent->next_groups
+ Undefined command: "group->parent->next_groups". Try "help".
+ (gdb) p group->parent->next_groups
+ $4 = 0x7fe660004280 = {0x528, 0x529, 0x52a, 0x52b, 0x52c}
+ (gdb) p *group->parent->next_groups
+ $5 = {data=0x528, next=0x7fe668077500, prev=0x7fe64c04ab80}
+ (gdb) p *group
+ $6 = {dbin = 0x52a, parent = 0x7fe6680774c0, multiqueue = 0x7fe668077500, overrunsig = 167503724544, overrun = 1, no_more_pads = 0, drained = 1745725152, children = 0xa19220 = {0x73d400, <error reading variable>
+ (gdb) Quit
+ (gdb)
+
+2019-03-21 17:50:34 +0100 Josep Torra <jtorra@oblong.com>
+
+ * gst-libs/gst/rtp/gstrtcpbuffer.c:
+ rtcpbuffer: test for len instead of type
+ The function rtcp_packet_min_length() returns a length for each known type
+ and -1 for unknown types. This change fixes the test accordingly and silences
+ the following warning.
+ gstrtcpbuffer.c:567:12: error: comparison of constant -1 with expression of type 'GstRTCPType' is always false
+ [-Werror,-Wtautological-constant-out-of-range-compare]
+ if (type == -1)
+
+2019-03-15 17:38:58 +0100 Antonio Ospite <antonio.ospite@collabora.com>
+
+ * gst-libs/gst/rtp/gstrtpbasepayload.c:
+ rtpbasepayload: print list size in log output instead of -1
+ It is weird to see "Preparing to push packet with size 4294967295" in
+ the logs, so print the list length in case of a buffer list.
+
+2019-03-14 10:12:27 +0100 Tobias Ronge <tobiasr@axis.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ gstrtspconnection: Security loophole making heap overflow
+ The former code allowed an attacker to create a heap overflow by
+ sending a longer than allowed session id in a response and including a
+ semicolon to change the maximum length. With this change, the parser
+ will never go beyond 512 bytes.
+
+2019-03-08 19:52:25 +0100 Lucas Stach <l.stach@pengutronix.de>
+
+ * gst-libs/gst/gl/wayland/wayland_event_source.c:
+ gl/wayland: fix glib mainloop integration
+ Implement the prepare and check functions according to the
+ documentation by returning TRUE when events should be dispatched
+ via the dispatch function.
+ As wl_display_read_events never blocks we can call it unconditionally
+ without looking at the poll status.
+ This simplifies the implementation and gets rid of a race where the
+ mainloop could get blocked due to nobody actually reading the events
+ from the wayland connection.
+
+2019-03-06 09:14:04 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/vorbis/gstvorbisdec.c:
+ vorbisdec: fix leak of header buffers
+ handle_header_buffer() does no take ownership of
+ the buffer passed.
+ Fixes leaks in various unit tests.
+
+2019-03-05 14:32:37 +0100 Marc Leeman <marc.leeman@gmail.com>
+
+ * gst-libs/gst/rtp/gstrtppayloads.c:
+ rtp: add H265 to lookup for media info
+
+2019-03-04 17:05:04 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/video/videooverlay.c:
+ videooverlay: Fix render-rectangle range
+ The range was set to -1 to MAXINT, but the x,y value can be negative.
+ Relax the restriction so that we can now have negative coordinates.
+
+2019-02-09 17:21:13 +0000 James Cowgill <jcowgill@jcowgill.uk>
+
+ * gst-libs/gst/video/video-format.c:
+ video-format: Fix GBRA_10/12 alpha channel pixel strides
+ These formats have 4 components, so they should also have 4 components
+ of pixel stride.
+
+2019-02-18 15:24:18 +0100 Kristofer Bjorkstrom <kristofb@axis.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ rtspconnection: Fix GError set over the top of a previous GError
+ The function fill_bytes could sometimes return a value greater than zero
+ and in the same time set the GError.
+ Function read_bytes calls fill_bytes in a while loop. In the special
+ case above it would call fill_bytes with error already set.
+ Thus resulting in "GError set over the top of a previous GError".
+ Solved this by clearing GError when return value is greater than zero.
+ Actions are taken depending on error type by caller of read_bytes. Eg.
+ with EWOULDBLOCK gst_rtsp_source_dispatch_read will try to read the
+ missing bytes again (GST_RTSP_EINTR )
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/445
+
+2019-02-15 16:45:09 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/gl/gstglimagesink.c:
+ glimagesink: Don't call set_property helper in get_property
+
+2019-02-11 10:01:55 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ eglimage: Add some more defines
+ This allow building on advertised version of libdrm drm_fourcc.h files.
+ Fixes #549
+
+2019-01-28 13:54:43 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/libs/discoverer.c:
+ tests: discoverer: Add async API test cases
+ Add more test cases for async APIs such as gst_discoverer_{start,stop},
+ and gst_discoverer_discover_uri_async()
+
+2019-01-28 18:13:27 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ discoverer: Hold GSource object instead of source id
+ g_source_remove() works only for a GSource which was attached
+ to default GMainContext, but the GSource might be attached to
+ custom context depending on how gst_discoverer_start() was called.
+ Whatever the attached context was, g_source_destroy() can clean it up.
+
+2019-01-24 10:14:36 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/gl/gstglcolorbalance.c:
+ glcolorbalance: Copy caps in transform_internal_caps()
+ We don't get ownership of the caps that are passed in, and doing so
+ causes crashes at a later time.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/546
+
+2019-01-11 17:43:03 +0200 Jordan Petridis <jordan@centricular.com>
+
+ * gst/subparse/gstsubparse.c:
+ * tests/check/elements/subparse.c:
+ subparse: do not assert when failing to parse subrip timestamp
+ If a badly formatted was passed into `parse_subrip_time` it would
+ assert instead of exiting gracefully. This is problematic since
+ the input is provided by the user, and will trigger a crash.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/532
+
+2019-01-14 10:29:54 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * pkgconfig/gstreamer-pbutils-uninstalled.pc.in:
+ * pkgconfig/gstreamer-pbutils.pc.in:
+ pbutils: Add audio, base and video library to Requires line in the pkg-config file
+ We use all those libraries internally and include headers from them in
+ the public headers.
+ And add the tag library to Requires.private as we use it internally and
+ it would be needed when doing static linking.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/537
+
+2019-01-12 12:27:27 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * ext/gl/gstglsinkbin.c:
+ glsinkbin: validate property in internal sink
+ It might be the case that glgsinkbin would try to set a property to
+ its internal sink which doesn't exist in it, leading to a glib's
+ warning. For example, when playsink sets 'force-aspect-ratio' property
+ and glsinkbin has, as internal sink, appsink, which doesn't handle
+ that property.
+ The patch validates the incoming property to forward to internal sink
+ if it exists in the internal sink and both properties has the same
+ type.
+
+2018-12-14 20:59:11 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideotimecode.c:
+ videotimecode: Fix handling of timecodes without daily jam in gst_video_time_code_to_date_time()
+ So that it behaves according to documentation.
+
+2018-12-14 14:13:18 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideotimecode.c:
+ videotimecode: We only support 30000/1001 and 60000/1001 as drop-frame framerates
+ 24000/1001 is *not* a drop-frame framerate.
+
+2018-12-14 13:56:28 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideotimecode.c:
+ videotimecode: Fix division by zero in timecode validation function
+ And add some comments about what exactly we're testing in the
+ non-trivial cases.
+
+2018-12-17 08:58:21 +0100 Edward Hervey <edward@centricular.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ rtspconnection: Properly exit infinite loop
+ In the unlikeliness the builder state is invalid, exit the
+ top-level while(TRUE) loop.
+
+2018-12-16 11:14:47 +0100 Edward Hervey <edward@centricular.com>
+
+ * gst-libs/gst/pbutils/codec-utils.c:
+ codec-utils: Don't leak bytewriter data
+ In error cases, don't forget to reset it.
+
+2018-12-13 11:20:03 -0500 Olivier Crête <olivier.crete@collabora.com>
+
+ * gst-libs/gst/rtp/gstrtcpbuffer.c:
+ rtcpbuffer: Validate the length of RTCP packets
+
+2018-11-30 13:37:26 +0100 Per Forlin <per.forlin@axis.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ rtspconnection: Replace Auth header instead of append
+ gst_rtsp_connection_send() adds the Authorization header to the request.
+ If this function is being called multiple times with the same request
+ it will add one more Authorization header every time.
+ To fix to this issue do not append a new Authorization header on
+ top of an existing ones. Remove any existing Authorization headers first
+ and then add the new one.
+ Fixes gst-plugins-good#425
+
+2018-11-29 12:55:28 +0100 Marouen Ghodhbane <marouen.ghodhbane@nxp.com>
+
+ * gst-libs/gst/audio/audio-converter.c:
+ audio-convert: Fix endianness conversion function init
+ Endianness conversion should be based on the sample width instead of the
+ sample depth.
+ Fixes #510
+
+2018-11-23 16:41:38 +0300 Freyr666 <sky_rider_93@mail.ru>
+
+ * ext/gl/gstgldeinterlace.c:
+ opengl: gldeinterlace: remove interlace-mode from srcpad's caps
+ This fixes output caps format, so the output frames are not interlaced anymore
+
+2018-11-28 11:13:39 +0000 Philippe Normand <philn@igalia.com>
+
+ * ext/gl/gstgltestsrc.c:
+ gltestsrc: Run context query only during decide_allocation
+ Running the context query in _start and during the NULL->READY state transition
+ can fail because downstream elements might not be able to answer and thus the
+ source element would not be able to reuse downstream GLContext and GLDisplay.
+ This issue happened specifically when trying to use gltestsrc in playbin.
+
+2018-11-19 15:09:25 +0000 Maciej Wolny <maciej.wolny@codethink.co.uk>
+
+ * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h:
+ * gst-libs/gst/gl/gstgldebug.h:
+ * gst-libs/gst/gl/gstglfuncs.h:
+ gst-gl: Remove duplicate declarations
+ This causes 'redefinition of typedef ...' errors on GCC 4.5.3
+
+2019-03-06 09:17:02 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/video/convertframe.c:
+ video: fix pipeline leak in gst_video_convert_sample_async()
+
+2018-11-30 12:40:19 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/convertframe.c:
+ video: convertframe: Shut down pipeline asynchronously via the thread pool
+ If we use the main loop it might happen that the caller (e.g. our unit
+ test) already shut down the loop once the result was received and in
+ that case the pipeline would never ever be shut down (and our unit test
+ would hang).
+
+2018-11-23 13:25:43 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/convertframe.c:
+ convertframe: Error out directly in the sync variant if the state change to PAUSED failed
+
+2018-11-23 13:22:44 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/convertframe.c:
+ convertframe: Only go to PAUSED state for the async variant
+ We only care for the pre-roll sample.
+
+2018-11-23 13:21:23 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/convertframe.c:
+ convertframe: Error out directly if changing the pipeline state to PLAYING failed
+
+2018-11-23 13:16:43 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/convertframe.c:
+ convertframe: Use refcounting for the context
+ While this creates a circular reference between the pipeline and the
+ context, this ensures that the context stays alive for as long as any
+ callbacks could be called on it. The circular reference is broken once
+ the conversion is finished (or error, or timeout), which will then cause
+ everything to be freed.
+ Previously it was possible that a callback could be called on the
+ context right after it was freed already.
+ Also use only a single context structure, the second structure does not
+ simplify anything and duplicates storage.
+
+2018-10-17 15:58:40 -0400 Xavier Claessens <xavier.claessens@collabora.com>
+
+ * gst-libs/gst/gl/egl/gstglcontext_egl.h:
+ gl: Fix subclassing of GstGLContextEGL
+
+2018-10-16 12:31:57 +0200 Linus Svensson <linussn@axis.com>
+
+ * gst-libs/gst/rtp/gstrtpbasepayload.c:
+ rtpbasepayload: Update current seqnum for buffer lists
+ The current sequence number will be the one from the first RTP buffer
+ when a buffer list is pushed, but should be the last one.
+ Fixes #495
+
+2019-01-22 13:24:29 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/gl/meson.build:
+ meson: opengl: fix enabled_gl_apis in pkg-config file
+ Make consistent with what autotools puts into enabled_gl_apis
+ variable. Autotools puts 'gl' in there instead of 'opengl'.
+ This would cause problems when building -bad glmixers plugin
+ in meson against a -base that was built with autotools.
+ See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/871
+
+2019-01-11 16:37:40 +0100 Wim Taymans <wtaymans@redhat.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ video-converter: fix number of allocated lines
+ We make an allocator for temporary lines and then use this for all
+ the steps in the conversion that can do in-place processing.
+ Keep track of the number of lines each step needs and use this to
+ allocate the right number of lines.
+ Previously we would not always allocate enough lines and we would
+ end up with conversion errors as lines would be reused prematurely.
+ Fixes #350
+
+2018-11-09 10:48:38 +0100 Sjoerd Simons <sjoerd.simons@collabora.co.uk>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: dmabuf: be explicit about gl formats used
+ Rather then letting gst_gl_memory_setup_buffer guess the GL format used
+ for an eglimage after importing a dmabuf be explicit about it. This
+ fixes issues where dmabuf import may have used another format then
+ gst_gl_format_from_video_info would guess on the basis of the available
+ GL extensions.
+ In particular on etnaviv the gst_gl_format_from_video_info would
+ assuming a luminance + alpha GL format is used for YUY2, but the dmabuf
+ import will always use RG88. Which causes images to end up somewhat pink when
+ displayed on the screen.
+
+2018-11-09 10:30:06 +0100 Sjoerd Simons <sjoerd.simons@collabora.co.uk>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ gl/egl: Determine correct format on dmabuf import
+ When importing an egl image from dmabuf gst_gl_format_from_video_info
+ was used to work what the result GL format will be. Unfortunately that
+ will only work if the conventional format and the choosen DRM fourcc for
+ the format match up.
+ On etnaviv platforms there is no support for GL_EXT_texture_rg, so the
+ GL format chosen for YUY2 ends up being GST_GL_LUMINANCE_ALPHA. However
+ DRM does not do luminance + alpha as it's a legacy GL thing, so the
+ dmabuf import ends up using DRM_FORMAT_GR88.
+ To fix this, tie the DRM_FORMAT and the GL format together so they
+ always match up.
+
+2018-11-10 12:34:36 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/gl/meson.build:
+ meson: fix backported gl patch
+ compat_includes only exists in master.
+ Fixes #507
+
+2018-10-05 00:48:58 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglimagesink.c:
+ glimagesink: make multiview none equivalent to mono
+ Fixes the internal viewconvert to not scale buffers for output with the
+ following pipeline:
+ gltestsrc ! glimagesink
+ It also fixes overlay composition with a resized output with an OpenGL
+ upstream:
+ gltestsrc ! timeoverlay ! glimagesink
+
+2018-09-28 12:09:16 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglimagesink.c:
+ glimagesink: only update the output info iff there's a valid display_rect
+ Attempting to use the MAX(1, display_rect) would result in the overlay
+ composition attempting to draw into 1x1 buffer and calculate some
+ grossly incorrect sizes.
+ previously failing case:
+ gltestsrc ! textoverlay text=GStreamer ! glimagesinkelement
+
+2018-09-27 13:30:35 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstgloverlaycompositor.c:
+ gl/overlaycompositor: handle ANY caps features gracefully
+
+2018-09-27 13:29:03 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglfilter.c:
+ glfilter: don't complete overwrite caps features from the subclass
+ We can get away with ensuring that the memory:GLMemory caps feature is
+ present in the output caps
+
+2018-09-05 18:34:06 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/meson.build:
+ gl/meson: check for EGL headers before allowing use of EGL
+ For distros that provide headers in seperate dev/devel packages this
+ won't build egl support without the necessary EGL headers.
+
+2018-08-10 22:44:12 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglviewconvert.c:
+ glviewconvert: fix output when a transformation matrix is used
+ If we have a transformation matrix, we have no idea where in the output
+ the video is going to endup. It might also be different and not cover
+ the entire output.
+ We need to clear the output to remove any previous data in the backing
+ texture.
+ Found from
+ https://stackoverflow.com/questions/51707229/python-gstreamer-for-dynamic-control-of-element-properties
+
+2017-06-07 18:00:08 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/gl/gstglmemory.c:
+ glmemory: Fix n_wrapped_pointers usage
+ gst_gl_memory_setup_buffer() was not properly using the number
+ of pointers to wrapped. This also fixes the validation, as we
+ only support 1 wrapper per view, or num_planes * views wrapper.
+ https://bugzilla.gnome.org/show_bug.cgi?id=783521
+
+2018-07-24 18:40:36 +0800 Roland Jon <rlandjon@gmail.com>
+
+ * gst/playback/gstdecodebin3.c:
+ decodebin3: fix eos event leak
+ https://bugzilla.gnome.org/show_bug.cgi?id=796860
+
+2018-10-17 19:43:51 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/ogg/gstoggdemux.c:
+ oggdemux: Answer POSITION query
+
+2018-10-15 19:45:46 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst-libs/gst/video/gstvideometa.c:
+ videometa: Log map errors with GST_ERROR, not DEBUG
+ Otherwise it's very easy to miss them when gst_video_frame_map() fails
+
+2018-10-10 23:15:49 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ rtspconnection: do not duplicate authentication headers
+ rtsp_connection_send takes care of adding those already,
+ and some reverse proxies such as nginx will reject the request
+ altogether if the Authorization header is present twice,
+ even with the same value.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797272
+
+2018-10-01 17:51:26 -0700 Thiago Santos <thiagossantos@gmail.com>
+
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ encoding-profile: set_restriction should accept null as valid
+ It was checking for GST_IS_CAPS only and that would fail if the new
+ restriction caps was NULL and its documentation says it accepts NULL as
+ valid input.
+
+2018-09-29 11:26:27 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideometa.c:
+ video: Fix annotations for gst_buffer_add_video_meta_full()
+
=== release 1.14.4 ===
2018-10-02 22:58:06 +0100 Tim-Philipp Müller <tim@centricular.com>
diff --git a/NEWS b/NEWS
index d613e7d07..7841eed83 100644
--- a/NEWS
+++ b/NEWS
@@ -5,13 +5,16 @@ GSTREAMER 1.14 RELEASE NOTES
GStreamer 1.14.0 was originally released on 19 March 2018.
-The latest bug-fix release in the 1.14 series is 1.14.3 and was released
-on 16 September 2018.
+The latest bug-fix release in the 1.14 series is 1.14.5 and was released
+on 29 May 2019.
+
+1.14.5 will likely be the last release in the 1.14 release series which
+has now been superseded by the 1.16 release series.
See https://gstreamer.freedesktop.org/releases/1.14/ for the latest
version of this document.
-_Last updated: Sunday 16 September 2018, 13:00 UTC (log)_
+_Last updated: Wednesday 29 May 2019, 12:00 UTC (log)_
Introduction
@@ -1519,6 +1522,187 @@ For a full list of bugfixes see Bugzilla. Note that this is not the full
list of changes. For the full list of changes please refer to the GIT
logs or ChangeLogs of the particular modules.
+1.14.5
+
+The fifth and likely last 1.14 bug-fix release (1.14.5) was released on
+29 May 2019.
+
+This release only contains bugfixes and it should be safe to update from
+1.14.x.
+
+Highlighted bugfixes in 1.14.5
+
+GStreamer core
+
+- aggregator: take the pad lock around queue gap event removal
+- aggregator: don’t leak gap buffer when out of segment
+- buffer: fix possible memory corruption in gst_buffer_foreach_meta()
+ when removing metas
+- bus: Make removing of signal/bus watches thread-safe
+- bus: Don’t allow removing signal watches with gst_bus_remove_watch()
+- controlbinding: Check if the weak pointer was cleared before
+ explicitly removing it
+- ptp clock: Wait for ANNOUNCE before selecting a master; increase
+ tolerance for late follow-up and delay-resp
+- segment: Allow stop == -1 in gst_segment_to_running_time() and
+ negative rate
+- g-i: annotations fixes
+
+gst-plugins-base
+
+- audioconvert: fix endianness conversion for unpacked formats
+ (e.g. S24_32BE)
+- audioringbuffer: Fix wrong memcpy address when reordering channels
+- decodebin2: Make sure to remove pad probes when freeing
+ GstDecodeGroup
+- glviewconvert: fix output when a transformation matrix is used
+- glupload: prevent segfault when updating caps
+- gl/egl: Determine correct format on dmabuf import
+- glupload: dmabuf: be explicit about gl formats used
+- id3tag: validate the year from v1 tags before passing to GstDateTime
+- rtpbasepayload: fix sequence numbers when using buffer lists
+- rtspconnection: fix security issue, potential heap overflow
+ (CVE-2019-9928)
+- rtspconnection: fix GError set over the top of a previous GError
+- rtspconnection: do not duplicate authentication headers
+- subparse: don’t assert when failing to parse subrip timestamp
+- video: various convert sample frame fixes
+- video-converter: fix conversion from I420_10LE/BE, I420_12LE/BE,
+ A420_10LE/BE to BGRA/RGBA which created corrupted output
+- video-format: Fix GBRA_10/12 alpha channel pixel strides
+
+gst-plugins-good
+
+- flv: Use 8kHz sample rate for alaw/mulaw audio
+- flvdemux: Do not error out if the first added and chained pad is not
+ linked
+- flvmux: try harder to make sure timestamps are always increasing
+- gdkpixbufdec: output a TIME segment which is what’s expected for raw
+ video
+- matroskademux: fix handling of MS ACM audio
+- matroska: fix handling of FlagInterlaced
+- pulsesink: Deal with not being able to convert a format to caps
+- rtph265depay, rtph264depay; aggregation packet marker handling fixes
+- rtpmp4gdepay: detect broken senders who send AAC with ADTS frames
+- rtprawdepay: keep buffer pool around when flushing/seeking
+- rtpssrcdemux: Forward serialized events to all pads
+- qmlglsink: Handle OPENGL header guard changes
+- qtdemux: fix track language code parsing; ignore corrupted CTTS box
+- qtmux: Correctly set tkhd width/height to the display size
+- splitmuxsink: various timecode meta handling fixes
+- splitmuxsink: make work with audio-only encoders as muxers,
+ e.g. wavenc
+- v4l2sink: fix pool-less allocation query handling
+- v4l2dec/enc: fix use after free when handling events
+- vpx: Fix build against libvpx 1.8
+- webmmux: allow resolutions above 4096
+
+gst-plugins-ugly
+
+- sid: Fix cross-compilation by using AC_TRY_LINK instead of
+ AC_TRY_RUN
+- x264: Only enable dynamic loading code for x264 before v253
+
+gst-plugins-bad
+
+- assrender: fix disappearing subtitles when seeking back in time
+- decklinkvideosink: fix segfault when audiosink is closed before
+ videosink
+- decklinkvideosrc: respect pixel format property even if mode is set
+ to auto
+- d3dvideosink: Fix calculating buffer size of packed format; don’t
+ leak thread object
+- dtls: Don’t abort on non-fatal issues, make work with newer OpenSSL
+ versions
+- msdk: more robust error handling; fix intel sdk libdir path
+- nvenc: Ensure drain all frames on finish; fix element reuse and
+ clean up properly
+- openh264dec: Fix handling of errors when doing EOS
+- shmsrc: fixes a crash when is-live is true due a race condition
+- shmsink: fix possible (racy) deadlock on shutdown
+- siren: Fix invalid floating point operation
+- tsdemux: Skew correction improvements: use upstream DTS if set
+- wasapi: number of segments was always 2 (the absolute minimum) by
+ accident
+- wasapi: Fix infinite loop when the device disappears
+
+gst-libav
+
+- libav: Update internal snapshot to ffmpeg n3.4.6
+- avdemux: fix negative pts if start_time is bigger than the ts
+
+gst-rtsp-server
+
+- rtsp-client: Fix crash in close handler and remove timeout GSource
+ on cleanup
+- rtsp-stream: Use cached address when allocating sockets
+- rtsp-media: Handle set state when preparing
+- rtsp-media: Fix race condition in finish_unprepare
+- rtsp-stream: Use seqnum-offset for rtpinfo
+- rtsp-stream: add source elements to the pipeline before activation
+ for stream-status create message
+
+gst-editing-services
+
+- Fix compilation with latest GLib
+- layer: Resort clips before syncing priorities
+- timeline: Better handle loading inconsistent timelines
+
+gstreamer-vaapi
+
+- thread-safety and memory leak fixes
+- improve caps negotiation if downstream takes ANY caps
+- fix build with -DG_DISABLE_ASSERT
+
+gst-omx
+
+- fix caps leak
+
+cerbero
+
+- Add support for MacOSX 10.14, iOS 12.1, Fedora 29/30, Linux Mint
+ Tara (19)
+- Miscellaneous tarball download / error handling improvements
+- disable parallel builds by default on Windows
+
+Contributors to 1.14.5
+
+Aaron Boxer, Adam Jackson, Aleix Conchillo Flaqué, Alexandru Băluț,
+Alicia Boya García, Andreas Frisch, Antonio Ospite, Arun Raghavan,
+Benjamin Berg, Brad Reitmeyer, Christopher Snowhill, Daniel Drake,
+Daniel Stone, Dardo D Kleiner, David Ing, Denis Nagorny, Edward Hervey,
+Erlend Eriksen, Florent Thiéry, Freyr666, Göran Jönsson, Guillaume
+Desmottes, Haihao Xiang, Haihua Hu, Havard Graff, He Junyan, Helmut
+Grohne, Ilya Smelykh, Jacek Tomaszewski, James Cowgill, Jan Alexander
+Steffens (heftig), Jan Schmidt, Johan Bjäreholt, Jordan Petridis, Josep
+Torra, Joshua M. Doe, Justin Kim, Kristofer Bjorkstrom, Lars Petter
+Endresen, Lars Wiréen, Linus Svensson, Lucas Stach, Maciej Wolny,
+Marc-André Lureau, Marc Leeman, Marcos Kintschner, Marco Trevisan
+(Treviño), Marouen Ghodhbane, Matej Knopp, Mathieu Duponchelle, Matthew
+Waters, Michael Olbrich, Michael Tretter, mrk501, Naveen Cherukuri,
+Nicola Murino, Nicolas Dufresne, Niels De Graef, Nirbheek Chauhan,
+okuoku, Olivier Crête, Patricia Muscalu, Per Forlin, Peter Körner,
+Philippe Normand, Philipp Zabel, Roland Jon, Russel Winder, Santiago
+Carot-Nemesio, Sebastian Dröge, Seungha Yang, Sjoerd Simons, Thiago
+Santos, Thibault Saunier, Tim-Philipp Müller, Tobias Ronge, Tomislav
+Tustonić, U. Artie Eoff, Víctor Manuel Jáquez Leal, Vincenzo Bono, Vivia
+Nikolaidou, Wangfei, Wim Taymans, Xabier Rodriguez Calvar, Xavier
+Claessens, Xiang, Haihao, Yeongjin Jeong, and many others. Thank you
+all!
+
+List of bugs fixed in 1.14.5
+
+For a full list of bugfixes see Bugzilla. Note that this is not the full
+list of changes. For the full list of changes please refer to the GIT
+logs or ChangeLogs of the particular modules.
+
+During the release cycle issue and patch tracking moved from bugzilla to
+gitlab, so information about this release may be on either of those two
+trackers.
+
+MRs with milestone 1.14.5:
+https://gitlab.freedesktop.org/groups/gstreamer/-/merge_requests?scope=all&utf8=%E2%9C%93&state=all&milestone_title=1.14.5
+
Known Issues
@@ -1541,12 +1725,8 @@ Our next major feature release will be 1.16, and 1.15 will be the
unstable development version leading up to the stable 1.16 release. The
development of 1.15/1.16 will happen in the git master branch.
-The plan for the 1.16 development cycle is yet to be confirmed, but it
-is expected that feature freeze will be around September 2018 followed
-by several 1.15 pre-releases and the new 1.16 stable release in October.
-
-1.16 will be backwards-compatible to the stable 1.14, 1.12, 1.10, 1.8,
-1.6, 1.4, 1.2 and 1.0 release series.
+1.16.0 was released on 19 April 2019 and is backwards-compatible to the
+stable 1.14, 1.12, 1.10, 1.8, 1.6, 1.4, 1.2 and 1.0 release series.
------------------------------------------------------------------------
diff --git a/README b/README
index cf328433f..bc682964b 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-GStreamer 1.13.x development series
+GStreamer 1.14.x development series
WHAT IT IS
----------
diff --git a/RELEASE b/RELEASE
index 81f4f47ac..a79ce4db9 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,4 +1,4 @@
-This is GStreamer gst-plugins-base 1.14.4.
+This is GStreamer gst-plugins-base 1.14.5.
The GStreamer team is pleased to announce another bug-fix release in the
stable 1.x API series of your favourite cross-platform multimedia framework!
@@ -7,6 +7,10 @@ The 1.14 release series adds new features on top of the 1.12 series and is
part of the API and ABI-stable 1.x release series of the GStreamer multimedia
framework.
+The 1.14 release series has now been superseded by the stable 1.16 series
+which was released on 19 April 2019 and should be backwards compatible. We
+recommend you upgrade to 1.16 at your earliest convenience.
+
Full release notes can be found at:
https://gstreamer.freedesktop.org/releases/1.14/
@@ -54,10 +58,10 @@ with other GStreamer modules for a complete multimedia experience.
==== Download ====
You can find source releases of gstreamer in the download
-directory: https://gstreamer.freedesktop.org/src/gstreamer/
+directory: https://gstreamer.freedesktop.org/src/
The git repository and details how to clone it can be found at
-https://cgit.freedesktop.org/gstreamer/gstreamer/
+https://gitlab.freedesktop.org/gstreamer/
==== Homepage ====
@@ -65,10 +69,16 @@ The project's website is https://gstreamer.freedesktop.org/
==== Support and Bugs ====
-We use GNOME's bugzilla for bug reports and feature requests:
-https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
+We have recently moved from GNOME Bugzilla to GitLab on freedesktop.org
+for bug reports and feature requests:
+
+ https://gitlab.freedesktop.org/gstreamer
+
+Please submit patches via GitLab as well, in form of Merge Requests. See
+
+ https://gstreamer.freedesktop.org/documentation/contribute/
-Please submit patches via bugzilla as well.
+for more details.
For help and support, please subscribe to and send questions to the
gstreamer-devel mailing list (see below for details).
diff --git a/configure.ac b/configure.ac
index 1287583a6..cba9b3e19 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5,7 +5,7 @@ dnl please read gstreamer/docs/random/autotools before changing this file
dnl initialize autoconf
dnl releases only do -Wall, git and prerelease does -Werror too
dnl use a three digit version number for releases, and four for git/prerelease
-AC_INIT([GStreamer Base Plug-ins],[1.14.4],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
+AC_INIT([GStreamer Base Plug-ins],[1.14.5],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
AG_GST_INIT
@@ -56,10 +56,10 @@ dnl 1.2.5 => 205
dnl 1.10.9 (who knows) => 1009
dnl
dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 1404, 0, 1404)
+AS_LIBTOOL(GST, 1405, 0, 1405)
dnl *** required versions of GStreamer stuff ***
-GST_REQ=1.14.4
+GST_REQ=1.14.5
dnl *** autotools stuff ****
diff --git a/gst-plugins-base.doap b/gst-plugins-base.doap
index 5cbb731b5..4338c1692 100644
--- a/gst-plugins-base.doap
+++ b/gst-plugins-base.doap
@@ -36,6 +36,16 @@ A wide range of video and audio decoders, encoders, and filters are included.
<release>
<Version>
+ <revision>1.14.5</revision>
+ <branch>1.14</branch>
+ <name></name>
+ <created>2019-05-29</created>
+ <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.14.5.tar.xz" />
+ </Version>
+ </release>
+
+ <release>
+ <Version>
<revision>1.14.4</revision>
<branch>1.14</branch>
<name></name>
diff --git a/meson.build b/meson.build
index 048cc356c..093dc7623 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@
project('gst-plugins-base', 'c',
- version : '1.14.4',
+ version : '1.14.5',
meson_version : '>= 0.40.1',
default_options : [ 'warning_level=1',
'buildtype=debugoptimized' ])