summaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog919
1 files changed, 919 insertions, 0 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>