summaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2020-06-19 19:16:01 +0100
committerTim-Philipp Müller <tim@centricular.com>2020-06-19 19:16:03 +0100
commit82a58f567f758140d7f50aad521ec8e04b3823a6 (patch)
treefb897f2dd7136656d7fa760c832a9aa7936ae52e /ChangeLog
parentf2af205a7811aaf343de27f07d90005c0fa7c7c7 (diff)
downloadgstreamer-plugins-base-82a58f567f758140d7f50aad521ec8e04b3823a6.tar.gz
Release 1.17.11.17.1
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog5692
1 files changed, 5692 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index dbbae2ae7..31d1f6495 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,5695 @@
+=== release 1.17.1 ===
+
+2020-06-19 19:16:01 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ChangeLog:
+ * NEWS:
+ * RELEASE:
+ * gst-plugins-base.doap:
+ * meson.build:
+ Release 1.17.1
+
+2020-06-19 12:17:55 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/audio/audio-converter.c:
+ * gst-libs/gst/audio/audio-converter.h:
+ * gst-libs/gst/audio/audio-resampler.c:
+ * gst-libs/gst/audio/audio-resampler.h:
+ * gst-libs/gst/pbutils/install-plugins.c:
+ * gst-libs/gst/rtp/gstrtcpbuffer.c:
+ * gst-libs/gst/rtsp/gstrtspmessage.h:
+ Fix up and add various "Since" markers and other related docs fixes
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/713>
+
+2020-06-18 12:15:57 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/sdp/gstsdpmessage.c:
+ sdp: fix gst_sdp_message_new_from_text() doc
+ Arguments were in the wrong order in the doc.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/711>
+
+2020-06-18 10:40:14 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/validate/meson.build:
+ tests: validate: Add workaround for older meson versions
+ subproject.get_variable() only has fallback since 0.51
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/710>
+
+2020-06-18 09:01:34 +0900 Hosang Lee <hosang10.lee@lge.com>
+
+ * tests/check/elements/subparse.c:
+ tests: subparse: add test for webvtt without hour component
+ Test for webvtt without hour component.
+ mm:ss.000
+
+2020-06-15 13:22:38 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videotestsrc/gstvideotestsrc.c:
+ videotestsrc: Do not try to answer the duration query before negotiation
+ We have no idea at that moment and this code was trying to divide by 0!
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/705>
+
+2020-06-15 09:46:17 -0400 Aaron Boxer <boxerab@gmail.com>
+
+ * gst-libs/gst/video/video-frame.c:
+ video: allow frame copy where destination dimensions are smaller than source
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/695>
+
+2020-06-12 13:04:23 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tests/examples/gl/meson.build:
+ * tests/examples/gl/qt/meson.build:
+ * tests/examples/gl/qt/mousevideooverlay/meson.build:
+ * tests/examples/gl/qt/qglwidgetvideooverlay/meson.build:
+ * tests/examples/gl/qt/qglwtextureshare/meson.build:
+ * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp:
+ * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp:
+ * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_gstthread.cpp:
+ * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_pipeline.cpp:
+ * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_qrenderer.cpp:
+ * tests/examples/gl/qt/videooverlay/meson.build:
+ * tests/examples/gl/qt/videooverlay/videooverlay.pri:
+ * tests/examples/gl/qt/videooverlay/videooverlay.pro:
+ gl/examples/qt: hook up to meson build
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/702>
+
+2020-06-06 01:22:21 +1000 Jan Schmidt <jan@centricular.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ * tests/check/libs/video.c:
+ video-converter: Add checks for configuration sanity.
+ If the cropping or scaling input or output rects put us completely
+ outside the input/output frame respectively, we can't draw anything
+ except black safely. Check for those conditions and don't set up a
+ configuration that attempts to access out of bounds memory outside
+ the input/output framebuffers.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/696>
+
+2020-06-05 23:34:44 +1000 Jan Schmidt <jan@centricular.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ * tests/check/libs/video.c:
+ video-converter: Guard against invalid frame input
+ If the frames passed in to gst_video_converter_frame()
+ have a different layout than was configured for, the
+ conversion code might go out of bounds and crash.
+ Do a sanity check on each frame passed in, and in the
+ absence of a return value in the API, just
+ refuse the conversion in invalid cases and leave the
+ destination frame untouched so it's obvious to
+ users that it was broken.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/696>
+
+2020-06-12 00:21:56 +0200 David Bender <benderdave@gitlab.fdo>
+
+ * gst-libs/gst/gl/x11/gstglwindow_x11.c:
+ gstglwindow_x11: fix resize
+ This patch was taken from #629#note_178766, the comment made
+ at the time was:
+ The root issue is a mismatch between the initialization of render_rect
+ in GstGLWindowX11Private and what's expected in the draw_cb function.
+ Because render_rect is not explicitly initialized to a width and height
+ of -1 (unlike gstglwindow_wayland_egl.c which does initialize to -1),
+ the less-than check for explicitly-set render_rect at gstglwindow_x11.c:453-454
+ always fails, even when the parent_win has been set and the render rectangle
+ has never been set.
+ Maybe this came from copying the similar check in the wayland code? Regardless,
+ I think the correct inequality should be '<= 0' (on both lines).
+ Alternatively initialization could be changed, but other sinks, e.g.
+ xvimagesink don't appear to use -1 to mean "unset" render_rect this way.
+ The issue can be reproduced by running the example in
+ tests/examples/gl/qt/videooverlay/ on X11, and resizing the output
+ window
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/701>
+
+2020-06-12 00:17:24 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/video/videooverlay.c:
+ videooverlay: chevrons don't need to be escaped in code examples
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/700>
+
+2020-06-11 16:39:23 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/playback/gstdecodebin3.c:
+ decodebin3: Lower error message to debug
+ Debugging leftover
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/699>
+
+2020-06-11 20:57:58 +0300 Jordan Petridis <jpetridis@gnome.org>
+
+ * ext/libvisual/visual.c:
+ libvisual: use gst_element_class_set_metadata when passing dynamic strings
+ gst_element_class_set_metadata is meant to only be used with
+ static or inlined strings, which isn't the case for this element
+ resulting in use-after-free later on.
+ https://gstreamer.freedesktop.org/documentation/gstreamer/gstelement.html?gi-language=c#gst_element_class_set_static_metadata
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/698>
+
+2020-06-11 13:16:40 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson_options.txt:
+ * tests/meson.build:
+ * tests/validate/meson.build:
+ meson: Use the tests option for validate
+ This is what gstreamer core does too, and avoids a configure error
+ when tests are disabled globally. Also print a useful error when
+ gst_tester is not found from the gstreamer subproject.
+ This broke in https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/667
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/697>
+
+2020-06-09 15:18:43 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ docs: Update plugins cache
+
+2020-06-10 10:43:42 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/audio/audio-format.h:
+ audio: add missing space in GST_AUDIO_FORMATS_ALL
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/694>
+
+2020-06-08 10:40:15 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ docs: Update plugins cache
+
+2020-06-04 16:40:44 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-format.h:
+ video: sort formats by quality
+ Will ensure that we pick the "best" format when negotiating caps.
+ Fix #649
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/689>
+
+2020-06-04 16:40:44 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/audio/audio-format.h:
+ audio: sort formats by quality
+ Will ensure that we pick the "best" format when negotiating caps.
+ Fix #649
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/689>
+
+2020-06-05 15:26:58 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * tests/check/elements/compositor.c:
+ * tests/validate/videorate/change_rate_reverse_playback.validatetest:
+ * tests/validate/videorate/change_rate_while_playing.validatetest:
+ * tests/validate/videorate/check-rate-prop.meta:
+ tests: enforce I420 format
+ Tests are assuming video is I420 but are not actually enforcing it.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/689>
+
+2020-05-22 00:35:03 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/playback/gsturidecodebin3.c:
+ uridecodebin3: Let decodebin do its stream selection if no one answers
+ If no one answers our `select-stream` signal, uridecodebin3 should
+ behave the same way as `decodebin3` and let decodebin do its own stream
+ selection.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/666>
+
+2020-05-22 00:32:15 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/playback/gstdecodebin3.c:
+ decodebin3: Avoid overriding explicit user selection
+ In case the user set a list of streams to select or answer explicitly
+ to all 'select-stream' event, we should respect his choice and not
+ try to add a stream per type.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/666>
+
+2020-06-08 08:11:00 +0200 Edward Hervey <edward@centricular.com>
+
+ * tests/check/elements/decodebin.c:
+ tests: Avoid hang with decodebin test
+ When adding elements dynamically to a pipeline one should never guess what the
+ curren/target state is, and instead use `gst_element_sync_state_with_parent()`.
+ Fixes racy hang when running within valgrind
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/692>
+
+2020-06-06 20:22:28 +0900 Seungha Yang <seungha@centricular.com>
+
+ * gst/playback/gstplaybin2.c:
+ * gst/playback/gstplaybin3.c:
+ playbin: Fix wrong AV element pair selection when rank is very large value
+ If user set very high rank to an element (e.g., integer max),
+ integer overflow can happen while multiplication operation
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/690>
+
+2020-06-06 00:41:17 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/cdparanoia/gstcdparanoiasrc.c:
+ * ext/gl/gstglalpha.c:
+ * ext/gl/gstgldeinterlace.c:
+ * ext/gl/gstgleffects.c:
+ * ext/gl/gstglimagesink.c:
+ * ext/gl/gstglmixer.c:
+ * ext/gl/gstglmixerbin.c:
+ * ext/gl/gstglstereomix.c:
+ * ext/gl/gstgltestsrc.c:
+ * ext/gl/gstglvideoflip.c:
+ * ext/gl/gstglvideomixer.c:
+ * ext/opus/gstopusenc.c:
+ * ext/pango/gstbasetextoverlay.c:
+ * ext/pango/gsttextrender.c:
+ * ext/pango/gsttimeoverlay.c:
+ * ext/theora/gsttheoraenc.c:
+ * gst/audiomixer/gstaudiointerleave.c:
+ * gst/audiomixer/gstaudiomixer.c:
+ * gst/audioresample/gstaudioresample.c:
+ * gst/audiotestsrc/gstaudiotestsrc.c:
+ * gst/compositor/compositor.c:
+ * gst/encoding/gstencodebin.c:
+ * gst/playback/gstdecodebin2.c:
+ * gst/playback/gstplaybin2.c:
+ * gst/playback/gstplaysink.c:
+ * gst/rawparse/gstrawaudioparse.c:
+ * gst/tcp/gstmultihandlesink.c:
+ * gst/videoscale/gstvideoscale.c:
+ * gst/videotestsrc/gstvideotestsrc.c:
+ plugins: uddate gst_type_mark_as_plugin_api() calls
+
+2020-06-04 16:25:12 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/libs/videoencoder.c:
+ videoencoder: Add test for min-force-key-unit-interval property
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/684>
+
+2020-06-04 15:19:18 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * tests/check/libs/videoencoder.c:
+ videoencoder: Also don't request a new key-unit if we already got one after the requested running time
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/684>
+
+2020-06-04 15:10:12 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: Don't request another keyunit if another one is pending or we requested one for a future time already
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/684>
+
+2020-06-03 21:46:38 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * gst-libs/gst/video/gstvideoencoder.h:
+ videoencoder: Add min-force-key-unit-interval property
+ This allows configuring the minimum interval between subsequent
+ force-key-unit requests and prevents a big bitrate increase if a lot of
+ key-units are requested.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/684>
+
+2020-06-03 20:49:12 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/libs/videoencoder.c:
+ videoencoder: Add test for correct force-keyunit event handling
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/684>
+
+2020-06-03 20:26:33 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/libs/videoencoder.c:
+ videoencoder: Fix force-keyunit handling in test
+ This now behaves according to the videoencoder API instead of some other
+ signalling.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/684>
+
+2020-06-03 22:38:07 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: When pushing headers as part of a keyframe mark the first header as keyframe
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/684>
+
+2020-06-03 20:17:06 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: Handle all matching force-keyunit events at once
+ Previously we only handled one event at a time, which could lead to the
+ following two suboptimal situations:
+ - frame 0 at 20ms, frame 1 at 40ms and two force-keyunit events at 10ms
+ and 15ms. We would create a new keyframe for both of the frames.
+ - 100 force-keyunit events with running-time NONE would cause all
+ following 100 frames to be made into a keyframe.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/684>
+
+2020-06-03 19:59:03 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: Sort force-keyunit-events by their running time
+ That way we can more easily work with the whole list without iterating
+ over all of the elements.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/684>
+
+2020-06-03 11:29:09 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst/playback/gsturidecodebin.c:
+ uridecodebin: Dont link random pads
+ When linking source pads to decodebin, make sure we use the *specified* new
+ source pad and not some random one.
+ This avoids ending up with source pads being unlinked.
+ Main cause of random timeouts with rtsp change_state_intensive validate tests
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/687>
+
+2020-06-04 10:41:13 +0200 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst-libs/gst/video/video-hdr.c:
+ video-hdr: fix memset warning
+ Fix warning on fedora arm64 target
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/685>
+
+2020-06-04 11:22:00 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/video/video-format.c:
+ video: Fix NV12_64Z32 number of component
+ This format has 3 components, just like NV12.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/686>
+
+2020-06-03 20:50:05 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/video/video-multiview.h:
+ doc: Add a minimal GstVideoMultiviewFlagsSet documentation
+
+2020-06-03 18:38:38 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * docs/meson.build:
+ doc: Require hotdoc >= 0.11.0
+
+2020-05-27 16:00:48 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ docs: Update gst_plugins_cache.json
+
+2020-05-29 02:43:59 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/cdparanoia/gstcdparanoiasrc.c:
+ * ext/gl/gstglalpha.c:
+ * ext/gl/gstgldeinterlace.c:
+ * ext/gl/gstgleffects.c:
+ * ext/gl/gstglimagesink.c:
+ * ext/gl/gstglmixer.c:
+ * ext/gl/gstglmixerbin.c:
+ * ext/gl/gstglstereomix.c:
+ * ext/gl/gstgltestsrc.c:
+ * ext/gl/gstglvideoflip.c:
+ * ext/gl/gstglvideomixer.c:
+ * ext/opus/gstopusenc.c:
+ * ext/pango/gstbasetextoverlay.c:
+ * ext/pango/gsttextrender.c:
+ * ext/pango/gsttimeoverlay.c:
+ * ext/theora/gsttheoraenc.c:
+ * gst/audiomixer/gstaudiointerleave.c:
+ * gst/audiomixer/gstaudiomixer.c:
+ * gst/audioresample/gstaudioresample.c:
+ * gst/audiotestsrc/gstaudiotestsrc.c:
+ * gst/compositor/compositor.c:
+ * gst/encoding/gstencodebin.c:
+ * gst/playback/gstdecodebin2.c:
+ * gst/playback/gstplaybin2.c:
+ * gst/playback/gstplaysink.c:
+ * gst/rawparse/gstrawaudioparse.c:
+ * gst/rawparse/gstrawaudioparse.h:
+ * gst/tcp/gstmultihandlesink.c:
+ * gst/videoscale/gstvideoscale.c:
+ * gst/videotestsrc/gstvideotestsrc.c:
+ plugins: Use gst_type_mark_as_plugin_api() for all non-element plugin types
+
+2020-06-03 15:06:08 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: Simplify header buffer metadata updating
+ Instead of doing a shallow copy of the list just to call make_writable()
+ on each buffer, do that inline in the same loop and modify the list
+ contents.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/683>
+
+2020-06-03 14:37:00 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * gst-libs/gst/video/gstvideoutils.h:
+ video: Use GQueue instead of plain GList in a few places
+ Also not optimal but at least simplifies the code a bit and doesn't
+ require g_list_length() and g_list_append() in a few places.
+ For 2.0 there are some more candidates to change but unfortunately
+ they're currently part of the API.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/683>
+
+2020-06-02 16:56:44 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-format.c:
+ video-format: RGB16/15 are not 16 bit per component but only 5.333 and 5
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/682>
+
+2020-05-27 15:41:43 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/audio/audio-format.c:
+ * gst-libs/gst/audio/audio-format.h:
+ * gst-libs/gst/audio/audio-info.h:
+ * tests/check/libs/audio.c:
+ audio: add gst_audio_make_raw_caps()
+ More binding friendly version of GST_AUDIO_CAPS_MAKE().
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/676>
+
+2020-06-01 15:24:32 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/audio/audio-format.h:
+ audio-format: remove empty space prefix from GST_AUDIO_FORMATS_ALL
+ This space prevent deserialization using gst_value_deserialize().
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/676>
+
+2020-05-27 15:05:37 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/audio/audio-format.c:
+ * gst-libs/gst/audio/audio-format.h:
+ audio-format: add gst_audio_formats_raw()
+ The existing GST_AUDIO_FORMATS_ALL macro is not binding friendly.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/676>
+
+2020-05-27 15:41:43 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ * tests/check/libs/video.c:
+ video: add gst_video_make_raw_caps()
+ More binding friendly version of GST_VIDEO_CAPS_MAKE().
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/676>
+
+2020-05-27 15:05:37 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ video-format: add gst_video_formats_raw()
+ The existing GST_VIDEO_FORMATS_ALL macro is not binding friendly.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/676>
+
+2020-05-29 19:08:51 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/eagl/gstglwindow_eagl.m:
+ glcontext/eagl: handle sending one message during shutdown
+ gst_gl_window_quit() will attempt to send a message but will be called
+ from GstGLContext's finalize handler and so the weak ref that backs
+ gst_gl_window_get_context will return NULL as it has already been
+ cleared. We need that context in send_message_async to decide whether
+ to run the provided callback immediately or queue in GCD
+ This is the equivalent commit for iOS as:
+ 7f59cefafb1cd733cf527fb935b2cd32418fcbe2
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/618
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/681>
+
+2020-05-29 15:44:55 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/eagl/gstglcontext_eagl.h:
+ * gst-libs/gst/gl/eagl/gstglcontext_eagl.m:
+ * gst-libs/gst/gl/eagl/gstglios_utils.h:
+ * gst-libs/gst/gl/eagl/gstglwindow_eagl.h:
+ * gst-libs/gst/gl/eagl/gstglwindow_eagl.m:
+ * gst-libs/gst/gl/meson.build:
+ gl/eagl: don't access UIkit objects on the main thread
+ This means we cannot access [view layer] or view.bounds from the OpenGL
+ thread. This also means that we need to call the main thread when
+ setting the window handle. However, we cannot perform that
+ synchronously as that may deadlock with the application performing the
+ set_window_handle() call.
+ We need to defer the actual update and run it asynchronously and wait
+ for the window handle update internally at each point it is needed.
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/372
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/681>
+
+2020-05-29 14:12:38 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/eagl/gstglcontext_eagl.h:
+ * gst-libs/gst/gl/eagl/gstglcontext_eagl.m:
+ * gst-libs/gst/gl/eagl/gstglwindow_eagl.h:
+ * gst-libs/gst/gl/eagl/gstglwindow_eagl.m:
+ gl/ios: fix typo GS_GL -> GST_GL
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/681>
+
+2020-05-29 16:21:11 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videorate/gstvideorate.c:
+ * tests/validate/meson.build:
+ * tests/validate/videorate/check-rate-prop.meta:
+ * tests/validate/videorate/rate_0_5.validatetest:
+ * tests/validate/videorate/rate_0_5/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/rate_0_5/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/rate_0_5_with_decoder.validatetest:
+ * tests/validate/videorate/rate_0_5_with_decoder/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/rate_0_5_with_decoder/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/rate_2_0.validatetest:
+ * tests/validate/videorate/rate_2_0/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/rate_2_0/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/rate_2_0_with_decoder.validatetest:
+ * tests/validate/videorate/rate_2_0_with_decoder/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/rate_2_0_with_decoder/flow-expectations/log-videorate-src-expected:
+ videorate: Update QoS events taking into account our rate
+ Otherwise there is a mismatch between the QoS values and what upstream
+ would expect, leading to too much buffer dropping in video decoders in
+ case rate < 1.0 or not enough buffer dropping in case rate > 1.0
+ Adding validate tests with and without decoders.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/679>
+
+2020-05-31 00:27:14 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videorate/gstvideorate.c:
+ * gst/videorate/gstvideorate.h:
+ * tests/validate/meson.build:
+ * tests/validate/videorate/change_rate_reverse_playback.validatetest:
+ * tests/validate/videorate/change_rate_reverse_playback/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/change_rate_reverse_playback/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/change_rate_while_playing.validatetest:
+ * tests/validate/videorate/change_rate_while_playing/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/change_rate_while_playing/flow-expectations/log-videorate-src-expected:
+ videorate: Fix changing `rate` property during playback
+ We need to take into account the base_ts to compute next_ts and it needs
+ to be updated on rate change.
+ This introduces `pending_rate` so that change rate is properly handled
+ in the streaming thread in a safe way.
+ Added tests
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/679>
+
+2020-05-28 13:42:22 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * tests/validate/meson.build:
+ * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.variable_to_10fps.validatetest:
+ * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/videorate-test.meta:
+ tests:validate: Run all test using a simple fakesink
+ `fakevideosink` is in -bad and thus not available here.
+ Update the expectation files as video metas are not negotiated anymore.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/677>
+
+2020-05-29 11:39:57 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglmemory.h:
+ * gst-libs/gst/gl/gstglupload.h:
+ libs: gl: silence gir compiler
+ There were a couple complains of the gir compiler on these gstgl
+ files.
+ * Added namespace to public macros, even if they are helpers.
+ * Removed a misused private tag
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/678>
+
+2020-01-23 12:38:44 -0600 Michael Gruner <michael.gruner@ridgerun.com>
+
+ * gst/videoscale/gstvideoscale.c:
+ videoscale: reorder code to avoid indent missmatches
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/548>
+
+2020-01-23 11:02:52 -0600 Michael Gruner <michael.gruner@ridgerun.com>
+
+ * gst/videoscale/gstvideoscale.c:
+ videoscale: transform size sensitive metas
+ Currently, videoscale just drops all metas that have other tags
+ besides video. However videoscale wont change the colorspace or
+ the orientation of the video so metas tagged as such may be
+ copied safely. Additionaly, given that videoscale will change
+ the frame size, we invoke the meta transform implementation
+ to give it the opportunity to scale accordingly.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/548>
+
+2020-01-22 22:30:11 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/libs/audiosink.c:
+ * tests/check/meson.build:
+ tests: audiosink: Test class extension struct
+ Test a vfunc which belongs to GstAudioSinkExtension struct.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/547>
+
+2020-01-22 00:14:14 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/audio/gstaudiosink.c:
+ * gst-libs/gst/audio/gstaudiosink.h:
+ audiosink: Keep baseclass extensible
+ Add a structure for future extension.
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/716
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/547>
+
+2020-05-27 15:11:17 +0200 uno20001 <regisztralo111@gmail.com>
+
+ * gst/playback/gstdecodebin2.c:
+ decodebin: only emit 'drained' signal when top chain is drained
+ Without this, decodebin emits 'drained' multiple times which then
+ causes (uri)playbin to emit 'about-to-finish' multiple times for
+ for file types.
+ Fixes #751
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/673>
+
+2020-05-27 19:59:56 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/elements/audioresample.c:
+ audioresample: Add new test that checks for downstream renegotiation
+ This test always consumes 48kHz and outputs different sample rates based
+ on downstream renegotiation. Previously this would produce completely
+ wrong timestamps and not output all samples.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/670>
+
+2020-05-27 19:08:45 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/elements/audioresample.c:
+ audioresample: Fix up test_live_switch
+ Actually check that we get back all samples, which we didn't before
+ because no draining was happening. Also remove commented out 0.10 code
+ and related comments.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/670>
+
+2020-05-26 22:51:06 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/audioresample/gstaudioresample.c:
+ audioresample: Drain resampler on discontinuities
+ Otherwise we would lose the last few samples when resetting the
+ resampler.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/670>
+
+2020-05-26 22:49:44 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/audioresample/gstaudioresample.c:
+ audioresample: Drain resampler and reset timestamp tracking on stream-start event too
+ And also reset timestamp tracking on EOS events as more data might come
+ afterwards with a new stream-start event. This keeps the code the same.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/670>
+
+2020-05-26 22:45:41 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/audioresample/gstaudioresample.c:
+ audioresample: Drain the resampler and reset timestamp tracking on caps changes
+ Especially when changing the sample rate our timestamp tracking will be
+ completely off, but even otherwise we would usually lose the last few
+ samples if we don't drain here as the resampler gets reset if anything
+ but the sample rate changes.
+ This is usually not a problem as the first buffer after a caps event
+ usually has the discont flag set, but can cause problems if
+ - the caps event is followed by a segment event, which then causes
+ draining according to the new sample rate
+ - the caps were changed because of rengotiation due to a reconfigure
+ event and there is not discontinuity from upstream
+ In both cases we would output buffers with completely wrong timestamps.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/670>
+
+2020-05-08 11:19:24 +0200 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst-libs/gst/video/video-anc.c:
+ video-anc: init type before g_once_init_enter
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/675>
+
+2020-05-08 11:03:52 +0200 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst-libs/gst/video/video-hdr.c:
+ video-hdr: fix typo
+ fix typo in video_hdr_ascii_string_to_unsigned
+ method name.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/675>
+
+2020-05-26 18:51:03 +0200 Niels De Graef <nielsdegraef@gmail.com>
+
+ * ext/gl/gstglimagesink.c:
+ glimagesink: Correct signals gtkdoc
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/669>
+
+2020-05-25 16:59:53 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videorate/gstvideorate.c:
+ * tests/validate/meson.build:
+ * tests/validate/videorate/reverse.10_to_1fps.validatetest:
+ * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.10_to_30fps.validatetest:
+ * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.1_to_10fps.validatetest:
+ * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.30fps.validatetest:
+ * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.variable_to_10fps.validatetest:
+ * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-src-expected:
+ videorate: Fix buffer selection logic in reverse playback
+ Stop comparing all timestamps from buffers that are before the segment
+ with the segment.stop and compare with the actual end times.
+ Comparing to segment.stop for all the buffers that where before
+ the segment.stop was incorrect and leading to consuming wrong buffers
+ and not respecting segment.stop, this is now properly tested.
+ Expectations for `reverse.10_to_1fps.validatetest` have been fixed to
+ take that into account and comparing the checksums of the sinkpad and
+ srcpad expectations makes pretty clear how wrong that was.
+ (we can see in the expectations that videotestsrc outputs an extra
+ buffer with pts == segment.stop and this one is now properly dropped
+ by videorate as bec7f4ad5ed4bb1abfb92db946e654338766562b aimed at
+ doing)
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/668>
+
+2020-05-25 16:29:15 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videorate/gstvideorate.c:
+ videorate: Factor out a method for the`max-duplication-time` property
+ Sensibly simplifying gst_video_rate_transform_ip
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/668>
+
+2020-05-25 14:48:04 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videorate/gstvideorate.c:
+ videorate: Use CLOCK_TIME_IS_VALID instead of checking CLOCK_TIME_NONE
+ Making it more consistency with the rest of the code.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/668>
+
+2020-05-25 14:33:54 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videorate/gstvideorate.c:
+ videorate: Factor out a method to reset mode
+ Working on simplifying gst_video_rate_transform_ip
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/668>
+
+2020-05-25 12:31:32 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videorate/gstvideorate.c:
+ * tests/validate/meson.build:
+ * tests/validate/videorate/10_to_1fps.validatetest:
+ * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/reverse.10_to_1fps.validatetest:
+ * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-sink-expected:
+ * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-src-expected:
+ * tests/validate/videorate/videorate-test.meta:
+ videorate: Do not push an extra buffer on EOS when we are done pushing already
+ There is no reason that when we have already pushed all the buffers in
+ a segment we push a new one on EOS
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/668>
+
+2020-05-22 23:24:55 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/audiotestsrc/gstaudiotestsrc.c:
+ * meson_options.txt:
+ * tests/check/meson.build:
+ * tests/meson.build:
+ * tests/validate/audiotestsrc/reverse.validatetest:
+ * tests/validate/audiotestsrc/reverse/flow-expectations/log-asink-sink-expected:
+ * tests/validate/meson.build:
+ audiotestsrc: Fix the way we compute EOS in reverse playback
+ In reverse playback we were not taking into account the current buffer
+ samples to check if we had reached EOS which was leading to a buffer
+ with PTS = CLOCK_TIME_NONE containing too many frames followed by a
+ useless buffer with pts=0 duration=0, and a g_critical issue in
+ gst_object_sync_values.
+ Also add a validate based test case.
+ Without that patch this is how the expectation fails:
+ ``` diff
+ --- log-asink-sink-expected 2020-05-22 23:22:42.654384579 -0400
+ +++ log-asink-sink-actual 2020-05-22 23:29:35.671586380 -0400
+ @@ -27,5 +27,6 @@
+ buffer: pts=0:00:00.058820861, due=0:00:00.023219955, flags=discont
+ buffer: pts=0:00:00.035600907, due=0:00:00.023219954, flags=discont
+ buffer: pts=0:00:00.012380952, due=0:00:00.023219955, flags=discont
+ -buffer: pts=0:00:00.000000000, due=0:00:00.012380952, flags=discont
+ +buffer: due=0:00:00.012380953, flags=discont
+ +buffer: pts=0:00:00.000000000, flags=discont
+ event eos: (no structure)
+ ```
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/667>
+
+2020-05-13 15:28:33 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ gl: egl: fix gtk-doc doc start code
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/664>
+
+2020-05-13 14:50:22 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/gl/gstglfilter.c:
+ * gst-libs/gst/gl/gstglfilter.h:
+ gl: workaround gir warning
+ The gir generator wrongly assume that the vfunc
+ GstGLFilterClass.filter() and the method gst_gl_filter_filter_texture()
+ are related. As a result it complains about not matching argument names.
+ Workaround this by naming both of their arguments input and output.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/664>
+
+2020-05-13 10:08:25 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/gl/egl/gstegl.c:
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ * gst-libs/gst/gl/egl/gstgldisplay_egl.c:
+ gl: egl: add missing gir annotations
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/664>
+
+2020-05-13 10:13:04 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/gl/x11/gstgldisplay_x11.c:
+ gl: x11: skip gst_gl_display_x11_new_with_display() from gir
+ The X11 Display type is not usable in gir.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/664>
+
+2019-01-25 22:48:17 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * gst-libs/gst/riff/riff-media.c:
+ riff-media: add H.265
+ Closes #359
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/43>
+
+2020-05-05 17:39:04 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/gl/gstglcolorscale.c:
+ glcolorscale: fix documentation
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/653>
+
+2020-05-14 14:00:22 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/egl/gstgldisplay_egl.c:
+ gl/display/egl: ensure debug category is initialized
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/662>
+
+2020-05-12 04:58:24 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson.build:
+ meson: Pass native: false to add_languages()
+ This is needed for cross-compiling without a build machine compiler
+ available. The option was added in 0.54, but we only need this in
+ Cerbero and it doesn't affect older versions so it should be ok.
+ Will only cause a spurious warning.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/660>
+
+2020-05-09 07:31:04 +0200 Edward Hervey <edward@centricular.com>
+
+ * tests/check/elements/glfilter.c:
+ * tests/check/elements/glmixer.c:
+ check: verify gst_gl_display_add_context()
+ As is done almost everywhere else. Doesn't cost anything.
+ CID #1462817
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/657>
+
+2020-05-08 15:10:17 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tests/check/libs/gstglcontext.c:
+ tests/gl: add test for GL context removal
+ Tests functionality fixed by:
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/654
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/656>
+
+2020-04-27 09:57:30 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videorate/gstvideorate.c:
+ videorate: Fix buffer timestamp underflow in reverse playback
+ And fix reverse playback buffer duration computation as in reverse
+ playback, buffer duration is prev_buffer.pts - buffer.pts not pts -
+ next_pts (buffers are displayed from buffer.pts + buffer.duration for
+ a duration of buffers.duration).
+ This is now tested with the `validate.test.clock_sync.videorate.*`
+ tests in the default integration testsuite where we check the exact
+ data flow and the synchronization on the clock behaviour with a
+ TestClock.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/646>
+
+2020-04-23 20:35:39 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/videotestsrc/gstvideotestsrc.c:
+ videotestsrc: Fix buffer duration in reverse playback
+ In reverse playback, buffers have to be displayed at buffer.stop running
+ time, meaning:
+ buffer.pts + buffer.duration = prev_buffer.pts
+ =>
+ buffer.duration = prev_buffer.pts - buffer.pts
+ We were setting buffer.duration = next_buffer.pts - buffer.pts which
+ is not correct.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/646>
+
+2020-05-06 16:13:11 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/gl/gstgldisplay.c:
+ gldisplay: Fix context leak when removing a context from the display
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/654>
+
+2020-05-06 09:26:35 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst-libs/gst/gl/gstgldisplay.c:
+ gldisplay: Fix list iteration
+ We were never moving past the first entry it seems...
+ CID #1461275
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/654>
+
+2020-02-27 00:05:52 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/check/meson.build:
+ tests: fix meson test env setup to make sure we use the right gst-plugin-scanner
+ If core is built as a subproject (e.g. as in gst-build), make sure to use
+ the gst-plugin-scanner from the built subproject. Without this, gstreamer
+ might accidentally use the gst-plugin-scanner from the install prefix if
+ that exists, which in turn might drag in gst library versions we didn't
+ mean to drag in. Those gst library versions might then be older than
+ what our current build needs, and might cause our newly-built plugins
+ to get blacklisted in the test registry because they rely on a symbol
+ that the wrongly-pulled in gst lib doesn't have.
+ This should fix running of unit tests in gst-build when invoking
+ meson test or ninja test from outside the devenv for the case where
+ there is an older or different-version gst-plugin-scanner installed
+ in the install prefix.
+ In case no gst-plugin-scanner is installed in the install prefix, this
+ will fix "GStreamer-WARNING: External plugin loader failed. This most
+ likely means that the plugin loader helper binary was not found or
+ could not be run. You might need to set the GST_PLUGIN_SCANNER
+ environment variable if your setup is unusual." warnings when running
+ the unit tests.
+ In the case where we find GStreamer core via pkg-config we use
+ a newly-added pkg-config var "pluginscannerdir" to get the right
+ directory. This has the benefit of working transparently for both
+ installed and uninstalled pkg-config files/setups.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/582>
+
+2020-02-26 23:46:57 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/check/meson.build:
+ tests: don't look for plugins in -base installdir for tests
+ -base plugins will always be found in the build directory, and
+ core plugins will be found either also via the build directory
+ (if both core and -base are a subproject) or by getting the
+ pluginsdir via pkg-config if core is installed.
+ The GST_PLUGIN_LOADING_WHITELIST env var will make sure we only
+ pick up plugins from core/base and base plugins only from the
+ builddir.
+ There is no reason to look for -base plugins in the install dir.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/582>
+
+2020-03-12 09:38:58 +0200 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/tcp/gsttcpclientsrc.c:
+ * gst/tcp/gsttcpserversrc.c:
+ * gst/tcp/gsttcpserversrc.h:
+ * gst/tcp/gsttcpsrcstats.c:
+ * gst/tcp/gsttcpsrcstats.h:
+ * gst/tcp/meson.build:
+ tcpserversrc: Add stats property
+ Like in tcpclientsrc
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/651>
+
+2020-05-06 11:52:20 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ discoverer: Check sinkpad existence before retrieving caps
+ Otherwise we would error out without releasing the caps first.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/655>
+
+2020-05-06 11:44:39 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ discoverer: Ensure that we have fixed, non-empty caps before passing passing to is_subtitle_caps()
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/655>
+
+2020-05-06 11:42:05 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ discoverer: Try to get negotiated caps first on pad-added and only then fall back to a caps query
+ The negotiated caps will be more accurate and are fixed caps in any
+ case.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/498
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/655>
+
+2020-05-05 17:17:57 +0200 Edward Hervey <edward@centricular.com>
+
+ * ext/gl/gstgloverlaycompositorelement.c:
+ gloverlaycompositor: Don't leak caps feature
+ Only copy it if we really are going to modify and use it
+ CID #1439873
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/652>
+
+2020-05-01 11:27:46 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ videoaggregator: Don't crash when setting pad properties after the aggregator was finalized
+ The application might still have a strong reference to a pad and change
+ properties, which should work without crashing.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/649>
+
+2020-05-01 10:08:40 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/rtsp/gstrtspurl.c:
+ * gst-libs/gst/video/video-anc.h:
+ Add missing colons to Since markers in the docs
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/648>
+
+2020-04-30 17:59:45 +0100 Philippe Normand <philn@igalia.com>
+
+ * gst-libs/gst/gl/gstglbasesrc.c:
+ * gst-libs/gst/gl/gstglbasesrc.h:
+ gl: Add since tags for new glbasesrc base class
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/647>
+
+2020-04-30 17:59:24 +0100 Philippe Normand <philn@igalia.com>
+
+ * gst-libs/gst/gl/gstglwindow.c:
+ gst/gl: Add documentation for new scroll API
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/647>
+
+2020-04-30 17:58:43 +0100 Philippe Normand <philn@igalia.com>
+
+ * gst-libs/gst/video/navigation.h:
+ navigation: Add since tag for new API
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/647>
+
+2020-04-28 21:27:36 +0800 He Junyan <junyan.he@hotmail.com>
+
+ * tests/check/libs/pbutils.c:
+ test: pbutils: Add check for high throughput scc.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/645>
+
+2020-04-28 21:14:07 +0800 He Junyan <junyan.he@hotmail.com>
+
+ * gst-libs/gst/pbutils/codec-utils.c:
+ libs: pbutils: Add High throughput scc extensions profile idc(IDC 11)
+ It is compitable with scc and we can use scc's function to identify it.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/645>
+
+2020-04-28 19:10:05 +0800 He Junyan <junyan.he@hotmail.com>
+
+ * gst-libs/gst/pbutils/codec-utils.c:
+ libs: pbutils: select extension profile by profile idc.
+ the old manner does not consider the profile idc. The profile idc should
+ play an more important role in recognizing the profile than the other
+ information. And there is no need to mix profiles of different extensions
+ together to find the closest profile when the bits stream is not standard,
+ different extensions support different features and should not be mixed.
+ The correct way should be recognize the extension category by profile idc
+ firstly, and then find the closest profile.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/645>
+
+2020-04-28 18:17:30 +0800 He Junyan <junyan.he@hotmail.com>
+
+ * gst-libs/gst/pbutils/codec-utils.c:
+ libs: pbutils: rename the GstH265FormatRangeExtensionProfile.
+ GstH265FormatRangeExtensionProfile declares the common bits used
+ for not only format range extensions profiles, but also for several
+ different h265 extension profiles, such as high throughput, screen
+ content coding extensions, etc. And So the old name is not proper.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/645>
+
+2020-04-27 09:40:23 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/pbutils/codec-utils.c:
+ opusdec: prevent 'channels=0' in caps
+ gst_opus_channel_positions() should fail if caps contains "channels=0".
+ Prevent index underflow when indexing gst_opus_channel_positions[] (CID 1462590).
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/644>
+
+2020-04-24 22:40:10 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglbasesrc.c:
+ glbasesrc: avoid deadlock when querying for OpenGL context
+ Continuation of:
+ a4e49ba8c9657e2230aad32b6988bbda7a755440
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/642
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/643>
+
+2020-04-24 22:38:32 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglbasemixer.c:
+ * ext/gl/gstglstereosplit.c:
+ * gst-libs/gst/gl/gstglbasefilter.c:
+ gl: fix application context querying between elements
+ Fixes error introduced by:
+ a4e49ba8c9657e2230aad32b6988bbda7a755440
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/642
+ Using the application GL context as the local GL context is not going to
+ work very well.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/643>
+
+2020-04-23 10:17:31 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * ext/opus/gstopusdec.c:
+ * ext/opus/gstopusdec.h:
+ opusdec: add 'stats' property
+ Allow users to retrieve the number of samples, and their duration,
+ generated using PLC.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/641>
+
+2020-04-24 14:44:46 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglbasemixer.c:
+ * ext/gl/gstglmixerbin.c:
+ * ext/gl/gstglstereosplit.c:
+ * gst-libs/gst/gl/gstglbasefilter.c:
+ * gst-libs/gst/gl/gstglbasesrc.c:
+ * tests/check/elements/glmixer.c:
+ * tests/check/meson.build:
+ gl: avoid deadlock querying for OpenGL context
+ If there are two elements and threads attempting to query each other for
+ an OpenGL context. The locking may result in a deadlock.
+ We need to unlock each element's context_lock when querying another
+ element for the OpenGL context in order to allow any other element to
+ take the lock when the other element is querying for an OpenGL context.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/642>
+
+2020-04-21 20:09:41 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tests/check/elements/glstereo.c:
+ * tests/check/meson.build:
+ tests: add glviewconvert users integration unit test
+ Catch all smoke test for ensuring a basic pipeline can negotiate
+ successfully.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/638>
+
+2020-04-21 22:56:49 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/pango/gsttextrender.c:
+ textrender: Don't calculate caps on every buffer
+ Only renegotiate with downstream when the srcpad has a pending
+ reconfigure flag, instead of querying, fixating and sending caps
+ for every buffer.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/640>
+
+2020-04-19 18:29:18 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-anc.c:
+ video-anc: Register an init function for Bar meta
+ The init function is mandatory and we keep around uninitialized memory
+ otherwise.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/747
+
+2020-04-10 14:08:15 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglmixer.c:
+ glvideomixer: fix black output after display changes
+ Partial revert of 55e80b550e4ad02aaf44b30ec8b03da9ee485ac6
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/743
+
+2020-04-10 14:05:08 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglvideomixer.c:
+ glvideomixer: intersect with template caps when updating
+ Downstream may provide extra things when we ask it for caps that we may
+ need to remove.
+ Fixes the following pipeline warning:
+ gltestsrc ! glvideomixerelement ! glimagesinkelement
+ ** (gst-launch-1.0:908581): WARNING **: 13:53:28.518: glvideomixer0: update_src_caps returned caps which are not a real subset of the filter caps
+
+2020-04-10 22:45:26 +1000 Jan Schmidt <jan@centricular.com>
+
+ * gst/typefind/gsttypefindfunctions.c:
+ typefind: Consider MPEG-PS PSM to be a PES type
+ Include the Program Stream Map packet type 0xBC in the
+ set of packets we treat as PES. This fixes typefinding
+ on MPEG-PS streams with PSM, where the PSM would previously
+ be considered a loss-of-sync and cause the typefind
+ to require more data.
+
+2019-08-12 10:41:31 +0100 Philippe Normand <philn@igalia.com>
+
+ * gst/playback/gsturidecodebin3.c:
+ uridecodebin3: Activate suburi playback item
+ The suburi playback item has to be activated after the main playback item so
+ that playsink can properly enable text rendering.
+ Fixes #451
+
+2020-04-10 04:24:03 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/pango/gsttextrender.c:
+ textrender: Fix AYUV output.
+ Fix the check for whether the element is operating in ARGB mode. It
+ was incorrectly checking if the output format has an alpha channel,
+ which is true for both ARGB and AYUV, leading to the element
+ incorrectly outputting ARGB values into AYUV caps.
+
+2020-04-08 15:26:23 +0800 He Junyan <junyan.he@hotmail.com>
+
+ * gst-libs/gst/gl/gstgldisplay.c:
+ libs: gl: Fix a context leak when display_create_context failed
+
+2020-04-03 10:36:02 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * tools/gst-discoverer.c:
+ discoverer: Enhance printed information when not verbose
+ Basically print information about media tracks making without tags
+ nor buffers in caps making still quite small but containing all
+ information infos.
+ Stop making 'Topology' section and just print the info
+ before:
+ ```
+ Topology:
+ container: MPEG-2 Transport Stream
+ audio: AC-3 (ATSC A/52)
+ video: H.264 (High Profile)
+ Properties:
+ Duration: 0:00:05.512394259
+ Seekable: yes
+ Live: no
+ Tags:
+ audio codec: AC-3 (ATSC A/52)
+ bitrate: 192000
+ video codec: H.264 (High Profile)
+ minimum bitrate: 12947
+ maximum bitrate: 12947
+ ```
+ After:
+ ```
+ Properties:
+ Duration: 0:00:05.512394259
+ Seekable: yes
+ Live: no
+ container: MPEG-2 Transport Stream
+ audio: AC-3 (ATSC A/52)
+ Stream ID: b076403d73e0c5fc13985832e8d585945603993437ba14b0799f422f9495e8ef:1/00001100
+ Language: <unknown>
+ Channels: 2 (front-left, front-right)
+ Sample rate: 48000
+ Depth: 32
+ Bitrate: 192000
+ Max bitrate: 0
+ video: H.264 (High Profile)
+ Stream ID: b076403d73e0c5fc13985832e8d585945603993437ba14b0799f422f9495e8ef:1/00001011
+ Width: 1920
+ Height: 1080
+ Depth: 24
+ Frame rate: 30000/1001
+ Pixel aspect ratio: 1/1
+ Interlaced: true
+ Bitrate: 10363396
+ Max bitrate: 12947
+ ```
+
+2020-04-06 15:20:39 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/typefind/gsttypefindfunctions.c:
+ typefindfunctions: Fix otio typefinder to actually detect otio files
+ The string "\"OTIO_SCHEMA\":" is 14 characters and not 15. Checking for
+ 15 characters would also check for the final '\0', which does not exist
+ in any otio file as the string is the key of a JSON map.
+
+2020-04-06 15:14:41 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/typefind/gsttypefindfunctions.c:
+ typefindfunctions: Fix otio typefinder detecting anything with curly braces at the start
+ memcmp() returns 0 (aka FALSE) on match and a difference otherwise.
+ Previously the typefinder was matching on anything but otio files that
+ happened to have some curly braces in the beginning of the file.
+ Fixes a false positive with a MOV file.
+
+2020-03-20 10:58:19 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ pbutils: Add EncodingProfile serialization support
+
+2020-03-19 17:02:57 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ pbutils: Support for variable framerate in the encoding serialization
+
+2020-04-02 23:30:57 +1100 Jan Schmidt <jan@centricular.com>
+
+ * gst-libs/gst/video/video-hdr.h:
+ video-hdr: Fix a docs typo (x -> y)
+
+2018-11-30 23:10:55 +1100 Jan Schmidt <jan@centricular.com>
+
+ * gst-libs/gst/audio/gstaudiodecoder.c:
+ audiodecoder: Handle instant-rate-change event
+ When receiving an instant-rate-change event, store the updated
+ seek flags and replace the flags in any input segments with them
+ to allow for instant switching between trickmodes and not.
+
+2018-11-30 22:56:11 +1100 Jan Schmidt <jan@centricular.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ videodecoder: Handle instant-rate-change event
+ When receiving an instant-rate-change event, store the updated
+ seek flags and replace the flags in any input segments with them
+ to allow for instant switching between trickmodes and not.
+
+2018-09-29 00:49:46 +1000 Jan Schmidt <jan@centricular.com>
+
+ * gst-libs/gst/audio/gstaudiobasesink.c:
+ audiobasesink: Handle an extra case of buffers being out of segment
+ It's possible that a buffer might be within the segment proper,
+ but not within the "valid" part we're playing, which is only
+ things after the 'offset' part of the segment. In that case,
+ the running-times of the buffer-start and buffer-stop will be
+ GST_CLOCK_TIME_NONE, and we'd better not schedule playback that
+ far in the future.
+
+2018-08-21 02:21:23 +1000 Jan Schmidt <jan@centricular.com>
+
+ * tools/gst-play.c:
+ gst-play: Add -i parameter for instant rate changes
+ Add a command line flag that enables use of the
+ instant rate changes flag when doing rate changes.
+
+2018-08-18 03:37:09 +1000 Jan Schmidt <jan@centricular.com>
+
+ * tests/examples/seek/instant-rate-change.c:
+ * tests/examples/seek/meson.build:
+ tests/examples/seek/instant-rate-change: Add example app
+ Add an example app to exercise instant rate changes in a few
+ scenarios. Currently it deadlocks a lot sending rate changes to
+ paused pipelines.
+
+2018-06-18 08:51:05 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/playback/playback-test.c:
+ playback-test: Add support for start_type=stop_type=NONE seeks
+
+2018-05-25 11:01:58 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/playback/playback-test.c:
+ playback-test: Add support for sending instant-rate-change seeks
+
+2020-04-01 17:47:04 +0200 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: subclass 'set_format' should be optional
+ Aligns documentation with the code to make the subclass
+ 'set_format' call optional.
+
+2020-03-10 20:36:16 +0900 Seungha Yang <seungha@centricular.com>
+
+ * gst-libs/gst/video/video-hdr.c:
+ * gst-libs/gst/video/video-hdr.h:
+ * tests/check/libs/video.c:
+ video-hdr: Rework for GstVideoMasteringDisplayInfo and GstVideoContentLightLevel struct
+ This commit modifies GstVideoMasteringDisplayInfo and GstVideoContentLightLevel
+ structs so that each value is to be more like hdr_metadata_infoframe struct
+ of linux drm header and DXGI_HDR_METADATA_HDR10 struct of Windows.
+ So each value is no more fraction but normalized one as per CTA 861.G spec.
+ Also the unit of each value will be consistent with H.264, H.265
+ specifications, hdr_metadata_infoframe struct for linux and
+ DXGI_HDR_METADATA_HDR10 struct for Windows.
+
+2020-04-01 20:05:06 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ videoaggregator: fix gir warning about invalid doc comment
+ [38/1301] Generating GstVideo-1.0.gir with a custom command.
+ ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.c:231: Error: GstVideo: identifier not found on the first line:
+ *
+ ^
+
+2020-04-01 13:55:50 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglmemory.h:
+ gl: add support for Y412_LE / Y412_BE format
+ Reuse Y410 code for Y412_LE / Y412_BE except gl format. The gl format is
+ RGBA16 for Y412_LE / Y412_BE.
+ Sample pipeline:
+ gst-launch-1.0 videotestsrc ! video/x-raw,format=Y412_LE ! glimagesink
+
+2020-03-30 14:37:26 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglmemory.h:
+ gl: add support for Y212_LE / Y212_BE format
+ Because the color value is stored in MSB, so we can reuse the
+ Y210 code for P012_LE / P012_BE
+ Sample pipeline:
+ gst-launch-1.0 videotestsrc ! video/x-raw,format=Y212_LE ! glimagesink
+
+2020-03-27 02:48:39 +0100 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ gstvideoaggregator: expose max-last-buffer-repeat property on pads
+ This can be used to have compositor display either the background
+ or a stream on a lower zorder after a live input stream freezes
+ for a certain amount of time, for example because of network
+ issues.
+
+2020-03-20 19:09:17 +0100 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst/subparse/gstsubparse.c:
+ * gst/subparse/gstsubparse.h:
+ * tests/check/elements/subparse.c:
+ subparse: convert from pango-markup to utf8 ..
+ when downstream requires it
+
+2020-03-12 10:27:34 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ * gst-libs/gst/video/video-info.c:
+ video: add support for Y412 format
+ Y412 is a packed 12 bits 4:4:4:4 format in the order U, Y, V, A, 2 bytes
+ per component with the color value stored in the 12 most significant
+ bits
+ Refer to https://github.com/torvalds/linux/blob/master/include/uapi/drm/drm_fourcc.h#L182
+ for the LE variant
+
+2020-03-11 10:58:00 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ * gst-libs/gst/video/video-info.c:
+ video: add support for Y212 format
+ Y212 is a packed 12 bits 4:2:2 format in the order Y, U, Y, V, 2 bytes
+ per component with the color value stored in the 12 most significant
+ bits
+ Refer to https://github.com/torvalds/linux/blob/master/include/uapi/drm/drm_fourcc.h#L174
+ for the LE variant
+
+2020-03-12 15:18:22 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-blend.c:
+ * gst-libs/gst/video/video-overlay-composition.h:
+ video-blend: Add support for blending on top of 16 bit per component formats
+ With this we can support every currently supported video format for
+ blending.
+
+2020-03-26 13:51:24 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m:
+ glcontext/cocoa: handle sending one message during shutdown
+ gst_gl_window_quit() will attempt to send a message but will be called
+ from GstGLContext's finalize handler and so the weak ref that backs
+ gst_gl_window_get_context will return NULL as it has already been
+ cleared. We need that context in send_message_async to decide whether
+ to run the provided callback immediately or queue in GCD
+
+2020-03-26 13:50:52 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglcontext.c:
+ glcontext: add context is valid precondition to get_thread()
+
+2020-03-26 13:50:22 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglwindow.c:
+ glwindow: remove unused private alive variable
+
+2020-03-26 13:46:56 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: fix segfault
+ Without this fix, it is possible that outbuf is not initialized, which
+ will result in segfault when call gst_buffer_replace (&outbuf, NULL). In
+ addition, the patch fixes potential memory leak in restart path.
+ The segfault can be reproduced by the pipeline below:
+ GST_GL_PLATFORM=egl \
+ gst-launch-1.0 videotestsrc ! msdkh265enc ! msdkh265dec ! \
+ 'video/x-raw(memory:DMABuf)' ! glimagesink
+
+2020-03-24 12:39:50 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglmemory.h:
+ gl: add support for P012_LE / P012_BE format
+ Because the color value is stored in MSB, so we can reuse the
+ P016_LE / P016_BE code for P012_LE / P012_BE
+
+2020-03-09 10:21:53 +0000 Chris Lord <clord@igalia.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ * gst-libs/gst/gl/egl/gsteglimage_private.h:
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: Fix fallback from direct dmabuf to dmabuf upload method
+ In the situation that the direct dmabuf path is chosen, but with an
+ unsupported texture format, this causes accept to fail rather than
+ continue and fail at the upload stage. It is also possibly necessary to
+ reconfigure after falling back from direct to non-direct dmabuf upload
+ paths.
+
+2020-03-23 18:42:19 +0900 Seungha Yang <seungha@centricular.com>
+
+ * gst/videorate/gstvideorate.c:
+ videorate: Signalling reconfigure to upstream whenever updating downstream caps
+ Previously configured bufferpool can be expired/inactivate by the
+ updated caps. Therefore new reconfigure event should be signalled in order to
+ do allocation query dancing between upstream and downstream again.
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/730
+
+2020-03-14 20:22:50 +0100 Loïc Minier <lool@dooz.org>
+
+ * pkgconfig/gstreamer-audio-uninstalled.pc.in:
+ * pkgconfig/gstreamer-audio.pc.in:
+ * pkgconfig/gstreamer-pbutils-uninstalled.pc.in:
+ * pkgconfig/gstreamer-pbutils.pc.in:
+ pkgconfig: fix missing gst-tag Requires
+ Promote deps gstreamer-tag to Requires for pbutils and add missing
+ gstreamer-tag Requires for gst-audio. Uninstalled builds would fail
+ with:
+ stage/usr/local/lib/x86_64-linux-gnu/libgstpbutils-1.0.so: undefined reference to `gst_tag_list_to_vorbiscomment_buffer'
+ [...]
+ stage/usr/local/lib/x86_64-linux-gnu/libgstaudio-1.0.so: undefined reference to `gst_tag_register_musicbrainz_tags'
+
+2020-03-14 19:42:24 +0100 Loïc Minier <lool@dooz.org>
+
+ * pkgconfig/gstreamer-sdp-uninstalled.pc.in:
+ * pkgconfig/gstreamer-sdp.pc.in:
+ pkgconfig: add missing gst-rtp dep to gst-sdp
+ Uninstalled builds using rtp would fail with:
+ stage/usr/local/lib/x86_64-linux-gnu/libgstsdp-1.0.so: undefined reference to `gst_rtp_payload_info_for_pt'
+
+2020-03-21 14:03:44 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ videodecoder: fix documentation
+ Fix list indentation, othewise it is interpreted as verbatim.
+
+2020-03-17 18:40:26 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst-libs/gst/video/navigation.c:
+ navigation: Use G_DEFINE_INTERFACE
+
+2020-03-17 18:20:59 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst-libs/gst/audio/streamvolume.h:
+ streamvolume: Use G_DECLARE_INTERFACE
+
+2020-03-17 17:51:36 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst-libs/gst/allocators/gstphysmemory.c:
+ * gst-libs/gst/allocators/gstphysmemory.h:
+ gstphysmemory: Use G_DECLARE_INTERFACE
+
+2020-03-17 17:47:47 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst-libs/gst/pbutils/gstaudiovisualizer.h:
+ audiovisualizer: Add support for g_autoptr()
+ Ideally, we would use something like `G_DECLARE_DERIVABLE_TYPE`, but
+ that would break API.
+
+2020-02-20 17:25:19 +0100 Miguel Paris <mparisdiaz@gmail.com>
+
+ * gst-libs/gst/rtp/gstrtpbuffer.c:
+ * tests/check/libs/rtp.c:
+ rtpbuffer: add_extension_onebyte_header: fix the proper wordlen
+ The wordlen ("length") MUST represent the total "number of 32-bit words
+ in the extension, excluding the four-octet extension header" (rfc3550).
+ There are cases where already existent padding is reused for adding
+ the new extension. So the new wordlen should be updated if the new
+ added extension makes it to increase.
+
+2019-12-13 16:06:44 +0100 Miguel Paris <mparisdiaz@gmail.com>
+
+ * gst-libs/gst/rtp/gstrtpbuffer.c:
+ rtpbuffer: get_onebyte_header_end_offset: allow 0 offset
+ There are some cases where the full extension data could be padding.
+ In order to make the GstRtpBuffer robust enough, this change supports
+ this case.
+
+2020-02-10 18:17:42 +0000 Philippe Normand <philn@igalia.com>
+
+ * ext/gl/gstglimagesink.c:
+ * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
+ gl/wayland: Mouse events handling
+
+2020-02-10 18:05:01 +0000 Philippe Normand <philn@igalia.com>
+
+ * ext/gl/gstglimagesink.c:
+ * ext/gl/gstglimagesink.h:
+ * gst-libs/gst/gl/gstglwindow.c:
+ * gst-libs/gst/gl/gstglwindow.h:
+ gl/navigation: Scroll events dispatch support
+
+2020-02-10 17:55:24 +0000 Philippe Normand <philn@igalia.com>
+
+ * gst-libs/gst/video/navigation.c:
+ * gst-libs/gst/video/navigation.h:
+ * tests/check/libs/navigation.c:
+ navigation: Mouse scroll events support
+ This patch introduces a new API to send and parse mouse scroll events. Mouse
+ event coordinates are sent relative to the display space of the related output
+ area. This is usually the size in pixels of the window associated with the
+ element implementing the GstNavigation interface.
+
+2020-03-18 15:38:25 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/audio/gstaudiodecoder.c:
+ * gst-libs/gst/audio/gstaudioencoder.c:
+ audio: annotate @buf in finish_frame methods
+
+2020-02-27 17:52:20 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ * gst-libs/gst/video/video-info.c:
+ video: add support for P012 format
+ P012 is a semi-planar 4:2:0 format, 2bytes per component with the value
+ stored in the 12 most significant bits
+
+2020-03-12 13:32:23 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/volume/gstvolume.h:
+ volume: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 13:31:22 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/videotestsrc/gstvideotestsrc.h:
+ videotestsrc: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 13:29:22 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/videoscale/gstvideoscale.h:
+ videoscale: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 13:27:40 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/videorate/gstvideorate.h:
+ videorate: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 13:25:47 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/videoconvert/gstvideoconvert.c:
+ * gst/videoconvert/gstvideoconvert.h:
+ videoconvert: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 13:23:36 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/subparse/gstssaparse.h:
+ * gst/subparse/gstsubparse.h:
+ subparse: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 13:20:51 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/rawparse/gstrawaudioparse.h:
+ * gst/rawparse/gstrawbaseparse.h:
+ * gst/rawparse/gstrawvideoparse.h:
+ * gst/rawparse/gstunalignedaudioparse.c:
+ * gst/rawparse/gstunalignedaudioparse.h:
+ * gst/rawparse/gstunalignedvideoparse.c:
+ * gst/rawparse/gstunalignedvideoparse.h:
+ rawparse: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 13:20:31 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/overlaycomposition/gstoverlaycomposition.h:
+ overlaycomposition: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 08:02:02 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/gio/gstgiobasesink.h:
+ * gst/gio/gstgiobasesrc.h:
+ * gst/gio/gstgiosink.h:
+ * gst/gio/gstgiosrc.h:
+ * gst/gio/gstgiostreamsink.h:
+ * gst/gio/gstgiostreamsrc.h:
+ gio: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 07:55:52 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/encoding/gstsmartencoder.h:
+ * gst/encoding/gststreamcombiner.h:
+ * gst/encoding/gststreamcombinerpad.h:
+ * gst/encoding/gststreamsplitter.h:
+ encoding: Use G_DECLARE_FINAL_TYPE
+ Note that we didn't do it for encodebin, as it has a class struct. We
+ _could_ techincally use `G_DECLARE_DERIVABLE_TYPE()` for that one, but
+ that would mean also using a private struct, which is even more work for
+ no gain.
+
+2020-03-12 07:51:24 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/adder/gstadder.h:
+ adder: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 07:49:45 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/audioconvert/gstaudioconvert.c:
+ * gst/audioconvert/gstaudioconvert.h:
+ * gst/audioconvert/plugin.c:
+ * gst/audioconvert/plugin.h:
+ audioconvert: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 07:46:47 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/audiomixer/gstaudiointerleave.h:
+ * gst/audiomixer/gstaudiomixer.h:
+ audiomixer: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 07:44:28 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/audiorate/gstaudiorate.h:
+ audiorate: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 07:42:52 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/audioresample/gstaudioresample.h:
+ audioresample: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 07:41:16 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/audiotestsrc/gstaudiotestsrc.h:
+ audiotestsrc: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 07:39:09 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst/compositor/compositor.h:
+ compositor: Use G_DECLARE_FINAL_TYPE
+
+2020-03-14 14:42:12 +0100 Niels De Graef <nielsdegraef@gmail.com>
+
+ * gst-libs/gst/audio/gstaudioaggregator.h:
+ * gst-libs/gst/video/gstvideoaggregator.h:
+ *aggregator: Add g_autoptr support for *ConvertPad
+
+2020-03-09 15:26:42 +0100 Tobias Ronge <tobiasr@axis.com>
+
+ * gst-libs/gst/rtp/gstrtpbasepayload.c:
+ gstrtpbasepayloader: Add property for scaling RTP timestamp
+ This patch introduces a property which, if set to FALSE, prevents RTP
+ basepayloader from scaling the RTP time when a segment's rate is not
+ equal to 1.0. The specification is ambiguous on this subject and some
+ clients expect the timestamps not to be scaled.
+
+2020-03-16 15:32:47 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/video/gstvideometa.c:
+ * gst-libs/gst/video/gstvideometa.h:
+ videometa: constify tc argument to add_video_time_meta()
+ We don't modify the argument.
+
+2019-12-16 19:49:09 +0100 Peter Seiderer <ps.report@gmx.net>
+
+ * gst-libs/gst/gl/meson.build:
+ * meson_options.txt:
+ meson: add window system egl
+
+2020-03-12 13:44:10 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ rtsp: remove documentation link on GTimeVal
+ Looks like it's been removed from glib.devhelp2 on Fedora 31.
+ Fix #508
+
+2020-03-05 12:29:49 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
+ * gst-libs/gst/gl/wayland/wayland_event_source.c:
+ * gst-libs/gst/gl/wayland/wayland_event_source.h:
+ gl/wayland: use wayland's roundtrip_queue()
+ There's no need to roll our own anymore
+
+2020-03-11 01:01:34 +0100 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst/subparse/gstsubparse.c:
+ subparse: accept WebVTT timestamps without an hour component
+ https://www.w3.org/TR/webvtt1/#webvtt-timestamp
+ mm:ss,000 is a valid WebVTT timestamp
+
+2020-03-09 20:16:47 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/compositor/blend.c:
+ compositor: Create a square checkerboard for UYVY/YUY2/YVYU too
+ Previously the "squares" were twice as wide.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/732
+
+2020-03-09 20:12:12 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/compositor/blend.c:
+ * gst/compositor/blend.h:
+ compositor: Define a separate checker fill function for BGRx/RGBx than for xBGR/xRGB
+ Otherwise we'll create a cyan or yellow checkerboard.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/736
+
+2020-03-03 15:19:21 +0200 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/tcp/gsttcpclientsrc.c:
+ * meson.build:
+ tcpclientsrc: Fix compilation on FreeBSD
+ The members of the tcp_info struct are prefixed with a double
+ underscore, as reported in
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/584#note_423487
+
+2020-03-06 00:03:49 +0100 Philipp Zabel <philipp.zabel@gmail.com>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: dmabuf: only accept uploads to external-oes if supported by the context
+ This keeps the DirectDmabufExternal uploader from accepting buffers if
+ texture-target=external-oes is not supported by the GL context.
+
+2019-11-28 17:31:57 +0100 Edward Hervey <edward@centricular.com>
+
+ * ext/gl/gstgloverlaycompositorelement.c:
+ gloverlay: Fix various issues in allocation handling
+ * A copy-paste error was getting the information from the wrong
+ query
+ * The 'allocation_meta' GstStructure was being leaked
+ * No check was done on whether the query existed (to try to set the
+ resulting allocation meta on)
+ CID: 1439872
+ CID: 1439873
+ CID: 1439874
+ CID: 1439875
+ CID: 1439876
+ CID: 1439877
+
+2020-03-03 17:07:24 +0100 Peter Seiderer <ps.report@gmx.net>
+
+ * tools/meson.build:
+ meson: static linkig of tools needs gmodule_dep
+ Add gmodule_dep (analog to gstreamer/tools/meson.build).
+ Fixes:
+ .../bin/ld: .../usr/lib/libgstreamer-1.0.a(gstplugin.c.o): in function `gst_plugin_register_func':
+ gstplugin.c:(.text+0x3bc): undefined reference to `g_module_make_resident'
+ .../bin/ld: .../usr/lib/libgstreamer-1.0.a(gstplugin.c.o): in function `_priv_gst_plugin_load_file_for_registry':
+ gstplugin.c:(.text+0x1228): undefined reference to `g_module_supported'
+ .../bin/ld: gstplugin.c:(.text+0x126c): undefined reference to `g_module_open'
+ .../bin/ld: gstplugin.c:(.text+0x1368): undefined reference to `g_module_symbol'
+ .../bin/ld: gstplugin.c:(.text+0x1494): undefined reference to `g_module_supported'
+ .../bin/ld: gstplugin.c:(.text+0x17f4): undefined reference to `g_module_close'
+ .../bin/ld: gstplugin.c:(.text+0x1a2c): undefined reference to `g_module_error'
+
+2020-03-03 11:53:53 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/meson.build:
+ * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c:
+ * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h:
+ * gst-libs/gst/gl/wayland/gstgldisplay_wayland_private.h:
+ * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
+ * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h:
+ * gst-libs/gst/gl/wayland/wayland_event_source.c:
+ * gst-libs/gst/gl/wayland/wayland_event_source.h:
+ gl/wayland: use a proxy wrapper for the wl_display
+ This allows us to remove races when setting the wl_queue on wayland
+ objects with wl_proxy_set_queue() as each created object is created with
+ the queue already set.
+ We can also move all our initilization code into the window as we
+ can retrieve all wayland objects from each window instance. This
+ removes a possible race when integrating with external API's as we would
+ always attempt to immediately retrieve a small set of wayland objects.
+ That is no longer the case with the objects from each window instance.
+
+2020-03-03 11:43:48 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglfilter.c:
+ glfilter: use gst_object_unref/ref functions
+ Allows better visibility into ref/unref points with the leaks tracer
+
+2020-03-03 11:42:11 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
+ gl/wayland: fix xdg shell close notification
+ Don't segfault by not calling the appropriate callback that destroys
+ resources in the correct order.
+
+2020-02-12 12:44:54 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglstereomix.c:
+ glstereomix: support gl display changes
+
+2020-02-05 12:26:54 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglcolorconvertelement.c:
+ * gst-libs/gst/gl/gstglbasefilter.c:
+ * gst-libs/gst/gl/gstglbasefilter.h:
+ * tests/check/elements/glfilter.c:
+ * tests/check/meson.build:
+ glbasefilter: add support for changing the display
+ Each element will remove its usage of the old display and context and
+ try to retrieve a new GL context.
+
+2020-02-04 14:19:21 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglstereosplit.c:
+ * ext/gl/gstglstereosplit.h:
+ glstereosplit: support gl display changes
+
+2020-02-04 14:06:05 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglbasesrc.c:
+ glbasesrc: add support for changing display's
+
+2020-02-04 14:04:21 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstgldisplay.c:
+ * gst-libs/gst/gl/gstgldisplay.h:
+ gldisplay: add support removing a context from the internal list
+
+2020-02-04 13:58:06 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglbasemixer.c:
+ * ext/gl/gstglbasemixer.h:
+ * ext/gl/gstglmixer.c:
+ * ext/gl/gstglvideomixer.c:
+ gl/mixer: support GstGLDisplay changes
+
+2020-02-18 13:46:08 +0100 Philipp Zabel <p.zabel@pengutronix.de>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: dmabuf: add DirectDmabufExternal uploader
+ Automatic negotiation of texture-target=external-oes does not work
+ without separating the external-oes support out of the DirectDmabuf
+ uploader into a separate DirectDmabufExternal uploader.
+
+2020-02-24 16:38:56 +0100 Philipp Zabel <p.zabel@pengutronix.de>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: fix transform_caps NULL pointer dereference
+ gst_gl_upload_transform_caps() is missing a NULL pointer check in case
+ the current upload method's transform_caps returns a NULL pointer. In
+ the following loop over all upload methods, NULL pointer return values
+ are already handled correctly.
+
+2020-02-12 18:25:54 +0100 Philipp Zabel <p.zabel@pengutronix.de>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: dmabuf: support direct upload into external-oes textures
+ Some drivers support directly importing DMA buffers in some formats into
+ external-oes textures only, for example because the hardware contains
+ native YUV samplers.
+ Note that in these cases colorimetry can only be passed as hints and
+ there is no feedback whether the driver supports the required YUV
+ encoding matrix and quantization range.
+
+2020-02-13 10:28:40 +0100 Philipp Zabel <p.zabel@pengutronix.de>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ * gst-libs/gst/gl/egl/gsteglimage.h:
+ * gst-libs/gst/gl/egl/gstglmemoryegl.c:
+ gl/egl: support direct dmabuf import with external-oes only formats
+ Allow creating EGL images from DMA buffers in formats that the driver
+ only supports for the external-oes texture target.
+ Pass the intended texture target to gst_egl_image_from_dmabuf_direct so
+ that _gst_egl_image_check_dmabuf_direct can decide whether to create an
+ EGL image for a format that can only be targeted at external-oes
+ textures by the driver. Allow creating GstGLMemoryEGL objects from these
+ DMA buffers.
+
+2020-03-02 19:35:16 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglquery.c:
+ glquery: fix a possible unintialized value
+ A GL driver may not fill the resulting value so initialize it to 0
+ ourselves.
+
+2020-02-26 14:33:16 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/x11/gstglcontext_glx.c:
+ gl/context/glx: dump GLXFBConfig information to debug logs
+
+2020-02-24 16:44:12 +0200 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/tcp/gsttcpclientsrc.c:
+ * gst/tcp/gsttcpclientsrc.h:
+ * meson.build:
+ tcpclientsrc: Expose connection stats as property
+ Unfortunately the OS takes care of bad connections for us, so we can't
+ get the stats in a platform-independent way. Count total bytes received
+ as well, platform-independently.
+
+2020-02-10 10:29:25 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-info.h:
+ video-info: fix typo in doc
+
+2020-02-07 11:18:24 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-frame.h:
+ * tests/check/libs/video.c:
+ video: fix GST_VIDEO_FRAME_IS_BOTTOM_FIELD()
+ GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD is a subset of
+ GST_VIDEO_FRAME_FLAG_TOP_FIELD so needs to be checked accordingly.
+ Fix #726
+
+2020-02-06 14:35:47 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-frame.h:
+ * tests/check/libs/video.c:
+ video: add macros checking for GST_VIDEO_BUFFER_FLAG_TOP/BOTTOM_FIELD flags
+ The GST_VIDEO_BUFFER_FLAG_TOP_FIELD flag is a superset of
+ GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD as they are defined using other
+ flags. As a result we can't use GST_BUFFER_FLAG_IS_SET() to check for
+ those flags.
+
+2020-02-06 09:52:31 +0100 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: protect the use of num_subframes
+ change stream lock location to protect the use of
+ frame->abidata.ABI.num_subframes
+
+2020-02-05 02:58:14 -0800 Devarsh Thakkar <devarsh.thakkar@xilinx.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: Release stream lock in finish_subframe before pad_push
+ Derived from 780d635dadc0723e39a8ba90cfe0903a2de346fd for
+ https://bugzilla.gnome.org/show_bug.cgi?id=715192
+ which was for finish_frame.
+
+2020-02-18 20:36:38 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/meson.build:
+ meson: gl: Update to support when egl and win32 window system are explicitly requested
+
+2020-02-18 20:09:19 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/win32/gstglwindow_win32.c:
+ glwindow/win32: Accept both win32 and egl display
+ EGL would be the case where we use ANGLE.
+
+2020-02-18 19:40:34 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+ * gst-libs/gst/gl/meson.build:
+ glcontext: egl: Fix build with win32 window system
+
+2020-02-18 19:33:18 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/gstglcontext.c:
+ * gst-libs/gst/gl/meson.build:
+ * gst-libs/gst/gl/wgl/gstglcontext_wgl.c:
+ * gst-libs/gst/gl/wgl/gstglcontext_wgl.h:
+ gl: Decouple win32 window and wgl context
+ With ANGLE, win32 window can be used with gles and egl
+
+2020-02-18 13:03:00 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+ * gst-libs/gst/gl/egl/gstgldisplay_egl.c:
+ glcontext/egl: Fix build with upstream ANGLE
+ ANGLE_surface_d3d_render_to_back_buffer extension is only available
+ with Microsoft fork of ANGLE. Note that Microsoft's ANGLE repository
+ has been deprecated.
+
+2020-02-13 21:33:11 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/win32/gstglwindow_win32.c:
+ gl/window/win32: Handle mouse and key events
+ This is at least useful for the gst-play-1.0 use case.
+
+2020-02-15 01:19:29 +0800 He Junyan <junyan.he@hotmail.com>
+
+ * gst-libs/gst/allocators/gstdmabuf.c:
+ libs: dmabuf: init the GST_CAT_DEFAULT in type define.
+ To avoid `gst_debug_log_valist: assertion 'category != NULL' failed`
+ if we do not call gst_dmabuf_allocator_new
+
+2020-02-12 13:11:43 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/app/gstappsink.c:
+ * gst-libs/gst/app/gstappsrc.c:
+ appsrc/appsink: Make setting/replacing callbacks thread-safe
+ Previously we would simply use them without any locking at all, while
+ using the object lock for setting them. Nothing prevented new callbacks
+ to be set in the meantime, potentially calling a callback with already
+ freed user_data.
+ To prevent this move the callbacks into a reference counted struct and
+ use the appsrc/appsink mutex to protect access to it, which is used in
+ all functions calling the callbacks already anyway.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/729
+
+2020-02-14 09:40:59 +0000 Håvard Graff <havard.graff@gmail.com>
+
+ * gst-libs/gst/rtp/gstrtpbasepayload.c:
+ * tests/check/libs/rtpbasepayload.c:
+ rtpbasepayload: add property for embedding twcc sequencenumbers
+ By setting the extension-ID for TWCC (Transport Wide Congestion Control),
+ the payloader will embed sequencenumbers as a RTP header-extension
+ according to https://tools.ietf.org/html/draft-holmer-rmcat-transport-wide-cc-extensions-01#section-2
+ The negotiation of this being enabled with downstream elements
+ is done with caps reflecting the way this is communicated using SDP.
+
+2020-02-13 10:41:29 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/win32/gstglwindow_win32.c:
+ gl/window/win32: implement get_window_handle()
+ Some other frameworks need the HWND to retrieve information from.
+
+2020-02-10 17:39:57 +0100 Havard Graff <havard@pexip.com>
+
+ * tests/check/libs/rtpbasepayload.c:
+ rtpbasepayload: fix test warnings
+ Compiling with MSVC and Clang.
+
+2020-01-23 16:11:28 +0100 Kristofer Björkström <kristofb@axis.com>
+
+ * gst-libs/gst/rtp/gstrtpbasepayload.c:
+ * tests/check/libs/rtpbasepayload.c:
+ rtpbasepayload: timestamp bug, if rate control=no
+ With commit "basepayload: Expose onvif-no-rate-control property" the rtp
+ timestamp changed behaviour when rate control is disabled.
+ When disabling rate control, we must take care of the stream time to
+ avoid the timestamps to begin from zero again.
+
+2020-02-10 17:15:13 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ discoverer: Start discovering next URI from right thread
+ When using the cache, we were not using the right GMainContext to setup
+ next URI to discovery, fix that.
+
+2020-02-04 14:14:38 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ glcolorconvert: error out if memory context is different than ours
+
+2020-02-04 14:06:36 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstgltestsrc.c:
+ gltestsrc: NULL out the functions used
+ Fixes segfault when the display changes
+
+2020-02-04 14:01:47 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglviewconvert.c:
+ glviewconvert: fix reset context for GL context change
+ We need to remove GL resources from the old context instead of the new
+ GL context. The two GL context may not even be shared.
+
+2020-02-04 14:00:48 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglviewconvert.c:
+ glviewconvert: fix a use-after-free with allocation params
+ _free(params) followed by a params->align is a bad idea :)
+
+2020-02-04 13:59:37 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglviewconvert.c:
+ glviewconvert: also remove GL buffers on a reset
+ Fixes a possible memory leak on renegotiation
+
+2019-12-12 18:59:10 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglbasesrc.c:
+ gl/basesrc: call gl_stop when shutting down
+ Fixes multiple leaks
+
+2020-01-28 18:17:47 +0100 Havard Graff <havard@pexip.com>
+
+ * gst-libs/gst/rtp/gstrtpbuffer.c:
+ * gst-libs/gst/rtp/gstrtpbuffer.h:
+ rtpbuffer: add gst_rtp_buffer_get_extension_onebyte_header_from_bytes
+ So that one can parse the GBytes returned by gst_rtp_buffer_get_extension_bytes
+
+2020-01-30 19:00:07 +0100 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ * tests/check/elements/compositor.c:
+ videoaggregator: handle gap buffers properly
+ This simply implies not trying to "prepare" those buffers,
+ as mapping an empty buffer to a video frame does not make
+ much sense.
+ This also adds a simple test in compositor that performs
+ some trivial checking of the handling of gap events, the test
+ was not failing before, but an error was logged, this is
+ no longer the case.
+ Fixes #717
+
+2020-01-28 22:07:44 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ videoaggregator: Don't configure NULL chroma-site/colorimetry
+ If there's no known value in the best caps then the functions to convert
+ them to strings will return NULL. Having the fields not in the caps is
+ not a problem, having them with a NULL value however will cause
+ negotiation failures.
+
+2020-01-17 14:26:29 +0100 Dimitrios Katsaros <patcherwork@gmail.com>
+
+ * gst/playback/gstdecodebin3.c:
+ decodebin3: Reset main group id on PAUSED->READY state change
+ The main_input stream-id would not get reset when going to READY state.
+ This would cause warnings when trying to reuse the same decodebin3, since
+ you would get a new STREAM_START event with a new stream-id, which would
+ collide with the now stale stream-id
+
+2020-01-17 14:16:23 +0100 Dimitrios Katsaros <patcherwork@gmail.com>
+
+ * gst/playback/gstdecodebin3.c:
+ decodebin3: Reduced logging level of messages
+ The logging is set to warning for a drain event, which is part of the
+ normal functionality of the parsebin.
+
+2020-01-23 18:03:13 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/pango/gstclockoverlay.c:
+ clockoverlay: fix bogus time display caused by previous commit
+ Fixes regression introduced by "clean-up" done as part of commit 98ebcb4.
+ dummy must live as long as use the return value of localtime_r() since
+ that's just a pointer to it, and by putting it inside the block we made
+ dummy go out of scope right after localtime_r() returned, which messed
+ up the time values since when we poked at the struct the contents might
+ already have been overwritten.
+ Fixes #722
+
+2020-01-17 11:22:48 +0100 Dimitrios Katsaros <patcherwork@gmail.com>
+
+ * gst/playback/gsturidecodebin3.c:
+ uridecodebin3: Fixed defauts not being set on initialization
+ The default values were not being set on element initialization. This
+ was a problem for buffer_duration and buffer_size since they would be
+ zero initialized, rather then being set to -1. This would cause the
+ underlaying queue2 element to have no limits and depending on the
+ streamed file, could cause queue2 to allocate massive amounts of memory.
+
+2020-01-13 18:32:59 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ encodebin: Add missing 'Since' marker
+
+2020-01-13 09:06:02 +0000 Philippe Normand <philn@igalia.com>
+
+ * ext/ogg/gstoggstream.c:
+ oggstream: Workaround for broken PAR in VP8 BOS
+ Similarily to the Theora mapping, process 0:N, N:0 and 0:0 pixel aspect ratios
+ as 1:1.
+ Fixes #719
+
+2020-01-11 19:26:24 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * tests/check/libs/rtpbasedepayload.c:
+ tests: rtpbasedepayload: Test flow return whith push/push_list
+ This validate that the base class properly save and return the flow
+ return value received when gst_rtp_base_depay_push/push_list() helper is
+ being used.
+
+2019-11-21 21:04:14 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+ rtpbasepayload: Save and forward the push flow return
+ Save push/push_list helper flow return and in case of failure, return it
+ in the process function. This allow forwarding downstream flow return
+ even if the subclass is using the push/push_list helper.
+
+2019-11-03 15:52:28 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * gst/playback/gstdecodebin3.c:
+ * gst/playback/gstplaybin3.c:
+ * gst/playback/gsturidecodebin3.c:
+ playbin3: handle GST_PLAY_FLAG_FORCE_SW_DECODERS
+ In decodebin3 and uridecodebin3 the `force-sw-decoders` boolean property is
+ added. In uridecodebin3 it is only a proxy property which will forward
+ the value to decodebin3.
+ When decodebin3 has `force-sw-decoders` disabled, it will filter out in its
+ decoder and decodable factories those elements within the 'Hardware'
+ class, at reconfiguring output stream.
+ playbin3 adds by default GST_PLAY_FLAG_FORCE_SW_DECODERS, and sets
+ `force-sw-decoders` property accordingly to its internal uridecodebin, also
+ filters out the 'Hardware' class decoder elements when caps
+ negotiation.
+
+2019-11-03 15:37:44 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * gst/playback/gstdecodebin2.c:
+ * gst/playback/gstplaybin2.c:
+ * gst/playback/gsturidecodebin.c:
+ playbin2: handle GST_PLAY_FLAG_FORCE_SW_DECODERS
+ Added `force-sw-decoders` boolean property in decodebin2 and
+ uridecodebin. By default the property is %FALSE and it bypass the new
+ code. Otherwise the factory list is filtered removing decoders
+ within 'Hardware' class.
+ uridecodebin sets the `force-sw-decoders` property in its internal
+ decodebin, and also filters out Hardware class in the
+ autoplug-factories default signal handler.
+ playbin2 adds by default GST_PLAY_FLAG_FORCE_SW_DECODERS it its flags
+ property, and depending on it playbin2 sets the `force-sw-decoders`
+ property on its internal uridecodebin, also filters out the Hardware
+ class decoding decoders at the autoplug-factories signal handler.
+
+2019-11-03 15:16:04 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * gst/playback/gstplay-enum.c:
+ * gst/playback/gstplay-enum.h:
+ playback: add GST_PLAY_FLAG_FORCE_SW_DECODERS enum
+ This flag would be common either for playbin2 and playbin3.
+
+2020-01-08 17:28:46 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/gl/meson.build:
+ * subprojects/graphene.wrap:
+ meson: add graphene subproject
+ So we can build all the OpenGL elements.
+
+2020-01-08 08:29:18 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/compositor/blend.c:
+ compositor: memcpy() lines directly for alpha formats with SOURCE operator and alpha=1.0
+
+2020-01-08 02:34:17 +0000 Randy Li <ayaka@soulik.info>
+
+ * gst/rawparse/gstrawvideoparse.c:
+ * gst/rawparse/gstrawvideoparse.h:
+ rawvideoparse: allow setting the colorimetry
+ You can neither guess nor parse the colorimetry from the
+ input stream.
+ Signed-off-by: Randy Li <ayaka@soulik.info>
+
+2020-01-07 20:01:14 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/compositor/compositor.c:
+ compositor: Alpha inputs with the SOURCE operator can be considered opaque
+ We don't have to look at each pixel's alpha component because we will
+ directly write it over the background.
+
+2019-12-30 23:08:05 -0800 Ryan Huang <NPN@users.noreply.github.com>
+
+ * gst-libs/gst/video/video-format.h:
+ Fix link to raw video format design document
+
+2019-08-11 11:25:50 +0100 Philippe Normand <philn@igalia.com>
+
+ * gst/playback/gstplaybin3.c:
+ playbin3: Propagate sink context
+ When the playsink's sink is activated its state is set to READY but it remains
+ unlinked. So, in order for decodebin3 to potentially reuse the context later on,
+ the whole playbin3 needs to have it internally stored.
+
+2019-12-31 15:49:05 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/playback/gstplaybin2.c:
+ playbin: Propagate sink context
+ Any contexts created by sink during activation need to be propagated
+ to whole elements of playbin.
+
+2019-12-06 08:47:14 -0500 Aaron Boxer <aaron.boxer@collabora.com>
+
+ * gst-libs/gst/rtsp/gstrtspurl.c:
+ * gst-libs/gst/rtsp/gstrtspurl.h:
+ * tests/check/libs/rtsp.c:
+ rtspurl: add API method to create request uri combined with control url
+ code logic very similar to gst_rtsp_url_get_request_uri ()
+
+2019-12-27 12:53:41 +0100 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ gstvideoaggregator: always update converter when needed
+ In prepare_frame, it is not enough for the target info
+ (conversion_info) to not have changed to decide not to update
+ the converter, as the vpad info may have changed as well.
+ Fixes #714
+
+2019-12-27 11:34:26 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/fft/_kiss_fft_guts_f32.h:
+ * gst-libs/gst/fft/_kiss_fft_guts_f64.h:
+ * gst-libs/gst/fft/_kiss_fft_guts_s16.h:
+ * gst-libs/gst/fft/_kiss_fft_guts_s32.h:
+ * gst-libs/gst/fft/kiss_fft_f32.c:
+ * gst-libs/gst/fft/kiss_fft_f32.h:
+ * gst-libs/gst/fft/kiss_fft_f64.c:
+ * gst-libs/gst/fft/kiss_fft_f64.h:
+ * gst-libs/gst/fft/kiss_fft_s16.c:
+ * gst-libs/gst/fft/kiss_fft_s16.h:
+ * gst-libs/gst/fft/kiss_fft_s32.c:
+ * gst-libs/gst/fft/kiss_fft_s32.h:
+ * gst-libs/gst/fft/kiss_fftr_f32.c:
+ * gst-libs/gst/fft/kiss_fftr_f32.h:
+ * gst-libs/gst/fft/kiss_fftr_f64.c:
+ * gst-libs/gst/fft/kiss_fftr_f64.h:
+ * gst-libs/gst/fft/kiss_fftr_s16.c:
+ * gst-libs/gst/fft/kiss_fftr_s16.h:
+ * gst-libs/gst/fft/kiss_fftr_s32.c:
+ * gst-libs/gst/fft/kiss_fftr_s32.h:
+ * gst-libs/gst/fft/kiss_version:
+ fft: Update our kiss fft version
+ This fixes thread-safety issues and various other minor issues. Our
+ previous version was about 13 years old.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/715
+
+2019-12-20 12:27:57 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/win32/gstglwindow_win32.c:
+ glwindow/win32: Don't post any WinProc message to parent window
+ Posting any message to parent seems to be pointless. That might break
+ parent window.
+ Regardless of the posting, parent window can catch mouse event
+ and also any keyboard events will be handled by parent window by default.
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/634
+
+2019-12-19 14:48:43 -0500 Aaron Boxer <aaron.boxer@collabora.com>
+
+ * gst/playback/gstplaybin2.c:
+ * gst/playback/gstplaybin3.c:
+ * gst/playback/gstplaysink.c:
+ * gst/playback/gstplaysink.h:
+ playbin: remove deprecated raw audio and raw video sink flags
+ These flags were deprecated in 2011 with commit
+ 105da803ade859fb299ed3c5265d6acdd168ca8f
+ Removing these flags will simplify the logic in playbin.
+
+2019-09-06 18:07:48 +0200 Stéphane Cerveau <scerveau@collabora.com>
+
+ * tests/check/libs/videoencoder.c:
+ tests: add video encoder test with subframes API
+
+2019-09-12 12:07:08 +0200 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: send new headers in finish_frame
+ If headers have been set by subclass, this headers should be sent
+ for a first time or on demand with a key-unit
+
+2019-09-25 10:45:28 +0200 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * gst-libs/gst/video/video-frame.h:
+ videoencoder: Use video marker flag to signal end of frame
+ This marker is optional, its name refer to RTP marker bit. This mark can
+ be use to reduce latency in various use cases. With the split between
+ finish_frame() and finish_subframe() we will now be able to identitfy
+ the last subframe with no latency.
+ In order to detail the use of GST_BUFFER_FLAG_MARKER in a video
+ use case, the flag GST_VIDEO_BUFFER_FLAG_MARKER has been introduced
+ with a proper documentation clarifying marker's role.
+
+2018-08-31 12:09:57 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * gst-libs/gst/video/gstvideoencoder.h:
+ * gst-libs/gst/video/gstvideoutils.h:
+ videoencoder: add API to push subframes
+ Introduce a new API so encoders can split the encoding in subframes.
+ This can be useful to reduce the overall latency as we no longer need to
+ wait for the full frame to be encoded to start decoding or sending it.
+
+2018-08-31 10:55:30 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: factor out logic from gst_video_encoder_finish_frame()
+ No semantic change, I'm going to reuse all those functions in a new
+ finish_slice() methods.
+
+2019-12-20 13:35:53 +0100 Jonas Holmberg <jonashg@axis.com>
+
+ * gst-libs/gst/audio/gstaudioencoder.c:
+ audioencoder: fix segment event leak
+ Segment event was leaked if format != _TIME.
+
+2019-12-19 17:52:12 -0500 Olivier Crête <olivier.crete@collabora.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * gst-libs/gst/video/gstvideoencoder.h:
+ * gst-libs/gst/video/gstvideoutils.h:
+ * gst-libs/gst/video/video-frame.h:
+ * tests/check/libs/videoencoder.c:
+ Revert "videoencoder: factor out logic from gst_video_encoder_finish_frame()"
+ This reverts commit b1ec312b8ed39ffaeeca1f5a8a014acd4b74d5f9.
+
+2019-12-19 21:59:10 +0000 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * gst-libs/gst/video/gstvideoencoder.h:
+ * gst-libs/gst/video/gstvideoutils.h:
+ * gst-libs/gst/video/video-frame.h:
+ * tests/check/libs/videoencoder.c:
+ videoencoder: factor out logic from gst_video_encoder_finish_frame()
+ No semantic change, I'm going to reuse all those functions in a new
+ finish_slice() methods.
+
+2019-12-10 18:03:05 -0500 Olivier Crête <olivier.crete@collabora.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ * gst-libs/gst/rtsp/gstrtspconnection.h:
+ * tests/check/libs/rtspconnection.c:
+ rtspconnection: Add functions without GTimeVal deprecate existing
+ GTimeVal is now deprecated in GLib, so let's deprecate it here too
+
+2019-12-10 17:09:57 -0500 Olivier Crête <olivier.crete@collabora.com>
+
+ * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp:
+ * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp:
+ tests: Remove deprecated GTimeVal
+ GTimeVal won't work past 2038
+
+2019-12-18 16:03:54 +0100 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst/tcp/gsttcpclientsink.c:
+ * gst/tcp/gsttcpclientsrc.c:
+ * gst/tcp/gsttcpserversink.c:
+ * gst/tcp/gsttcpserversrc.c:
+ * sys/xvimage/xvimagesink.c:
+ base: use of g_value_dup_string
+ Use helper method to get string from GValue.
+
+2019-12-11 10:07:12 +0100 Stéphane Cerveau <scerveau@collabora.com>
+
+ * ext/alsa/gstalsamidisrc.c:
+ * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c:
+ * gst-libs/gst/gl/gstglshader.c:
+ remove various useless linefeed in logs
+
+2019-12-08 01:17:31 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/check/meson.build:
+ tests: actually define HAVE_VALGRIND
+ This stuff should probably be done differently, but
+ for now just define it like we used to.
+
+2019-12-08 00:52:17 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * sys/xvimage/meson.build:
+ xvimage: remove unused HAVE_XVIDEO define
+
+2019-12-08 00:50:03 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson.build:
+ * tests/examples/seek/jsseek.c:
+ test: fix up HAVE_X11 / HAVE_X defines
+ Only HAVE_X was defined, while both HAVE_X11 and HAVE_X were used.
+
+2019-12-08 00:00:37 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/typefind/meson.build:
+ * meson_options.txt:
+ typefindfunctions: build gio xdgmime typefinder again
+ And add gio-typefinder option to disable it. HAVE_GIO
+ was never set, at least not in the Meson build.
+
+2019-12-07 21:13:09 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/check/pipelines/simple-launch-lines.c:
+ tests: simple-launch-lines: remove use of unused HAVE_LIBVISUAL define
+ This is not set anywhere, and it's pretty clear the pipeline in
+ question has not been tested in a long time. Disable test with
+ a FIXME, test needs to be rewritten to not use real output devices.
+
+2019-12-07 21:02:53 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/check/pipelines/gl-launch-lines.c:
+ tests: gl-launch-lines: check for features at runtime
+ Instead of using HAVE_PNG and HAVE_JPEG defines.
+
+2019-12-07 20:47:01 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/tcp/gstmultifdsink.c:
+ * tests/check/elements/multifdsink.c:
+ * tests/check/elements/multisocketsink.c:
+ multifdsink: remove defunct include guarded by unused HAVE_FIONREAD_IN_SYS_FILIO
+ The configure check for this went away in 2012 in commit cd3eee.
+
+2019-12-07 14:36:36 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/theora/meson.build:
+ * tests/check/pipelines/oggmux.c:
+ tests: oggmux: check vorbisenc + theoraenc availability at runtime
+ HAVE_VORBIS was used but never set, so only 3 out of 7 tests
+ actually ran. Drop now-unused HAVE_THEORA define.
+
+2019-12-07 14:22:06 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson.build:
+ * tests/icles/playback/test4.c:
+ * tests/icles/playback/test5.c:
+ * tests/icles/playback/test6.c:
+ * tests/icles/playback/test7.c:
+ tests: playback: include stdlib.h unconditionally
+ Like we do elsewhere. And drop the check for the header.
+ Also remove some superfluous unistd.h includes.
+
+2019-12-07 14:12:04 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/vorbis/gstvorbisdec.c:
+ * ext/vorbis/meson.build:
+ vorbis: drop unneeded check for vorbis_synthesis_restart()
+ This was added in 1.0.1 more than 16 years ago, I think we
+ can safely assume this is always present now. Also in tremor.
+ While at it, bump vorbis requirement to 1.3.1 from 2010.
+
+2019-12-07 14:04:00 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/pango/gstclockoverlay.c:
+ * meson.build:
+ pango: check if localtime_r is available
+ HAVE_LOCALTIME_R was used, but never defined.
+
+2019-12-08 18:13:55 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/examples/overlaycomposition/overlaycomposition.c:
+ examples: overlaycomposition: Fix implicit declaration warning
+ overlaycomposition.c:276:5: warning: implicit declaration of function 'exit' [-Wimplicit-function-declaration]
+ overlaycomposition.c(263): warning C4090: 'initializing': different 'const' qualifiers
+
+2019-12-08 18:12:00 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/examples/overlay/win32-videooverlay.c:
+ examples: win32-videooverlay: Remove unused variable
+ win32-videooverlay.c:34:20: warning: 'msg_io_channel' defined but not used [-Wunused-variable]
+
+2019-12-03 23:35:23 +0000 Stéphane Cerveau <scerveau@collabora.com>
+
+ * gst-libs/gst/pbutils/codec-utils.c:
+ * tests/check/libs/pbutils.c:
+ codec-utils: add h264 constrained and progressive profiles
+ Those profiles have been added in the version 2012-01
+ and 2011-06 of the AVC spec.
+ Aligned code with https://bugzilla.gnome.org/show_bug.cgi?id=794127
+
+2019-12-03 14:16:06 +1100 Matthew Waters <matthew@centricular.com>
+
+ * meson.build:
+ build: use -fvisibility=hidden for objc code
+
+2019-12-03 14:15:58 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h:
+ gl/macos+ios: privatise _invoke_on_main()
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1132
+
+2019-11-27 20:42:34 +0200 Mart Raudsepp <mart@leio.tech>
+
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ videoaggregator: don't let a repeat-after-eos pad prevent EOS
+ .. if there are pads present that are not repeating after EOS.
+ Fixes #664
+
+2019-11-27 15:54:57 +0200 Mart Raudsepp <mart@leio.tech>
+
+ * tests/check/elements/compositor.c:
+ tests: expand compositor repeat-after-eos tests for multiple pads
+ If there are any pads with repeat-after-eos NOT set, then the compositor
+ should EOS after all of those pads have gone EOS, but not before all
+ repeat-after-eos pads have as well.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/664
+
+2019-06-04 10:05:54 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * tools/gst-device-monitor.c:
+ tools: Add support for CameraSource pipeline description
+
+2019-11-08 15:13:59 +0100 Edward Hervey <edward@centricular.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ video-converter: Fix RGB-XYZ-RGB conversion
+ The matrices were in the wrong order.
+ Instead of the conversion matrix being
+ _ XYZ_TO_RGB_output * RGB_TO_XYZ_input * input_RGB
+ It was
+ _ RGB_TO_XYZ_input * XYZ_TO_RGB_output * input_RGB
+
+2019-05-21 21:59:23 +0900 Akinobu Mita <akinobu.mita@gmail.com>
+
+ * sys/ximage/meson.build:
+ * sys/ximage/ximagesink.c:
+ * sys/ximage/ximagesink.h:
+ * sys/xvimage/meson.build:
+ * sys/xvimage/xvcontext.c:
+ * sys/xvimage/xvcontext.h:
+ * sys/xvimage/xvimagesink.c:
+ ximagesink, xvimagesink: don't use XkbKeycodeToKeysym if Xkb is unavailable
+ ximagesink and xvimagesink use XkbKeycodeToKeysym when the key event is
+ received. However, this function returns NoSymbol if Xkb is unavailable.
+ This causes all key events to be translated to "unknown" key when running
+ ximagsink under some VNC.
+ Fix it by using XKeycodeToKeysym if Xkb is unavailable.
+
+2019-09-27 20:08:39 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tools/gst-play-kb.c:
+ gst-play: Handle KeyDown event instead of KeyUp on Win32 keyboard handler
+ To handle long press case, KeyDown input should be handled instead of KeyUp.
+ Note that OS will take care of the sensitivity of KeyDown event, so we can safely
+ assume one KeyDown as one input. That will not break user experience.
+
+2019-09-27 19:26:03 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tools/gst-play-kb.c:
+ gst-play: Remove timer GSource from Win32 keyboard handler
+ Use WaitForMultipleObjects to handle keyboard input only if pending
+ keyboard input exists.
+
+2019-11-13 19:37:29 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/examples/overlay/win32-videooverlay.c:
+ examples: win32-videooverlay: Add an option for testing reuse of external window
+ Adding "repeat" option to test a case where external window is reused.
+
+2019-11-07 22:00:03 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/audiorate/gstaudiorate.c:
+ audiorate: Update next_offset per rate change
+ To support runtime audio samplerate change, re-calculate next target offset
+ per caps. Calculating the next buffer offset using the previous
+ offset seems to be tricky and rounding error prone.
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/693
+
+2019-11-07 21:42:25 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/audiorate/gstaudiorate.c:
+ * gst/audiorate/gstaudiorate.h:
+ Revert "audiorate: accumulate offset by time diff"
+ This reverts commit 4fa850e3e6c039000fc7f648de238af6c2278469.
+ The commit would break an constant rate audio stream with gap.
+
+2019-11-08 17:28:44 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/xvimage/xvimagepool.c:
+ * sys/xvimage/xvimagepool.h:
+ xvimagepool: Update size, stride, and offset with allocated XvImage
+ Memory layout of XvImage might be different from that of GstVideoInfo.
+ If so, the image size, stride, and offset would be wrongly informed.
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/677
+
+2019-11-08 17:33:17 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/xvimage/xvimagepool.c:
+ xvimagepool: Fix confusing debug message for padding size
+
+2019-11-17 18:23:59 +0000 Ambareesh "Amby" Balaji <ambareeshbalaji@gmail.com>
+
+ * ext/opus/gstopusenc.c:
+ opusenc: Add low delay option
+ Fixes #681
+
+2019-08-26 15:03:48 +0200 Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+ * gst-libs/gst/audio/gstaudioringbuffer.c:
+ audioringbuffer: Reset reorder flag before check
+ This function might be revisited with different channel position mapping
+ while audio source goes into play so the reorder flag needs to be reset
+ before the checks happen.
+
+2019-11-15 18:06:13 +0900 Wonchul Lee <chul0812@gmail.com>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: Fix allocator leak
+ It fixes allocator leak in failure case
+
+2019-11-15 12:19:56 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/examples/overlaycomposition/overlaycomposition.c:
+ examples: overlaycomposition: Fix typo
+ Sorry for the noise. Default should be autovideosink
+
+2019-11-13 15:28:20 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-info.h:
+ video-info: improve GST_CAPS_FEATURE_FORMAT_INTERLACED documentation
+ Copied the description from gst-doc written by Tim.
+ Fix #606
+
+2019-11-12 12:17:44 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglwindow.c:
+ gl/window: marshall quit to the window thread
+ Fixes a possible deadlock where we're waiting for the window thread to
+ quit but it never does.
+
+2019-11-14 12:37:58 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/audio/audio-buffer.c:
+ audio-buffer: Don't fail to map buffers with zero samples
+ Instead initialize the map infos, etc to NULL like gst_buffer_map()
+ would be doing on a zero-sized buffer.
+ This fixes a crash in audioresample if the first output buffer would
+ contain zero samples.
+
+2019-11-12 21:15:38 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/examples/overlaycomposition/overlaycomposition.c:
+ examples: overlaycomposition: Add option for videosink element selection
+ It would be useful for testing overlaycomposition with specific videosink element.
+
+2019-11-13 17:31:29 +0900 Wonchul Lee <w.lee@lge.com>
+
+ * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+ glcontext/egl: Fix window leak
+ Fixed to do unref after use of window get by gst_gl_context_get_window()
+
+2019-11-10 20:05:59 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/gl/gstgldownloadelement.c:
+ * ext/gl/gstgldownloadelement.h:
+ gldownload: Fix renegotiation loop
+ When DMABuf was tried, we would renegotiate back and fourth between
+ DMABuf and system memory if the export failed. This would happen for
+ every single frame.
+ This patch introduces try_dmabuf_exports boolean, which is unset when
+ an export failed. This boolean is then put back to TRUE when upstream
+ pushes new caps, or downstream pushes a reconfigure event.
+
+2019-11-10 20:02:09 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/gl/gstgldownloadelement.c:
+ * ext/gl/gstgldownloadelement.h:
+ gldownload: Refactor download mode selection
+ This introduces an enum in order to cleanup how we select the
+ transfer mode. It also fixes the case where we callback to PBO but
+ we didn't execute the PBO. That was not causing any issue, just that
+ the processing latency would be delayed to the next element, which
+ can be confusing.
+
+2019-07-14 16:42:17 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ eglimage: Fix extension names in dmabuf import check
+ There was a typo in the extension name which resulted in the modifiers
+ to never be set when doing DMABuf import. That triggered the modifiers
+ lookup in Intel driver, which was in fact hiding bugs in the gldownload
+ to glupload path when doing DMABuf.
+ Note, this changes breaks pipeline the following pipeline on Intel and
+ some other drivers:
+ gltestsrc ! gldownload ! video/x-raw\(memory:DMABuf\) ! glimagsink
+ A fix for this was added to Mesa recently:
+ Related to https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1338
+ Fixes 5d0e191710
+
+2019-07-14 16:33:35 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/gl/gstgldownloadelement.c:
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ eglimage: Fix exported DMABuf size
+ All we know is the height and the stride, so make sure not to expose
+ the DMABuf larger then the size we know about.
+
+2018-04-25 13:09:05 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ eglimage: Fail exportation if a modififer is used
+ We don't support modififers and that would result in bad image being
+ displayed. Note that this was fixes recently in Mesa MR 1138, prior to
+ that, the reported modifier is always 0, which makes this change a
+ no-op.
+ Fixes #441
+ Related to https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1338
+
+2019-08-03 13:14:53 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/gl/gstgldownloadelement.c:
+ gldownload: Wait on sync meta if any
+ This is possibly not strictly needed when pixels are being downloaded to
+ CPU memory, but would cause issue when exporting DMABuf, as the data may
+ not be yet ready when the DMABuf reaches the consumer.
+
+2019-09-03 16:03:49 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/playback/gstplaybin2.c:
+ playbin: Handle error message with redirection indication
+ There are in the wild (mp4) streams that basically contain no tracks
+ but do have a redirect info[0], in which case, qtdemux won't be able
+ to expose any pad (there are no tracks) so can't post anything but
+ an error on the bus, as:
+ - it can't send EOS downstream, it has no pad,
+ - posting an EOS message will be useless as PAUSED state can't be
+ reached and there is no sink in the pipeline meaning GstBin will
+ simply ignore it
+ In that case, currently the application could try to handle that but it
+ is pretty complex as it will get the REDIRECT message on the bus at
+ which point it could set the URL but playbin will ignore it, as
+ it will only be for the next EOS, it thus need to set the pipeline to
+ NULL (READY won't do as it is already in READY at that point). And it
+ needs to figure out the following ERROR message on the bus needs to be
+ ignored, which is not really simple.
+ The approach here is to allow element to add details to the ERROR
+ message with a `redirect-location` field which elements like playbin handle
+ and use right away.
+ We could also use the element 'redirect' message in playbin, but the
+ issue with that approach is that the element will still emit the ERROR
+ message on the bus, leading to wrong behaviour. That can't be avoided
+ since in the case the app/parent pipeline is not handling the redirect
+ instruction, the ERROR message is necessary (and there is no way to
+ detect that the message has been "handled" from the element emitting the
+ redirect).
+ [0]: http://movietrailers.apple.com/movies/paramount/terminator-dark-fate/terminator-dark-fate-trailer-2_480p.mov
+
+2019-09-19 15:12:25 -0600 Aaron Boxer <aaron.boxer@collabora.com>
+
+ * gst/overlaycomposition/gstoverlaycomposition.c:
+ overlaycomposition: set sink pad to proxy allocation queries
+
+2019-11-03 00:46:49 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstgldisplay.c:
+ * gst-libs/gst/gl/gstgldisplay.h:
+ display: add a specific lock for the list of windows
+ It's either this or replacing all the object lock usage in gldisplay
+ with a recursive mutex which is not backwards compatible
+ The failure case is effectively:
+ 1. The user has locked the display object lock
+ 2. a glcontext loses it's last ref and attempts to quit the window
+ 3. gst_gl_window_quit() attempts to remove the window from the display
+ 4. gst_gl_display_remove_window attempts to take the display object lock
+ The only concern with changing the locking for the window list in the
+ display is that gst_gl_display_create_window() has documentation requiring
+ the object lock to be held which must continue to work correctly.
+
+2019-03-08 17:43:40 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglwindow.c:
+ glwindow: fix racy resize updates
+ Take locks around resize handling and marshall all resizes to the
+ windowing thread by default.
+
+2019-03-08 17:40:52 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstgldisplay.c:
+ * gst-libs/gst/gl/gstglwindow.c:
+ glwindow: remove window from display list on quit/finalize
+ Fixes a possible use-after-free in the X11 backend.
+
+2019-11-02 22:58:42 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstgldisplay.c:
+ * gst-libs/gst/gl/gstgldisplay.h:
+ * gst-libs/gst/gl/x11/gstgldisplay_x11.c:
+ gl/display: Add thread-safe retrieve_window
+ Returning a transfer none value for a value checked by a lock is not
+ thread safe as the reference could disappear before the caller can take
+ its reference.
+
+2019-08-30 17:16:35 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ * gst-libs/gst/pbutils/encoding-profile.h:
+ * gst/encoding/gstencodebin.c:
+ encodebin: Ensure that a single segment is pushed into encoders
+ Following the [design document] encodebin needs to handle sources that
+ output multiple streams, for that purpose and to make it simpler,
+ we ensure that a single segment is outputted to the encoders by using
+ an `identity single-segment=true` at the beginning of streams chains.
+ Added API to enable or disable the use of that new feature.
+ Added support for the encoding profile parser for that new property,
+ keeping backward compatibility
+ [design document]: https://gstreamer.freedesktop.org/documentation/additional/design/encoding.html?gi-language=c#rendering-timelines
+
+2019-03-19 16:20:01 +0100 Havard Graff <havard.graff@gmail.com>
+
+ * gst-libs/gst/rtp/gstrtcpbuffer.h:
+ rtcpbuffer: add RTPFB_TYPE_TWCC for Transport-Wide Congestion Control
+
+2019-11-03 10:25:55 +0000 Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+ * gst/audioconvert/gstaudioconvert.c:
+ * gst/audioconvert/gstaudioconvert.h:
+ audioconvert: Fixed changing mix-matrix at runtime
+ Setting the property again after it had already been set ran
+ g_value_unset() but did not initialize it again to g_value_copy() failed
+ afterwards. Removed the unset as cleanup is done implicitely from
+ g_value_copy().
+ Changing the mix-matrix property did not trigger reconfiguration of the
+ caps, this has been added.
+ If the matrix is set to an empty matrix, instead of copying this the
+ matrix is simply disabled by setting mix_matrix_is_set (formerly
+ mix_matrix_was_set) to FALSE so the mix-matrix is ignored from now on.
+
+2019-10-28 14:43:50 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/videorate/gstvideorate.c:
+ * tests/check/elements/videorate.c:
+ videorate: Fix max-duplication-time handling
+ Previously this would've only set discont=TRUE and then for all future
+ buffers simply returned immediately.
+ Instead we also need to
+ a) drain previous input until its buffer time
+ b) update next_ts and base_ts accordingly for the gap
+ c) actually store the new buffer after the gap so it can be used in
+ the future and so the old buffer before the gap is gone
+ Also update the unit test accordingly so that it actually tests for this
+ behaviour. Previously it only tested that after the gap we got no output
+ at all.
+
+2019-08-20 23:12:22 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/compositor/blend.c:
+ * gst/compositor/blend.h:
+ * gst/compositor/compositor.c:
+ * tests/check/elements/compositor.c:
+ compositor: Add support for VUYA format
+ Reversed order of AYUV format. Most of core methods are prepared
+ already.
+
+2019-05-25 19:23:35 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/gstvideometa.h:
+ videometa: document how the meta can be used to negotiate buffers layout
+ I'm going to use this new API in gst-omx so an encoder can request
+ v4l2src to produce buffers matching the encoder stride and slice heights
+ preventing copies of incoming buffers.
+
+2019-11-04 00:38:18 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglimagesink.c:
+ * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c:
+ gl/gbm: ensure we call the resize callback before attempting to draw
+ Without this, sinks will not be notified about size changes or even the
+ initial size and would render at 0x0.
+
+2019-11-02 16:24:39 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-scaler.c:
+ video-scaler: Ensure we're always using the correct lines for scaling in gst_video_scaler_2d()
+ Especially for interlaced input make sure to
+ a) never mix both fields
+ b) never read lines after the end of the input frame
+ c) allocate enough space in the temporary lines to not write outside
+ the allocated memory area
+ This fixes various memory corruptions and rescaling artefacts.
+
+2018-10-02 12:04:14 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ videodecoder: Add a property to disable dropping on QoS
+
+2018-10-02 11:09:33 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ videodecoder: Post QoS when we drop because of QoS
+ At the moment, we only posted QoS messages when frame_drop() was
+ called, but not in finish_frame() when QoS triggered a late push.
+ This should fix applications that tries to account the dropped
+ frames. We also emit a warning on drops so it's more clear what is
+ happening.
+
+2019-07-23 11:49:07 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * ext/gl/gstgldownloadelement.c:
+ * gst-libs/gst/gl/gstglmemory.c:
+ * gst-libs/gst/gl/gstglviewconvert.c:
+ gl: use gst_video_meta_set_alignment()
+
+2019-07-22 16:55:04 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * sys/ximage/ximagepool.c:
+ * sys/xvimage/xvimagepool.c:
+ x(v)image: use gst_video_meta_set_alignment()
+ Use the new API to tell buffer consumers about alignment details.
+ This change is backward compatible as non ported elements can safely
+ ignore the alignment information and keep processing buffers as they use
+ to, copying if necessary.
+
+2019-07-09 12:17:44 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/gstvideometa.c:
+ * gst-libs/gst/video/gstvideometa.h:
+ * tests/check/libs/video.c:
+ videometa: add alignment field
+ By adding this field, buffer producers can now explicitly set the exact
+ geometry of planes, allowing users to easily know the padded size and
+ height of each plane.
+ GstVideoMeta is always heap allocated by GStreamer itself so we can
+ safely extend it.
+
+2019-06-03 16:26:08 +0530 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-info.c:
+ * gst-libs/gst/video/video-info.h:
+ * tests/check/libs/video.c:
+ video-info: add gst_video_info_align_full()
+ When using gst_video_info_align() user had no easy way to retrieve the
+ padded size and height of each plane.
+ This can easily be implemented in fill_planes() as it's already called
+ in align() with the padded height.
+ Ideally we'd add a plane_size field to GstVideoInfo but the remaining
+ padding is too small so that would be an ABI break.
+ Fix #618
+
+2019-11-02 12:15:15 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-info.h:
+ video-info: fix GST_VIDEO_INFO_FIELD_HEIGHT() with frame odd height
+ We want to round up when halfing height.
+ I do have a test for this but it relies on my new video-align tests so
+ it's part of the next commit. Recording the fix separately if we want to
+ backport this fix to the stable branch.
+
+2019-10-30 14:59:40 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * ext/gl/gstglimagesink.c:
+ glimagesink: fix upper-left and upper-right rotate matrices
+
+2019-10-25 20:44:27 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/libs/audio.c:
+ tests: audio: Add test for gst_audio_info_from_caps() method
+ Test gst_audio_info_from_caps() with raw and encoded formats.
+
+2019-10-25 12:05:54 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/audio/audio-info.c:
+ audio-info: Allow from_caps() with encoded audio format
+ Similar to gst_video_info_from_caps() which allows encoded video format,
+ don't error gst_audio_info_from_caps() with encoded audio format.
+ Because gst_audio_info_set_format() supports encoded format, current
+ behavior does not seem to be consistent.
+
+2019-10-21 16:43:32 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ video-converter: Use G_N_ELEMENTS instead of writing it out manually
+
+2019-10-21 17:40:35 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ video-converter: Scaling-only fast-paths for planar formats are keeping interlacing
+ So we can also use them for interlaced content and speed up scaling a
+ bit.
+
+2019-10-21 17:28:46 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-scaler.c:
+ video-scaler: Correctly handle interlaced vertical scalers in gst_video_scaler_2d()
+ We need to provide twice as many lines as usual to the scaling function
+ as every second lines would be skipped.
+ Without this we read from random memory and produce colorful output and
+ crashes.
+
+2019-10-21 16:43:02 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ video-converter: Don't use fast-path halfing/doubling rescalers for interlaced planar formats
+ They will mix lines from the top and bottom field and by that
+ effectively deinterlace the video, badly.
+
+2019-10-21 16:43:02 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ video-converter: Use interlaced scalers for vertical scaling if needed
+ Without this, scaling e.g. interlaced UYVY causes corrupted output with
+ lines as follows: f1 f1 f2 f2, i.e. two lines of each field and only
+ then the other field.
+
+2019-10-03 12:03:09 +0200 Joakim Johansson <joakimj@axis.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ gstrtspconnection: messages_bytes not decreased
+ The watch->messages_bytes is not decreased when the write operation
+ from the backlog is only partly successfull.
+ This commit decreases the watch->messages_bytes for the successfully
+ sent messages.
+ Fixes #679
+
+2019-10-17 20:06:24 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson.build:
+ meson: build gir even when cross-compiling if introspection was enabled explicitly
+ This can be made to work in certain circumstances when
+ cross-compiling, so default to not building g-i stuff
+ when cross-compiling, but allow it if introspection was
+ enabled explicitly via -Dintrospection=enabled.
+ See gstreamer/gstreamer#454 and gstreamer/gstreamer#381.
+
+2019-10-12 12:00:46 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglmemory.h:
+ glimagesink: add support for Y210 format
+ Y210 is a 10-bit YUY2, so we may re-use the YUY2 shaders but gl format
+ is set to RG16
+ Sample pipeline:
+ gst-launch-1.0 videotestsrc ! video/x-raw,format=Y210 ! glimagesink
+
+2019-10-11 10:14:49 +0200 David Trussel <david.truessel@gmail.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglmemory.h:
+ glcolorconvert: add support for the NV16 and NV61 formats
+ NV16/NV61 is basically the same as NV12/NV21 with a higher chroma resolution.
+ Since only the size of the UV plane/texture is different, the same shaders are used as for NV12/NV21.
+
+2019-10-11 22:54:02 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglmemory.h:
+ glimagesink: add support for Y410 format
+ Sample pipeline:
+ gst-launch-1.0 videotestsrc ! video/x-raw,format=Y410 ! glimagesink
+
+2019-10-14 10:02:59 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ glcolorconvert: merge shaders for AYUV and VUYA formats
+ The shaders can be used for AYUV and varieties.
+
+2019-06-09 00:57:47 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * .gitignore:
+ * .gitmodules:
+ * Makefile.am:
+ * README:
+ * autogen.sh:
+ * common:
+ * configure.ac:
+ * docs/.gitignore:
+ * ext/Makefile.am:
+ * ext/alsa/Makefile.am:
+ * ext/cdparanoia/Makefile.am:
+ * ext/gl/Makefile.am:
+ * ext/libvisual/Makefile.am:
+ * ext/ogg/Makefile.am:
+ * ext/opus/Makefile.am:
+ * ext/pango/Makefile.am:
+ * ext/theora/Makefile.am:
+ * ext/vorbis/Makefile.am:
+ * gst-libs/Makefile.am:
+ * gst-libs/gst/Makefile.am:
+ * gst-libs/gst/allocators/Makefile.am:
+ * gst-libs/gst/app/Makefile.am:
+ * gst-libs/gst/audio/.gitignore:
+ * gst-libs/gst/audio/Makefile.am:
+ * gst-libs/gst/fft/Makefile.am:
+ * gst-libs/gst/gl/.gitignore:
+ * gst-libs/gst/gl/Makefile.am:
+ * gst-libs/gst/gl/android/Makefile.am:
+ * gst-libs/gst/gl/cocoa/Makefile.am:
+ * gst-libs/gst/gl/dispmanx/Makefile.am:
+ * gst-libs/gst/gl/eagl/Makefile.am:
+ * gst-libs/gst/gl/egl/Makefile.am:
+ * gst-libs/gst/gl/gbm/Makefile.am:
+ * gst-libs/gst/gl/glprototypes/Makefile.am:
+ * gst-libs/gst/gl/viv-fb/Makefile.am:
+ * gst-libs/gst/gl/wayland/Makefile.am:
+ * gst-libs/gst/gl/win32/Makefile.am:
+ * gst-libs/gst/gl/x11/Makefile.am:
+ * gst-libs/gst/pbutils/.gitignore:
+ * gst-libs/gst/pbutils/Makefile.am:
+ * gst-libs/gst/pbutils/install-plugins.c:
+ * gst-libs/gst/riff/Makefile.am:
+ * gst-libs/gst/rtp/Makefile.am:
+ * gst-libs/gst/rtsp/.gitignore:
+ * gst-libs/gst/rtsp/Makefile.am:
+ * gst-libs/gst/sdp/Makefile.am:
+ * gst-libs/gst/tag/Makefile.am:
+ * gst-libs/gst/video/.gitignore:
+ * gst-libs/gst/video/Makefile.am:
+ * gst/Makefile.am:
+ * gst/adder/.gitignore:
+ * gst/adder/Makefile.am:
+ * gst/app/Makefile.am:
+ * gst/audioconvert/.gitignore:
+ * gst/audioconvert/Makefile.am:
+ * gst/audiomixer/Makefile.am:
+ * gst/audiorate/Makefile.am:
+ * gst/audioresample/Makefile.am:
+ * gst/audiotestsrc/Makefile.am:
+ * gst/compositor/.gitignore:
+ * gst/compositor/Makefile.am:
+ * gst/encoding/Makefile.am:
+ * gst/gio/Makefile.am:
+ * gst/overlaycomposition/Makefile.am:
+ * gst/pbtypes/Makefile.am:
+ * gst/playback/.gitignore:
+ * gst/playback/Makefile.am:
+ * gst/rawparse/Makefile.am:
+ * gst/subparse/Makefile.am:
+ * gst/tcp/.gitignore:
+ * gst/tcp/Makefile.am:
+ * gst/typefind/Makefile.am:
+ * gst/videoconvert/Makefile.am:
+ * gst/videorate/Makefile.am:
+ * gst/videoscale/.gitignore:
+ * gst/videoscale/Makefile.am:
+ * gst/videotestsrc/.gitignore:
+ * gst/videotestsrc/Makefile.am:
+ * gst/volume/.gitignore:
+ * gst/volume/Makefile.am:
+ * m4/.gitignore:
+ * m4/Makefile.am:
+ * m4/README:
+ * m4/check-libheader.m4:
+ * m4/gst-alsa.m4:
+ * m4/gst-gl.m4:
+ * m4/gst-ivorbis.m4:
+ * m4/lrint.m4:
+ * m4/lrintf.m4:
+ * m4/ogg.m4:
+ * m4/vorbis.m4:
+ * pkgconfig/.gitignore:
+ * pkgconfig/Makefile.am:
+ * po/.gitignore:
+ * po/Makevars:
+ * po/POTFILES:
+ * sys/Makefile.am:
+ * sys/ximage/Makefile.am:
+ * sys/xvimage/Makefile.am:
+ * tests/Makefile.am:
+ * tests/check/.gitignore:
+ * tests/check/Makefile.am:
+ * tests/check/elements/.gitignore:
+ * tests/check/generic/.gitignore:
+ * tests/check/gst/.gitignore:
+ * tests/check/libs/.gitignore:
+ * tests/check/pipelines/.gitignore:
+ * tests/examples/Makefile.am:
+ * tests/examples/app/.gitignore:
+ * tests/examples/app/Makefile.am:
+ * tests/examples/audio/.gitignore:
+ * tests/examples/audio/Makefile.am:
+ * tests/examples/compositor/Makefile.am:
+ * tests/examples/decodebin_next/.gitignore:
+ * tests/examples/decodebin_next/Makefile.am:
+ * tests/examples/dynamic/.gitignore:
+ * tests/examples/dynamic/Makefile.am:
+ * tests/examples/encoding/.gitignore:
+ * tests/examples/encoding/Makefile.am:
+ * tests/examples/fft/.gitignore:
+ * tests/examples/fft/Makefile.am:
+ * tests/examples/gio/.gitignore:
+ * tests/examples/gio/Makefile.am:
+ * tests/examples/gl/Makefile.am:
+ * tests/examples/gl/cocoa/.gitignore:
+ * tests/examples/gl/cocoa/Makefile.am:
+ * tests/examples/gl/generic/Makefile.am:
+ * tests/examples/gl/generic/cube/.gitignore:
+ * tests/examples/gl/generic/cube/Makefile.am:
+ * tests/examples/gl/generic/cubeyuv/.gitignore:
+ * tests/examples/gl/generic/cubeyuv/Makefile.am:
+ * tests/examples/gl/generic/doublecube/.gitignore:
+ * tests/examples/gl/generic/doublecube/Makefile.am:
+ * tests/examples/gl/generic/recordgraphic/.gitignore:
+ * tests/examples/gl/generic/recordgraphic/Makefile.am:
+ * tests/examples/gl/gtk/3dvideo/.gitignore:
+ * tests/examples/gl/gtk/3dvideo/Makefile.am:
+ * tests/examples/gl/gtk/Makefile.am:
+ * tests/examples/gl/gtk/filternovideooverlay/.gitignore:
+ * tests/examples/gl/gtk/filternovideooverlay/Makefile.am:
+ * tests/examples/gl/gtk/filtervideooverlay/.gitignore:
+ * tests/examples/gl/gtk/filtervideooverlay/Makefile.am:
+ * tests/examples/gl/gtk/fxtest/.gitignore:
+ * tests/examples/gl/gtk/fxtest/Makefile.am:
+ * tests/examples/gl/gtk/switchvideooverlay/.gitignore:
+ * tests/examples/gl/gtk/switchvideooverlay/Makefile.am:
+ * tests/examples/gl/qt/.gitignore:
+ * tests/examples/gl/qt/Makefile.am:
+ * tests/examples/gl/qt/qglwtextureshare/.gitignore:
+ * tests/examples/gl/sdl/.gitignore:
+ * tests/examples/gl/sdl/Makefile.am:
+ * tests/examples/overlay/.gitignore:
+ * tests/examples/overlay/Makefile.am:
+ * tests/examples/overlaycomposition/.gitignore:
+ * tests/examples/overlaycomposition/Makefile.am:
+ * tests/examples/playback/Makefile.am:
+ * tests/examples/playrec/.gitignore:
+ * tests/examples/playrec/Makefile.am:
+ * tests/examples/seek/.gitignore:
+ * tests/examples/seek/Makefile.am:
+ * tests/examples/snapshot/.gitignore:
+ * tests/examples/snapshot/Makefile.am:
+ * tests/files/Makefile.am:
+ * tests/icles/.gitignore:
+ * tests/icles/Makefile.am:
+ * tests/icles/playback/.gitignore:
+ * tests/icles/playback/Makefile.am:
+ * tools/.gitignore:
+ * tools/Makefile.am:
+ Remove autotools build system
+
+2019-10-10 17:18:34 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst/tcp/gstmultifdsink.c:
+ * gst/tcp/gstmultihandlesink.c:
+ * gst/tcp/gstmultisocketsink.c:
+ * gst/videotestsrc/videotestsrc.c:
+ * tests/examples/gl/generic/cube/main.cpp:
+ * tests/examples/gl/generic/cubeyuv/main.cpp:
+ * tests/examples/gl/generic/doublecube/main.cpp:
+ * tests/examples/gl/generic/recordgraphic/main.cpp:
+ * tests/examples/seek/scrubby.c:
+ base: Avoid usage of deprecated API
+ GTimeval and related functions are now deprecated in glib.
+ Replacement APIs have been present since 2.26
+
+2019-10-10 16:58:26 +0200 Edward Hervey <edward@centricular.com>
+
+ * tests/check/elements/adder.c:
+ * tests/check/elements/audiomixer.c:
+ check: Don't use real audio devices for tests
+ When checking the behaviour of live seeking on audiomixer or
+ adder we don't *really* need real audio devices. audiotestsrc
+ in live mode is enough to test the behaviour of those elements.
+ Also avoids people repeatedly wasting hours trying to figure out
+ whether that failing behaviour is due to their code or not.
+
+2019-10-08 19:35:49 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/pbutils/descriptions.c:
+ pbutils: add description for CineForm codec
+
+2019-10-08 19:35:23 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/riff/riff-media.c:
+ riff: add mapping for CineForm codec
+ Makes CineForm-in-AVI work.
+
+2019-09-07 04:28:46 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * tests/examples/device-provider/example-device-provider.c:
+ * tests/examples/device-provider/meson.build:
+ * tests/examples/meson.build:
+ examples: add device provider example
+
+2019-10-02 23:21:09 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/gl/effects/gstgleffectblur.c:
+ * ext/gl/gstglbumper.c:
+ * ext/gl/gstglbumper.h:
+ * ext/gl/gstglfiltercube.c:
+ * ext/gl/gstglfiltercube.h:
+ * ext/gl/gstglfilterglass.c:
+ * ext/gl/gstglfilterglass.h:
+ * ext/gl/gstglmosaic.c:
+ * ext/gl/gstglmosaic.h:
+ glfilters: Don't use static variables for storing per-element state
+
+2019-09-27 11:10:43 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ * tests/check/libs/gstglupload.c:
+ glupload: Add VideoMetas and GLSyncMeta to the raw uploaded buffers
+ This is done by reusing `gst_gl_memory_setup_buffer` avoiding to
+ duplicate code.
+ Without a VideoMeta, mapping those buffers lead to GstBuffer mapping the
+ buffer in system memory even when specifying the GL flags (through the
+ buffer merging mechanism) making the result totally broken.
+
+2019-10-02 23:35:36 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ examples/gl/sdlshare: port to OpenGL 3.0 core profile
+
+2019-10-01 00:00:57 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tools/gst-play-kb.c:
+ build: fix werror build on windows
+ _isatty() is in the io.h header
+
+2019-09-30 16:11:18 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * tools/gst-device-monitor.c:
+ device-monitor: fix device listing without --follow
+ In !427, I removed the call to get_devices in order to always
+ print added devices from the bus handler, however this requires
+ the main loop to run until all pending messages have been consumed.
+ This commit achieves this by always running the main loop, and
+ simply adding an idle source to quit it in the non --follow case.
+
+2019-09-30 10:27:03 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/video/video-format.c:
+ video-format: correct the pixel stride for Y410
+ The stride for Y410 is 4 bytes, not 0 byte
+
+2019-03-14 16:24:11 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ examples/sdlshare: Map video frames as early as possible and wait via GL sync meta before using texture ids
+
+2019-03-13 08:28:58 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ examples/sdlshare: Initialize GL as part of the event loop
+ And unref additional buffers we never use for rendering directly instead
+ of going via the output queue.
+
+2019-03-13 08:20:57 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ * tests/examples/gl/sdl/sdlshare2.c:
+ examples/sdlshare: Activate and initialize our wrapped GL context
+ This allows us to e.g. use the GL functions vtable on it later.
+
+2019-03-13 07:31:43 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ * tests/examples/gl/sdl/sdlshare2.c:
+ examples/sdlshare: Call gst_init() a bit earlier in main()
+ Let's not accidentally call other GStreamer API before that.
+
+2019-03-13 07:21:12 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ * tests/examples/gl/sdl/sdlshare2.c:
+ examples/sdlshare: Create an OpenGL context for OpenGL 2.0
+
+2019-03-12 22:37:48 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ examples/sdlshare: Switch from a GLib main loop to a normal SDL event loop
+
+2019-03-12 22:09:18 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * m4/gst-gl.m4:
+ * tests/examples/gl/sdl/meson.build:
+ * tests/examples/gl/sdl/sdlshare.c:
+ * tests/examples/gl/sdl/sdlshare2.c:
+ examples/sdlshare: Port to SDL2
+
+2019-03-12 21:31:24 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ examples/sdlshare: Move from a fakesink to an appsink
+
+2019-03-12 21:29:07 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ examples/sdlshare: Store buffer queues and loop in a global variable
+ There's no point storing them in GObject data, we already have other
+ global variables anyway.
+
+2019-03-12 21:24:03 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ * tests/examples/gl/sdl/sdlshare2.c:
+ examples/sdlshare: Bus sync handlers return no value
+
+2019-03-12 21:20:24 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/examples/gl/sdl/sdlshare.c:
+ * tests/examples/gl/sdl/sdlshare2.c:
+ examples/sdlshare: Fix various memory leaks
+
+2018-06-18 10:49:28 +0200 Axel Mårtensson <axelma@axis.com>
+
+ * ext/alsa/gstalsasink.c:
+ * ext/alsa/gstalsasink.h:
+ alsasink: pause/resume
+ alsasink can now detect a resume, stop and pause. The sink is now
+ properly paused using snd_pcm_pause(), and without losing any data
+
+2018-06-18 10:44:55 +0200 Axel Mårtensson <axelma@axis.com>
+
+ * gst-libs/gst/audio/gstaudiosink.c:
+ * gst-libs/gst/audio/gstaudiosink.h:
+ audiosink: fix resuming after pause
+ For resuming after paused, gst_audio_sink_ring_buffer_start() needs to
+ be called to notify the ringbuffer to continue to play.
+
+2017-10-10 20:41:31 +0200 Philippe Renon <philippe_renon@yahoo.fr>
+
+ * gst-libs/gst/audio/gstaudioringbuffer.c:
+ * gst-libs/gst/audio/gstaudioringbuffer.h:
+ * gst-libs/gst/audio/gstaudiosink.c:
+ * gst-libs/gst/audio/gstaudiosink.h:
+ audiosink: expose more audioringbuffer vmethods to child sinks
+ The newly exposed vmethods are pause, resume, stop and clear_all.
+ The existing reset vmethod is deprecated.
+ The audio sink will fallback to calling reset if pause or stop
+ are not provided and will fallback to calling start if
+ resume is not provided. There is no default clear_all
+ implementation.
+ Existing audio sinks continue to work as before.
+ This change is useful for sinks that need to distinguish
+ between a pause and a stop (currently both are handled
+ by a reset) and is needed for https://bugzilla.gnome.org/show_bug.cgi?id=788362
+ https://bugzilla.gnome.org/show_bug.cgi?id=788361
+
+2019-09-24 15:05:30 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tools/gst-play-kb.c:
+ gst-play: Add support for interacting console input on Windows
+ Add Windows keyboard input handler. This could make gst-play UX
+ consistent between *nix and Windows.
+
+2019-09-20 09:48:30 +0100 Charlie Turner <cturner@igalia.com>
+
+ * gst/playback/gststreamsynchronizer.c:
+ streamsynchronizer: avoid pad destruction races.
+ Due to the use of {set/get}-element_private methods being used to store
+ the GstSyncStream in the src and sink pads, and the racey nature of pad
+ destruction, there are numerous ways we can be bitten by race conditions
+ in the stream synchronizer. Fix that by tying the pads toghether with
+ references.
+
+2019-05-10 07:32:21 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst-libs/gst/audio/gstaudioutilsprivate.c:
+ audio: Use LoadPackagedLibrary when building for UWP
+ Universal Windows Platform apps are not allowed to use LoadLibrary to
+ load arbitrary DLLs from the filesystem. They can only use
+ LoadPackagedLibrary to load DLLs that have been packaged with the app
+ as assets.
+ See also: https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/190
+
+2019-09-24 15:32:33 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tools/gst-play.c:
+ gst-play: Use gst_print* to avoid broken stdout string on Windows
+ Equvalant to https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/258
+ When debug enabled, the debug string might be broken on Windows.
+
+2019-09-23 15:39:55 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglsl.c:
+ * gst-libs/gst/tag/gsttageditingprivate.c:
+ * gst-libs/gst/tag/gstxmptag.c:
+ * tools/gst-discoverer.c:
+ build: fix debug output werror build with newer gcc
+ In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55,
+ from ../gst-libs/gst/tag/tag.h:25,
+ from ../gst-libs/gst/tag/gsttageditingprivate.h:24,
+ from ../gst-libs/gst/tag/gsttageditingprivate.c:23:
+ ../gst-libs/gst/tag/gsttageditingprivate.c: In function ‘__exif_tag_capturing_white_balance_to_exif_value’:
+ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:645:5: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
+ 645 | gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__, \
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 646 | (GObject *) (object), __VA_ARGS__); \
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:1068:27: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’
+ 1068 | #define GST_WARNING(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, NULL, __VA_ARGS__)
+ | ^~~~~~~~~~~~~~~~~
+ ../gst-libs/gst/tag/gsttageditingprivate.c:265:3: note: in expansion of macro ‘GST_WARNING’
+ 265 | GST_WARNING ("Invalid white balance: %s", str);
+ | ^~~~~~~~~~~
+ ../gst-libs/gst/tag/gsttageditingprivate.c:265:40: note: format string is defined here
+ 265 | GST_WARNING ("Invalid white balance: %s", str);
+ | ^~
+ In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55,
+ from ../gst-libs/gst/tag/tag.h:25,
+ from ../gst-libs/gst/tag/gstxmptag.c:39:
+ ../gst-libs/gst/tag/gstxmptag.c: In function ‘deserialize_exif_gps_direction’:
+ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:645:5: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
+ 645 | gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__, \
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 646 | (GObject *) (object), __VA_ARGS__); \
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:1068:27: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’
+ 1068 | #define GST_WARNING(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, NULL, __VA_ARGS__)
+ | ^~~~~~~~~~~~~~~~~
+ ../gst-libs/gst/tag/gstxmptag.c:818:5: note: in expansion of macro ‘GST_WARNING’
+ 818 | GST_WARNING ("Missing %s tag", dirref_str);
+ | ^~~~~~~~~~~
+ ../gst-libs/gst/tag/gstxmptag.c:818:27: note: format string is defined here
+ 818 | GST_WARNING ("Missing %s tag", dirref_str);
+ | ^~
+ In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55,
+ from ../gst-libs/gst/tag/tag.h:25,
+ from ../gst-libs/gst/tag/gstxmptag.c:39:
+ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:645:5: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
+ 645 | gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__, \
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 646 | (GObject *) (object), __VA_ARGS__); \
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:1068:27: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’
+ 1068 | #define GST_WARNING(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, NULL, __VA_ARGS__)
+ | ^~~~~~~~~~~~~~~~~
+ ../gst-libs/gst/tag/gstxmptag.c:814:5: note: in expansion of macro ‘GST_WARNING’
+ 814 | GST_WARNING ("Missing %s tag", dir_str);
+ | ^~~~~~~~~~~
+ ../gst-libs/gst/tag/gstxmptag.c:814:27: note: format string is defined here
+ 814 | GST_WARNING ("Missing %s tag", dir_str);
+ | ^~
+ In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55,
+ from ../gst-libs/gst/gl/gstgl_fwd.h:24,
+ from ../gst-libs/gst/gl/gl.h:24,
+ from ../gst-libs/gst/gl/gstglsl.c:25:
+ ../gst-libs/gst/gl/gstglsl.c: In function ‘gst_glsl_version_profile_from_string’:
+ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:645:5: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
+ 645 | gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__, \
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 646 | (GObject *) (object), __VA_ARGS__); \
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:1068:27: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’
+ 1068 | #define GST_WARNING(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, NULL, __VA_ARGS__)
+ | ^~~~~~~~~~~~~~~~~
+ ../gst-libs/gst/gl/gstglsl.c:333:7: note: in expansion of macro ‘GST_WARNING’
+ 333 | GST_WARNING ("Invalid preprocesser directive detected: %s", version_s);
+ | ^~~~~~~~~~~
+ ../gst-libs/gst/gl/gstglsl.c:333:62: note: format string is defined here
+ 333 | GST_WARNING ("Invalid preprocesser directive detected: %s", version_s);
+ | ^~
+ In function ‘print_stream_info’,
+ inlined from ‘print_topology’ at ../tools/gst-discoverer.c:352:3:
+ ../tools/gst-discoverer.c:316:3: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
+ 316 | g_print ("%*s%s: %s\n", 2 * GPOINTER_TO_INT (depth), " ",
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 317 | gst_discoverer_stream_info_get_stream_type_nick (info), desc);
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+2019-09-11 01:29:23 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * tools/gst-device-monitor.c:
+ gst-device-monitor: stop calling gst_device_monitor_get_devices()
+ See https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/280
+
+2019-09-17 21:33:49 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tools/gst-device-monitor.c:
+ device-monitor: print caps features in the caps
+
+2019-09-16 11:03:59 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ glimagesink: Fix VUYA in memory:DMABuf
+ Sample pipeline:
+ gst-launch-1.0 videotestsrc ! msdkvpp ! \
+ video/x-raw\(memory:DMABuf\),format=VUYA ! glimagesink
+
+2019-08-28 14:50:24 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/egl/gstgldisplay_egl_device.c:
+ egldevice: Fix undeclared type build error
+ Not all eglext.h defines EGLDeviceEXT type. That's implementation and
+ egl extension version dependent.
+
+2019-09-08 01:03:57 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/check/gst-plugins-base.supp:
+ tests: fix up valgrind suppressions for glibc getaddrinfo leaks
+ Make more flexible. There is an extra
+ gethostbyname2_r@@GLIBC_2.2.5 (getXXbyYY_r.c:217)
+ in the trace on the build bots (F30).
+ Fixes the -base and -good valgrind jobs on the 1.16 branch CI.
+
+2019-08-29 11:16:39 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * ext/ogg/gstoggdemux.c:
+ * ext/ogg/gstoggdemux.h:
+ oggdemux: Move seeking in pull mode to the streaming thread
+ Flushing and teering down the streaming thread from the seeking thread
+ and simply letting the streaming thread handle the seek event in its
+ loop function.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/639
+
+2018-04-15 19:19:34 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/encoding/gststreamsplitter.c:
+ * gst/encoding/gststreamsplitter.h:
+ streamsplitter: Drop duplicated force-key-unit events
+ Forward force-key-unit event only once for the corresponding sequence number.
+
+2018-04-15 19:15:28 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/encoding/gststreamcombiner.c:
+ streamcombiner: Forward upstream force-key-unit events to all sinkpads
+ streamcombiner element forwards a upstream event only to one sinkpad.
+ When the streamcombiner is used with encodebin, the sinkpad
+ corresponding to pass-through path is configured before that of encoder,
+ and therefore streamcombiner forwards upstream events only to
+ the firstly configured one (i.e., pass-through path).
+
+2019-09-02 16:20:07 -0400 Doug Nazar <nazard@nazar.ca>
+
+ * meson.build:
+ meson: Reenable NEON support
+
+2019-09-02 23:25:39 -0400 Doug Nazar <nazard@nazar.ca>
+
+ * gst-libs/gst/audio/audio-resampler-neon.h:
+ audio-resampler: Update NEON to handle remainders not multiples of 4
+ If the remainder is not evenly divisable by 4, we'd miss the check
+ for zero and continue the loop until crashing. Change the branch
+ to take into account negatives as well.
+ This more closely matches the SSE loop.
+
+2019-08-29 13:42:39 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * configure.ac:
+ * ext/alsa/gstalsasrc.c:
+ * ext/gl/effects/gstgleffectxray.c:
+ * ext/gl/gstglalpha.c:
+ * ext/gl/gstglcolorbalance.c:
+ * ext/gl/gstglfilterreflectedscreen.c:
+ * ext/gl/gstglfiltershader.c:
+ * ext/gl/gstglimagesink.c:
+ * ext/gl/gstglstereomix.c:
+ * ext/ogg/gstoggaviparse.c:
+ * ext/ogg/gstoggdemux.c:
+ * ext/ogg/gstoggdemux.h:
+ * ext/pango/gstbasetextoverlay.c:
+ * ext/theora/gsttheoradec.h:
+ * ext/theora/gsttheoraenc.c:
+ * ext/vorbis/gstvorbistag.c:
+ * gst-libs/gst/allocators/gstdmabuf.h:
+ * gst-libs/gst/app/gstappsink.c:
+ * gst-libs/gst/app/gstappsrc.c:
+ * gst-libs/gst/audio/audio-channels.h:
+ * gst-libs/gst/audio/audio-converter.c:
+ * gst-libs/gst/audio/audio-format.h:
+ * gst-libs/gst/audio/audio-resampler.c:
+ * gst-libs/gst/audio/audio-resampler.h:
+ * gst-libs/gst/audio/gstaudioaggregator.c:
+ * gst-libs/gst/audio/gstaudiobasesink.c:
+ * gst-libs/gst/audio/gstaudiobasesrc.c:
+ * gst-libs/gst/audio/gstaudiodecoder.c:
+ * gst-libs/gst/audio/gstaudioencoder.c:
+ * gst-libs/gst/audio/gstaudioringbuffer.c:
+ * gst-libs/gst/audio/gstaudiosink.c:
+ * gst-libs/gst/audio/gstaudiosrc.c:
+ * gst-libs/gst/audio/gstaudiostreamalign.c:
+ * gst-libs/gst/fft/kiss_fft_f32.c:
+ * gst-libs/gst/fft/kiss_fft_f64.c:
+ * gst-libs/gst/fft/kiss_fft_s16.c:
+ * gst-libs/gst/fft/kiss_fft_s32.c:
+ * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+ * gst-libs/gst/gl/gbm/gstgl_gbm_utils.c:
+ * gst-libs/gst/gl/gstglapi.c:
+ * gst-libs/gst/gl/gstglbasememory.c:
+ * gst-libs/gst/gl/gstglbasememory.h:
+ * gst-libs/gst/gl/gstglbufferpool.c:
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcontext.c:
+ * gst-libs/gst/gl/gstgldisplay.c:
+ * gst-libs/gst/gl/gstglfeature.c:
+ * gst-libs/gst/gl/gstglfilter.c:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglframebuffer.c:
+ * gst-libs/gst/gl/gstglmemory.c:
+ * gst-libs/gst/gl/gstglmemorypbo.c:
+ * gst-libs/gst/gl/gstglshader.c:
+ * gst-libs/gst/gl/gstglsl.c:
+ * gst-libs/gst/gl/gstglsl.h:
+ * gst-libs/gst/gl/gstglslstage.c:
+ * gst-libs/gst/gl/gstglupload.c:
+ * gst-libs/gst/gl/gstglupload.h:
+ * gst-libs/gst/gl/gstglutils.c:
+ * gst-libs/gst/gl/gstglviewconvert.c:
+ * gst-libs/gst/gl/gstglwindow.c:
+ * gst-libs/gst/gl/gstglwindow.h:
+ * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c:
+ * gst-libs/gst/gl/win32/gstglwindow_win32.c:
+ * gst-libs/gst/gl/x11/gstgldisplay_x11.c:
+ * gst-libs/gst/pbutils/codec-utils.c:
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ * gst-libs/gst/pbutils/encoding-profile.h:
+ * gst-libs/gst/pbutils/encoding-target.c:
+ * gst-libs/gst/pbutils/gstaudiovisualizer.c:
+ * gst-libs/gst/pbutils/gstdiscoverer-types.c:
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ * gst-libs/gst/pbutils/install-plugins.c:
+ * gst-libs/gst/pbutils/install-plugins.h:
+ * gst-libs/gst/riff/riff-ids.h:
+ * gst-libs/gst/riff/riff-media.c:
+ * gst-libs/gst/rtp/README:
+ * gst-libs/gst/rtp/gstrtcpbuffer.c:
+ * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+ * gst-libs/gst/rtp/gstrtpbuffer.c:
+ * gst-libs/gst/rtp/gstrtppayloads.c:
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ * gst-libs/gst/rtsp/gstrtspconnection.h:
+ * gst-libs/gst/rtsp/gstrtspdefs.h:
+ * gst-libs/gst/rtsp/gstrtspextension.h:
+ * gst-libs/gst/rtsp/gstrtspmessage.c:
+ * gst-libs/gst/sdp/gstmikey.c:
+ * gst-libs/gst/sdp/gstmikey.h:
+ * gst-libs/gst/tag/gstexiftag.c:
+ * gst-libs/gst/tag/gsttagdemux.h:
+ * gst-libs/gst/tag/gstxmptag.c:
+ * gst-libs/gst/tag/id3v2.3.0.txt:
+ * gst-libs/gst/tag/lang.c:
+ * gst-libs/gst/video/TODO:
+ * gst-libs/gst/video/convertframe.c:
+ * gst-libs/gst/video/gstvideodecoder.c:
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * gst-libs/gst/video/gstvideosink.c:
+ * gst-libs/gst/video/video-anc.h:
+ * gst-libs/gst/video/video-blend.c:
+ * gst-libs/gst/video/video-color.h:
+ * gst-libs/gst/video/video-converter.c:
+ * gst-libs/gst/video/video-dither.c:
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ * gst-libs/gst/video/video-frame.h:
+ * gst-libs/gst/video/video-hdr.c:
+ * gst-libs/gst/video/video-info.c:
+ * gst-libs/gst/video/video-overlay-composition.c:
+ * gst-libs/gst/video/video-scaler.c:
+ * gst-libs/gst/video/videooverlay.c:
+ * gst/adder/gstadder.c:
+ * gst/audiomixer/gstaudiointerleave.c:
+ * gst/audiomixer/gstaudiomixer.c:
+ * gst/audioresample/gstaudioresample.c:
+ * gst/audiotestsrc/gstaudiotestsrc.c:
+ * gst/compositor/compositor.c:
+ * gst/encoding/gststreamcombiner.c:
+ * gst/gio/gstgiobasesrc.c:
+ * gst/overlaycomposition/gstoverlaycomposition.c:
+ * gst/playback/gstdecodebin2.c:
+ * gst/playback/gstdecodebin3.c:
+ * gst/playback/gstparsebin.c:
+ * gst/playback/gstplaybin2.c:
+ * gst/playback/gstplaybin3.c:
+ * gst/playback/gstplaysink.c:
+ * gst/playback/gstsubtitleoverlay.c:
+ * gst/playback/gsturidecodebin.c:
+ * gst/playback/gsturidecodebin3.c:
+ * gst/playback/gsturisourcebin.c:
+ * gst/rawparse/gstrawaudioparse.h:
+ * gst/rawparse/gstrawbaseparse.h:
+ * gst/subparse/gstsubparse.c:
+ * gst/subparse/samiparse.c:
+ * gst/tcp/gstmultifdsink.c:
+ * gst/tcp/gstmultihandlesink.c:
+ * gst/tcp/gstmultisocketsink.c:
+ * gst/typefind/gsttypefindfunctions.c:
+ * gst/videoconvert/gstvideoconvert.c:
+ * gst/videorate/gstvideorate.c:
+ * gst/videotestsrc/gstvideotestsrc.c:
+ * hooks/pre-commit.hook:
+ * m4/ogg.m4:
+ * m4/vorbis.m4:
+ * sys/ximage/ximagepool.c:
+ * sys/ximage/ximagesink.c:
+ * sys/ximage/ximagesink.h:
+ * sys/xvimage/xvcontext.h:
+ * tests/check/Makefile.am:
+ * tests/check/elements/decodebin.c:
+ * tests/check/elements/glimagesink.c:
+ * tests/check/elements/multifdsink.c:
+ * tests/check/elements/rawvideoparse.c:
+ * tests/check/elements/videorate.c:
+ * tests/check/gst-plugins-base.supp:
+ * tests/check/libs/gstglmatrix.c:
+ * tests/check/libs/gstglupload.c:
+ * tests/check/libs/rtpbasedepayload.c:
+ * tests/check/libs/rtpbasepayload.c:
+ * tests/check/libs/rtspconnection.c:
+ * tests/check/libs/tag.c:
+ * tests/check/libs/videodecoder.c:
+ * tests/examples/decodebin_next/playbin-test.c:
+ * tests/examples/dynamic/addstream.c:
+ * tests/examples/playback/playback-test.c:
+ * tests/examples/seek/jsseek.c:
+ * tests/examples/snapshot/snapshot.c:
+ * tests/icles/stress-playbin.c:
+ Pass the code through codespell
+
+2019-08-30 13:27:28 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/ogg/gstoggdemux.c:
+ oggdemux: fix werror build on macos
+ ../ext/ogg/gstoggdemux.c:1071:7: error: format specifies type 'long' but the argument has type 'ogg_int64_t' (aka 'long long') [-Werror,-Wformat]
+ packet->granulepos);
+ ^~~~~~~~~~~~~~~~~~~
+ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:1062:96: note: expanded from macro 'GST_DEBUG_OBJECT'
+ #define GST_DEBUG_OBJECT(obj,...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_DEBUG, obj, __VA_ARGS__)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
+ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:646:31: note: expanded from macro 'GST_CAT_LEVEL_LOG'
+ (GObject *) (object), __VA_ARGS__); \
+ ^~~~~~~~~~~
+ ../ext/ogg/gstoggdemux.c:1312:15: error: format specifies type 'long' but the argument has type 'ogg_int64_t' (aka 'long long') [-Werror,-Wformat]
+ packet.granulepos);
+ ^~~~~~~~~~~~~~~~~~
+ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:1060:98: note: expanded from macro 'GST_WARNING_OBJECT'
+ #define GST_WARNING_OBJECT(obj,...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_WARNING, obj, __VA_ARGS__)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
+ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:646:31: note: expanded from macro 'GST_CAT_LEVEL_LOG'
+ (GObject *) (object), __VA_ARGS__); \
+ ^~~~~~~~~~~
+
+2019-08-30 13:13:54 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/meson.build:
+ gl: also build plugin with -fobjc-arc
+ Fixes macos werror build
+ ../ext/gl/caopengllayersink.m:336:23: error: '__bridge_retained' casts have no effect when not using ARC [-Werror,-Warc-bridge-casts-disallowed-in-nonarc]
+ ca_sink->layer = (__bridge_retained gpointer)layer;
+ ^~~~~~~~~~~~~~~~~~
+
+2019-08-30 13:00:14 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m:
+ glwindow/cocoa: silence unused-variable warning
+ We are using ARC to cleanup after ourselves.
+ ../gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m:159:20: error: unused variable 'queue' [-Werror,-Wunused-variable]
+ dispatch_queue_t queue = (__bridge_transfer dispatch_queue_t) window->priv->gl_queue;
+ ^
+
+2019-08-29 00:48:16 +1000 Jan Schmidt <jan@centricular.com>
+
+ * m4/gst-gl.m4:
+ m4/gst-gl: Add dummy GST_GL_HAVE_WINDOW_WINRT
+ Add a dummy define to make fix the autotools build for now. To
+ actually build WinRT support, use the meson build.
+
+2019-08-29 01:21:12 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+ glcontext/egl: fallback to WINDOW_BIT if PBUFFER_BIT fails
+ There are some drivers that do not advertise any PBUFFER EGLConfig's.
+
+2019-08-28 11:24:01 -0700 Jonas Larsson <ljonas@google.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ eglimage: Fix memory leak
+ Also free the GstEGLImage struct allocated by g_new0.
+ Fixes #661
+
+2019-08-27 00:10:32 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/audio/gstaudioaggregator.h:
+ * gst-libs/gst/video/gstvideoaggregator.h:
+ {audio,video}aggregator: define autoptr cleanup functions
+
+2019-08-21 19:04:56 +0800 Hou Qi <qi.hou@nxp.com>
+
+ * gst-libs/gst/audio/gstaudiodecoder.c:
+ audiodecoder: fix ctitical info assertion 'GST_IS_CAPS (dec->priv->ctx.caps)' failed
+ Matroskademux will send gap event when lag of video and audio is over 3 seconds.
+ audiodecoder needs to handle gap event and set default output caps.
+ Only audio info is set, while output caps is ignored. This cause the assertion failed.
+ Need to fill output caps in gst_audio_decoder_negotiate_default_caps() with
+ negotiated caps to avoid critical info printed when check it later.
+
+2019-05-21 11:44:39 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+ * gst-libs/gst/gl/egl/gstgldisplay_egl.c:
+ * gst-libs/gst/gl/gstglconfig.h.meson:
+ * gst-libs/gst/gl/gstglwindow.c:
+ * gst-libs/gst/gl/meson.build:
+ * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.c:
+ * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.h:
+ * meson_options.txt:
+ gstgl: Add a new window type for WinRT
+ This is needed for using GstGL with ANGLE as the GLES implementation
+ in Universal Windows Platform apps that use the Windows Runtime
+ (WinRT) instead of Win32, which is deprecated and not allowed in
+ Windows Store apps.
+ This has been tested with Servo on the Microsoft HoloLens 2, and seems
+ to work quite well.
+
+2019-08-27 01:03:40 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/pbutils/encoding-target.c:
+ encoding-target: fix SECTION comment syntax
+ See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/658
+
+2019-08-26 07:54:48 +0200 Niels De Graef <nielsdegraef@gmail.com>
+
+ * ext/cdparanoia/gstcdparanoiasrc.c:
+ * ext/gl/gstglfilterapp.c:
+ * ext/gl/gstglfilterbin.c:
+ * ext/gl/gstglfiltershader.c:
+ * ext/gl/gstglimagesink.c:
+ * ext/gl/gstglmixerbin.c:
+ * ext/gl/gstglsinkbin.c:
+ * ext/gl/gstglsrcbin.c:
+ * gst-libs/gst/app/gstappsink.c:
+ * gst-libs/gst/app/gstappsrc.c:
+ * gst-libs/gst/gl/gstgldisplay.c:
+ * gst-libs/gst/gl/gstglwindow.c:
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ * gst-libs/gst/rtsp/gstrtspextension.c:
+ * gst/encoding/gstencodebin.c:
+ * gst/overlaycomposition/gstoverlaycomposition.c:
+ * gst/playback/gstdecodebin2.c:
+ * gst/playback/gstdecodebin3.c:
+ * gst/playback/gstparsebin.c:
+ * gst/playback/gstplaybin2.c:
+ * gst/playback/gstplaybin3.c:
+ * gst/playback/gstplaysink.c:
+ * gst/playback/gsturidecodebin.c:
+ * gst/playback/gsturidecodebin3.c:
+ * gst/playback/gsturisourcebin.c:
+ * gst/tcp/gstmultifdsink.c:
+ * gst/tcp/gstmultihandlesink.c:
+ * gst/tcp/gstmultisocketsink.c:
+ Don't pass default GLib marshallers for signals
+ By passing NULL to `g_signal_new` instead of a marshaller, GLib will
+ actually internally optimize the signal (if the marshaller is available
+ in GLib itself) by also setting the valist marshaller. This makes the
+ signal emission a bit more performant than the regular marshalling,
+ which still needs to box into `GValue` and call libffi in case of a
+ generic marshaller.
+ Note that for custom marshallers, one would use
+ `g_signal_set_va_marshaller()` with the valist marshaller instead.
+
+2019-08-23 18:28:16 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/theora/gsttheoradec.c:
+ * ext/theora/gsttheoraenc.c:
+ * ext/vorbis/gstvorbisdec.c:
+ * ext/vorbis/gstvorbisenc.c:
+ docstrings: port ulinks to markdown links
+
+2019-08-21 14:50:12 +0000 Piotr Drąg <piotrdrag@gmail.com>
+
+ * po/POTFILES.in:
+ po: update POTFILES
+
+2019-04-04 17:41:13 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * docs/meson.build:
+ * gst-libs/gst/gl/Makefile.am:
+ * gst-libs/gst/gl/egl/Makefile.am:
+ * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+ * gst-libs/gst/gl/egl/gstgldisplay_egl.c:
+ * gst-libs/gst/gl/egl/gstgldisplay_egl_device.c:
+ * gst-libs/gst/gl/egl/gstgldisplay_egl_device.h:
+ * gst-libs/gst/gl/gstgldisplay.c:
+ * gst-libs/gst/gl/gstgldisplay.h:
+ * gst-libs/gst/gl/meson.build:
+ gl/egl/display: Add support EGLDevice display type
+ Simple addition for supporting EXT_platform_device typed display.
+ It's a kind of special display type (part of EGL specification)
+ which has no window at all.
+ To use EGLDevice explicitly, set environment "GST_GL_WINDOW=egl-device"
+ See also https://www.khronos.org/registry/EGL/extensions/EXT/EGL_EXT_platform_device.txt
+
+2019-04-05 00:43:02 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/gstglwindow.c:
+ * gst-libs/gst/gl/gstglwindow.h:
+ glwindow: Introduce new vfunc for querying output surface availability
+ Only dummy window will return FALSE for now.
+
+2019-08-20 21:10:45 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-hdr.c:
+ * gst-libs/gst/video/video-hdr.h:
+ video-hdr: Update documentation
+ * Fix typo
+ s/nunormalized/normalized/g
+ * Update GstVideoMasteringDisplayInfo description
+ Each values are not array.
+ * Add missing newline between arguments description and
+ detailed comment.
+
+2019-08-07 16:15:40 +0100 Philippe Normand <philn@igalia.com>
+
+ * ext/gl/gltestsrc.c:
+ * ext/gl/gstgltestsrc.c:
+ * ext/gl/gstgltestsrc.h:
+ * gst-libs/gst/gl/Makefile.am:
+ * gst-libs/gst/gl/gl.h:
+ * gst-libs/gst/gl/gstgl_fwd.h:
+ * gst-libs/gst/gl/gstglbasesrc.c:
+ * gst-libs/gst/gl/gstglbasesrc.h:
+ * gst-libs/gst/gl/meson.build:
+ gl: New pushsrc-based glbasesrc base class
+ The gltestsrc element was refactored to inherit from this base class which
+ handles the GL context. The sub-class only needs to implement the gl_start,
+ gl_stop and fill_gl_memory vfuncs, along with properly advertizing the GL APIs
+ it supports through the supported_gl_api GstGLBaseSrc class attribute.
+
+2019-08-16 11:58:28 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-frame.c:
+ video-frame: Take TFF flag from the video info if it was set in there
+ The caps and thus the video info have preference. If the field order is
+ set in there then it applies to all frames.
+ This works around issues where the tff field order is only set in the
+ caps but not additionally in the buffer flags.
+
+2019-08-12 18:00:34 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/audio/gstaudioaggregator.c:
+ audioaggregator: add missing Since tag
+
+2019-08-09 16:04:03 -0400 Xavier Claessens <xavier.claessens@collabora.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ glcolorconvert: Fix external-oes shader
+ The #extention must come before 'precision highp float;'.
+ Closes: #650
+
+2019-08-12 22:42:10 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-hdr.h:
+ video-hdr: Fix document typo
+ Fix missing document update. GstVideoContentLightMeta was changed to
+ GstVideoContentLightLevel during code review.
+
+2019-08-11 14:16:51 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/video/video-color.c:
+ video-color: keep UNKNOWN colorimetry define automatically up-to-date
+ Follow-up to !310 and helps with backport commits like !360
+
+2019-08-08 11:43:03 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglmemory.h:
+ gl: Add support for P016 format
+ All implementation for P010_10LE/BE can be reused.
+
+2019-08-08 01:06:57 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ * gst-libs/gst/video/video-info.c:
+ video: Add P016 LE/BE formats
+ Add semi-planar 4:2:0 16 bits format.
+
+2019-08-07 20:18:34 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/pango/gsttimeoverlay.c:
+ timeoverlay: chain up finalize
+ Mistakenly forgot to amend this in for !325
+
+2019-08-06 21:49:04 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ * gst-libs/gst/video/video-info.c:
+ video: Add Y444_16LE and Y444_16BE formats
+ Add 16 bits planar 4:4:4 YUV formats.
+
+2019-08-07 13:01:07 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-anc.c:
+ video-anc: Fix ADF detection when trying to extract data from vanc
+ Previously we were checking offset 1 twice, but the second check
+ should've been for offset 2.
+
+2019-07-10 14:00:56 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/pango/gsttimeoverlay.c:
+ * ext/pango/gsttimeoverlay.h:
+ timeoverlay: add a property to show times as dates
+ In this mode, buffer timestamps are displayed as an absolute date
+ since a user-specifiable epoch. The format is also specifiable as
+ a string property, that will be passed to g_date_time_format().
+
+2019-08-02 10:26:24 -0400 Aaron Boxer <aaron.boxer@collabora.com>
+
+ * tests/examples/playback/playback-test.c:
+ playback-test: plug some memory leaks
+
+2019-07-30 04:01:55 +1000 Jan Schmidt <jan@centricular.com>
+
+ * gst-libs/gst/tag/gstexiftag.c:
+ exiftag: Don't output rational numbers with denominator = 0
+
+2019-05-28 17:43:25 +0200 Lucas Stach <l.stach@pengutronix.de>
+
+ * gst-libs/gst/gl/wayland/wayland_event_source.c:
+ gl/wayland: fix wayland event source burning CPU
+ Commit c71dd72b "gl/wayland: fix glib mainloop integration" was overeager
+ in removing the poll result test from the check function. This caused
+ dispatch to be called even if no new events are available on the
+ Wayland connection, which in turn would wake up the glib mainloop,
+ causing effectively a tight loop without ever blocking on the poll.
+ Fixes #603
+
+2019-07-24 10:12:17 +0200 Martin Liska <mliska@suse.cz>
+
+ * configure.ac:
+ Add used attribute in order to make NEON detection working with -flto.
+
+2019-07-24 14:25:19 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstgluploadelement.c:
+ gluploadelement: don't passthrough on same caps
+ If we do, then multiple disjoint OpenGL contexts will not perform the
+ necessary download and reupload of data that is necessary to cross between
+ each OpenGL context sharegroup.
+
+2019-07-23 13:54:24 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/typefind/gsttypefindfunctions.c:
+ typefindfunctions: Check for NULL return of gst_type_find_peek() instead of segfaulting in otio typefinder
+ See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/329#note_194943
+
+2019-07-23 09:09:35 +0900 Wonchul Lee <w.lee@lge.com>
+
+ * gst-libs/gst/gl/gstgldisplay.c:
+ gldisplay: fix g-i warning
+
+2019-07-12 16:37:10 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/typefind/gsttypefindfunctions.c:
+ typefind: Add typefind functions for fcpxml, xmel and otio file formats
+
+2019-07-19 18:52:02 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * tests/check/elements/audiomixer.c:
+ * tests/check/elements/compositor.c:
+ aggregator tests: fix seek event seqnums
+ In
+ https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/207,
+ aggregator starts ignoring seek events with duplicate seqnums. We thus
+ need to update the seqnum of events when reusing them multiple times.
+
+2019-07-16 12:23:01 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ * tests/check/libs/video.c:
+ video-format: add gst_video_format_info_component()
+ New API to find out which components are packed in a given plane.
+ Will prevent us from assuming a 1-1 mapping between planes and
+ components.
+
+2019-07-12 16:56:52 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+ basedepayload: do not create segment in onvif mode
+ basedepayload generates its own segment in a pretty unconventional
+ manner, relying on information in the caps such as npt-start or
+ npt-stop, usually set by rtspsrc.
+ In ONVIF mode, rtspsrc will generate the correct segment and this
+ logic in rtpbasedepayload will not be needed, this commit allows
+ rtspsrc to signal that through the caps.
+
+2019-07-18 08:46:42 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/audio/gstaudioaggregator.c:
+ audioaggregator: Split getcaps() function into two
+ One for convert pads and one for normal sink pads.
+
+2019-07-16 10:40:16 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ videoaggregator: We can only convert the format if a GstVideoAggregatorConvertPad is used
+ Otherwise assume that we can at least support any framerate.
+
+2019-07-16 10:34:24 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/audio/gstaudioaggregator.c:
+ audioaggregator: Always take first configure pad's rate and downstream caps into account when calculating allow sink caps
+ While we can convert between all formats apart from the rate, we
+ actually need to make sure that we comply with a) the rate of the first
+ configured pad and b) also all the allowed rates from downstream.
+
+2019-07-16 10:02:08 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/audio/gstaudioaggregator.c:
+ audioaggregator: If we don't have a GstAudioAggregatorConvertPad, don't assume that we can actually convert
+
+2019-07-15 16:08:34 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/audio/gstaudioaggregator.c:
+ audioaggregator: always use downstream's rate requirements
+ We were previously only fixating the rate in the getcaps
+ implementation when downstream was requiring a discrete value,
+ causing negotiation to fail when upstream was capable of rate
+ conversion, but not made aware that it had to occur.
+ Instead of fixating the rate, we can simply update our sink
+ template caps with whatever GValue the downstream caps are holding
+ as their rate field.
+ Allows negotiation to successfully complete with pipelines such as:
+ audiotestsrc ! audio/x-raw, rate=48000 ! audioresample ! audiomixer name=m ! \
+ audio/x-raw, rate={800, 1000} ! autoaudiosink \
+ audiotestsrc ! audio/x-raw, rate=44100 ! audioresample ! m.
+
+2019-07-17 19:11:12 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * docs/meson.build:
+ meson: Don't generate doc cache when no plugins are enabled
+ Fixes gst-build with -Dauto-features=disabled
+
+2019-07-17 02:44:12 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-color.c:
+ video-color: Enhance documentation of gst_video_colorimetry_to_string()
+ It could return null string. So need to clarify when it will be null.
+
+2019-07-10 12:46:17 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/libs/video.c:
+ tests: video: Add test conversion between colorimetry and ISO/IEC 23001-8 values
+ Test forward/backword conversion of color{matrix,transfer,primaries}.
+
+2019-07-10 00:16:58 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-color.c:
+ * gst-libs/gst/video/video-color.h:
+ video-color: Add util functions for conversion from/to ISO/IEC 23001-8
+ ... and also as known as ITU-T H.273.
+ The conversion has been handled per plugin for now. That causes
+ code duplication a lot also some plugins might not be updated with newly introduced
+ color{matrix,transfer,primaries} enum value(s).
+ Instead of handling it per plugin, centralized handling can remove such
+ code duplication and make plugins be up-to-dated.
+
+2019-07-09 14:28:46 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/sdp/gstsdpmessage.c:
+ * tests/check/libs/sdp.c:
+ sdp: Add support for parsing the extmap attribute from caps and storing inside caps
+ The extmap attribute allows mapping RTP extension header IDs to
+ well-known RTP extension header specifications. See RFC8285 for details.
+ We store the extmap attribute either as string in the caps
+ extmap-X=extensionname
+ where X is the integer extension header ID, or as 3-tuple of strings
+ extmap-X=<direction,extensionname,extensionattributes>
+ where direction or extensionattributes are allowed to be the empty
+ string.
+ Both formats are allowed because usually only the extension name is
+ given and it's much simpler to handle in caps.
+
+2019-07-10 21:57:13 +0000 Thibault Saunier <tsaunier@gnome.org>
+
+ * gst/typefind/gsttypefindfunctions.c:
+ Revert "typefind: Hold off making suggestions too early for MPEG based formats"
+ This reverts commit 36319169d06f778acee2b33d728d2089d15370d6
+
+2019-06-26 15:53:11 -0600 Thomas Bluemel <tbluemel@control4.com>
+
+ * gst/typefind/gsttypefindfunctions.c:
+ typefind: Hold off making suggestions too early for MPEG based formats
+ By suggesting possible detection too early, it's possible that
+ the wrong format is detected. Hold off making suggestions until one
+ of the following conditions is met:
+ * Probability > GST_TYPE_FIND_LIKELY
+ * At least MPEG_MIN_PROBE_LENGTH bytes have been examined
+ * EOS, in which case the best guess wins
+ Fixes #628
+
+2019-07-10 01:27:43 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/examples/overlay/win32-videooverlay.c:
+ examples: win32-videooverlay: Fix C2440 build error
+ Follow WNDPROC define to avoid implicit type conversion.
+
+2019-06-25 19:15:29 -0700 Dylan McCall <dylan@endlessm.com>
+
+ * gst-libs/gst/gl/egl/gstgldisplay_egl.c:
+ * gst-libs/gst/gl/gstgldisplay.c:
+ * gst-libs/gst/gl/gstgldisplay.h:
+ * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c:
+ * gst-libs/gst/gl/x11/gstgldisplay_x11.c:
+ gstgldisplay: Add public foreign_display property
+ We use this property in gst_gl_display_egl_from_gl_display, to set
+ foreign_display for the new GstGLDisplayEGL instance. This fixes a
+ problem where gst_gl_display_egl_finalize calls EglTerminate on a
+ pre-existing EGL connection.
+
+2019-07-05 20:14:34 +0530 Sumaid Syed <sumaidsyed@gmail.com>
+
+ * gst-libs/gst/tag/gstid3tag.c:
+ * gst-libs/gst/tag/gstvorbistag.c:
+ * gst-libs/gst/tag/tag.h:
+ * gst-libs/gst/tag/tags.c:
+ * tests/check/libs/tag.c:
+ tag: Add tags for acoustid id & acoustid fingerprint
+ Mapping followed: https://picard.musicbrainz.org/docs/mappings/
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/612
+
+2019-05-22 14:26:42 +0530 Sumaid <sumaidsyed@gmail.com>
+
+ * gst-libs/gst/tag/gstid3tag.c:
+ * gst-libs/gst/tag/gstvorbistag.c:
+ * gst-libs/gst/tag/tag.h:
+ * gst-libs/gst/tag/tags.c:
+ * tests/check/libs/tag.c:
+ tag: Repair support for MusicBrainz IDs
+ Add missing release group ID and track ID
+ Mapping Followed:
+ https://picard.musicbrainz.org/docs/mappings/
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/612
+
+2019-07-06 17:02:27 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/examples/overlay/meson.build:
+ * tests/examples/overlay/win32-videooverlay.c:
+ examples: Add a video overlay example for WIN32 videosink elements
+ User can set the target WIN32 video element via "videosink" command line
+ option. Default is glimagesink.
+
+2019-07-03 09:07:06 +0000 Marc Leeman <marc.leeman@gmail.com>
+
+ * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
+ egl: wl_egl_window is not wl_proxy
+ It seems that eglCreatePlatformWindowSurfaceEXT is failing (with
+ EGL_BAD_ALLOC) because it thinks an EGL surface has already been created
+ for the wl_egl_window. The reason is that the "driver_private" field of
+ the wl_egl_window is getting clobbered by the function
+ wl_proxy_set_queue().
+ Since a wl_egl_window is not a wl_proxy, it shouldn't be passed to
+ wl_proxy_set_queue(). It just wraps a wl_surface (which is a wl_proxy).
+ And it looks like the queue for that surface is getting set earlier on
+ in the function anyway.
+ See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/621#note_184582
+
+2019-06-30 13:10:50 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tools/gst-play.c:
+ gst-play: Handle "space" key event correctly on Windows
+ The key name string given by GetKeyNameText() can have uppercase letter.
+
+2019-06-28 07:22:17 +0200 Göran Jönsson <goranjn@axis.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ rtspconnection: data-offset increase not set
+
+2019-06-27 08:04:07 +0200 Göran Jönsson <goranjn@axis.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ rtpsconnection: Fix number of n_vectors
+ Body_offset mean that so much data have been written.
+ Without this patch n_vectors somtimes becomes one more than it should
+ and then there will be an vector that have a random size causing
+ writev_bytes to cause a "Bad address" error.
+
+2019-06-26 17:05:04 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst-libs/gst/video/video-color.c:
+ video-color: Add compile-time assert for ColorimetryInfo enum
+ A comment is not sufficient because this will break when
+ cherry-picking or backporting commits.
+
+2019-06-26 03:39:54 -0400 Doug Nazar <nazard@nazar.ca>
+
+ * gst-libs/gst/audio/gstaudiodecoder.c:
+ audiodecoder: Fix leak on failed audio gaps
+ If we fail to process the gap event we need to unref the event or
+ we end up with a leak.
+
+2019-06-24 09:44:29 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/compositor/compositor.c:
+ compositor: fix compiler warning due to c99-ism
+
+2019-06-23 11:34:49 +0100 Philippe Normand <philn@igalia.com>
+
+ * gst-libs/gst/gl/gstglupload.c:
+ glupload: Keep track of cached EGLImage texture format
+ This patch fixes the following critical warning:
+ CRITICAL **: 11:33:32.843: Unknown GL format 0x0 provided
+ It would happen during the setup of a second pipeline involving the DMABuf
+ uploader, typically with a v4l2src element. The warning was raised because the
+ uploader had a cached EGLImage already filled but the formats were not
+ synchronized accordingly.
+
+2018-11-19 17:19:33 +0100 Marco Felsch <m.felsch@pengutronix.de>
+
+ * gst-libs/gst/video/video-info.c:
+ video-info: parse field-order for all interleaved formats
+ The "field-order" is related for all interlace_mode modes except the
+ "progressive" mode. So instead of or'ing each mode we can use the
+ already supported GST_VIDEO_INFO_IS_INTERLACED macro.
+
+2019-06-13 13:07:06 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglformat.h:
+ * gst-libs/gst/gl/gstglmemory.h:
+ glimagesink: add support for P010 variants
+ This makes a pipeline below works:
+ little endian:
+ gst-launch-1.0 videotestsrc ! video/x-raw,format=P010_10LE ! glimagesink
+ big endian:
+ gst-launch-1.0 videotestsrc ! video/x-raw,format=P010_10BE ! glimagesink
+
+2019-06-18 16:14:33 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ glcolorconvert: rename the NV12/NV12 shader to semi planar
+ This shader can be used for other semi planar formats, e.g. P010_10LE
+
+2019-06-17 16:46:21 -0700 Song Bing <bing.song@nxp.com>
+
+ * gst/playback/gstplaysink.c:
+ playsink: Set ts-offset to text sink.
+ Find right text sink to set the ts-offset.
+
+2019-06-05 09:26:08 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ * gst-libs/gst/gl/gstglcolorconvert.c:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglformat.h:
+ * gst-libs/gst/gl/gstglmemory.h:
+ glimagesink: add support for BGR10A2_LE / RGB10A2_LE
+ This makes a pipeline below work:
+ gst-launch-1.0 videotestsrc ! video/x-raw,format={BGR10A2_LE, \
+ RGB10A2_LE} ! glimagesink
+
+2019-06-14 14:53:56 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * gst-libs/gst/gl/gstglformat.c:
+ glformat: removde dead break after return
+
+2019-06-17 21:57:33 -0400 Roman Sivriver <roman@rsiv.net>
+
+ * gst-libs/gst/video/video-anc.c:
+ video-and: Fix buffer overflow detected by asan
+ gst_meta_api_type_register() assumes that the last tags element is null, but it wasn't
+ ==17422==ERROR: AddressSanitizer: global-buffer-overflow on address 0x7f4e2a67c998 at pc 0x7f4e2a0c92ac bp 0x7ffcc41f80b0 sp 0x7ffcc41f80a0
+ READ of size 8 at 0x7f4e2a67c998 thread T0
+ #0 0x7f4e2a0c92ab in gst_meta_api_type_register ../subprojects/gstreamer/gst/gstmeta.c:94
+ #1 0x7f4e2a5582c3 in gst_video_afd_meta_api_get_type ../subprojects/gst-plugins-base/gst-libs/gst/video/video-anc.c:1146
+ #2 0x404c7c in invoke_get_type (/home/ubuntu/gst-build/build/tmp-introspect5gv1rovo/GstVideo-1.0+0x404c7c)
+ #3 0x406b5c in dump_irepository (/home/ubuntu/gst-build/build/tmp-introspect5gv1rovo/GstVideo-1.0+0x406b5c)
+ #4 0x407089 in main (/home/ubuntu/gst-build/build/tmp-introspect5gv1rovo/GstVideo-1.0+0x407089)
+ #5 0x7f4e295b4b6a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x26b6a)
+ #6 0x404479 in _start (/home/ubuntu/gst-build/build/tmp-introspect5gv1rovo/GstVideo-1.0+0x404479)
+ 0x7f4e2a67c998 is located 40 bytes to the left of global variable 'tags' defined in '../subprojects/gst-plugins-base/gst-libs/gst/video/video-anc.c:1232:25' (0x7f4e2a67c9c0) of size 24
+ 0x7f4e2a67c998 is located 0 bytes to the right of global variable 'tags' defined in '../subprojects/gst-plugins-base/gst-libs/gst/video/video-anc.c:1141:25' (0x7f4e2a67c980) of size 24
+ SUMMARY: AddressSanitizer: global-buffer-overflow ../subprojects/gstreamer/gst/gstmeta.c:94 in gst_meta_api_type_register
+
+2018-10-15 22:35:09 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/libs/pbutils.c:
+ tests: pbutils: Add test parsing H265 profiles
+
+2018-10-15 21:16:56 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/pbutils/codec-utils.c:
+ codec-utils: Add parsing H265 range extensions profiles
+ Add support all h265 profiles defined by ITU-T H.264 (02/2018) revision
+
+2019-06-15 14:33:32 +0900 Wonchul Lee <chul0812@gmail.com>
+
+ * gst-libs/gst/app/gstappsrc.c:
+ appsrc: Fix typo in documentation
+
+2019-06-15 10:41:29 +0900 Wonchul Lee <chul0812@gmail.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ videodecoder: Fix typo in documentation
+
+2017-10-10 15:45:14 +0200 Håvard Graff <havard.graff@gmail.com>
+
+ * pkgconfig/meson.build:
+ meson.build: use join_paths() on prefix
+ So that "/" are correct on Windows.
+
+2019-05-29 13:24:04 +0300 Adrian Negreanu <adrian.negreanu@nxp.com>
+
+ * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+ glcontext_egl: check if eglChooseConfig has a matching config
+ The specs recommends to also check the num_config parameter.
+
+2019-06-14 02:32:50 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/compositor/compositor.c:
+ compositor: Copy frames as-is when possible
+ The blend functions for alpha formats need to do more work than just
+ doing a memcpy, so we can do a memcpy when we know that a blend is not
+ actually needed.
+ 1080p AYUV ! compositor background=transparent ! fakesink - 56% faster
+ Specifically, when we don't draw the background and the first pad we
+ draw completely covers the output frame, we can just copy it as-is.
+ The rest of the pads (if any) will get composited on top normally.
+
+2019-06-13 10:36:05 +0200 Stian Selnes <stian@pexip.com>
+
+ * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+ * tests/check/libs/rtpbasedepayload.c:
+ rtpbasedepayload: Add max-reorder property
+ Add max-reorder property to make the old hard coded reordering limit of
+ 100 configurable. It's particularly useful in some scenarios to set
+ max-reorder=0 to disable the behavior that the depayloader will drop
+ packets.
+ Note that although the default value is 100, the default limit has
+ increased with one because of the changed if-test. This was done to
+ allow the max-reorder value to be more intuitive. See tests.
+
+2019-06-13 20:30:03 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/compositor/compositor.c:
+ compositor: Sprinkle some const in prototypes
+ These helper functions don't edit the rectangles passed in.
+
+2019-05-26 17:47:20 +0200 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/compositor/compositor.c:
+ compositor: Skip background if transparent and obscured
+ If the background is transparent and obscured by a pad that may or may
+ not have alpha, we can still skip drawing it entirely
+ AYUV 1080p ! compositor background=transparent ! fakesink - 75% faster
+
+2019-05-26 17:30:12 +0200 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/compositor/compositor.c:
+ compositor: Skip the background when not visible
+ We don't need to waste time drawing the background when one of the
+ pads completely covers the output and there's no alpha on the pad or
+ in the video format. Speedups:
+ I420 1080p ! compositor ! fakesink - 72% faster
+ I420 1080p ! compositor background=black ! fakesink - 45% faster
+
+2019-05-26 18:28:18 +0200 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/compositor/blend.c:
+ compositor: Don't log per-frame under GST_INFO
+
+2019-05-26 17:29:23 +0200 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/compositor/compositor.c:
+ compositor: Factor-out rectangle-obscuring check
+ We're going to use this for checking if one of the pads obscures the
+ background.
+
+2019-05-26 15:23:25 +0200 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/compositor/compositor.c:
+ * gst/compositor/compositor.h:
+ compositor: Add some comments, remove outdated ones
+
+2019-05-26 15:23:06 +0200 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/compositor/compositor.c:
+ compositor: Remove unused function argument
+
+2019-06-05 18:23:16 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tests/check/pipelines/gl-launch-lines.c:
+ tests/gl-launch-lines: gltestsrc works on gles2/opengl3 now
+ There's no need to feature gate the gltestsrc pipelines anymore
+
+2019-06-05 18:17:35 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglvideomixer.c:
+ glvideomixer: perform _get_highest_precision on the GL thread
+ gst_gl_shader_string_get_highest_precision needs to make an OpenGL call
+ so execution outside the OpenGL thread and context results in undefined
+ behaviour.
+
+2019-06-05 18:06:57 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglmosaic.c:
+ * ext/gl/gstglmosaic.h:
+ * tests/check/pipelines/gl-launch-lines.c:
+ glmosaic: port to opengl3/gles2
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/543
+
+2019-06-13 15:36:56 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglcontext.c:
+ glcontext: add a couple of preconditions of invalid usage
+
+2019-06-12 17:20:10 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * gst-libs/gst/gl/gstglcontext.c:
+ gl: detect possible GL version prefix
+ Instead of checking if the requested GL API is GLES2 (because ANY can
+ be set) the string is matched with the GLES2 prefix, and if so, then
+ the string is offset.
+
+2018-10-16 16:56:26 +0200 Havard Graff <havard.graff@gmail.com>
+
+ * tests/check/meson.build:
+ meson: add rtpmeta-tests
+
+2019-06-12 14:32:03 +0200 Havard Graff <havard.graff@gmail.com>
+
+ * gst-libs/gst/rtp/gstrtpbasepayload.c:
+ rtpbasepayload: don't use GINT_TO_POINTER with GType
+ GType can (and will) be 64bit. GINT_TO_POINTER is not.
+ This will result in the api-type checked for being a different one than
+ it actually is...
+
+2019-06-12 14:31:09 +0200 Havard Graff <havard.graff@gmail.com>
+
+ * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+ * tests/check/libs/rtpbasedepayload.c:
+ rtpbasedepayload: don't consider existing GstRTPSourceMeta
+ The meta should always be generated based on what is present in the
+ rtp-header.
+
+2019-06-12 12:32:33 +0000 Marc Leeman <marc.leeman@gmail.com>
+
+ * gst-libs/gst/rtp/gstrtppayloads.c:
+ gstrtppayloads: add vp8/vp9/opus encoding-name
+ Adding these encoding names allows easy lookup of the caps based on the
+ encoding-name.
+
+2019-06-12 04:45:09 +0900 Eike Hein <hein@kde.org>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ rtspconnection: Start CSeq at 1
+ RFC 7826 recommends (but does not require) starting at 0,
+ but at least one known server implementation fails to copy
+ request sequence numbers <1 into responses due to an
+ incorrect null check.
+ The server known to exhibit this behavior is the Parrot
+ Streaming Server, serving video from their UAV devices.
+ A fix has been submitted upstream as well:
+ https://github.com/Parrot-Developers/librtsp/pull/2
+ The Parrot developers are known to have tested with LibVLC.
+ In WireShark debugging, LibVLC appears to start with a CSeq
+ of 2, which is likely why this bug went unnoticed.
+ This reverts 487595a7d6e2d, which set this to 0 citing the
+ RFC. The switch to 0 was thus a recent one; it's therefore
+ possible server implementors relied on the previous
+ GStreamer client behavior in their tests as well.
+ Fixes #624.
+
+2019-06-03 15:51:02 +0800 Haihua Hu <jared.hu@nxp.com>
+
+ * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c:
+ viv-fb: fix build break for GST_GL_API
+ Need include config.h in gstglwindow_viv_fb_egl.c
+
+2019-06-07 22:29:10 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/pbutils/gstdiscoverer-types.c:
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ discoverer: Plug some leaks in the cache loading path
+
+2019-06-08 02:57:37 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tests/check/libs/gstglheaders.c:
+ gl/tests: fix shader creation tests part 2
+ Continuation of 4fd7a2c783e96e5ebec513f8fd178ba34b2a527f
+ We check the availability of the high precision floats in GLSL shaders
+ which involves an OpenGL call and thus is required to be executed on the
+ OpenGL thread.
+ The tests were not respecting that and could fail on more strict
+ drivers.
+ Tests update for 675415bf2ea9ddc75ea5e5b6eae9ae942c19d6dc
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/590
+
+2019-06-07 20:51:39 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tests/check/libs/gstglheaders.c:
+ * tests/check/libs/gstglslstage.c:
+ gl/tests: fix shader creation tests
+ We check the availability of the high precision floats in GLSL shaders
+ which involves an OpenGL call and thus is required to be executed on the
+ OpenGL thread.
+ The tests were not respecting that and could fail on more strict
+ drivers.
+ Tests update for 675415bf2ea9ddc75ea5e5b6eae9ae942c19d6dc
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/590
+
+2019-06-05 22:25:45 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * tests/check/gst-plugins-base.supp:
+ valgrind: suppress incorrect conditional error in orc backup code
+
+2019-06-05 22:20:43 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/pbutils/gstdiscoverer.c:
+ discoverer: unref "next" variant when parsing from variant
+
+2019-06-05 22:10:47 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * tests/check/elements/audiorate.c:
+ valgrind: free buffer list in audiorate test
+
+2019-06-05 22:06:26 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * tests/check/gst-plugins-base.supp:
+ valgrind: suppress conditional jump or move error
+ valgrind gets confused with the following piece of code:
+ var37.i = ORC_CLAMP_SL((orc_int64)var33.i + (orc_int64)var34.i);
+ Where all variables are orc_int32
+
+2019-06-05 13:25:34 +0100 Fernando Herrrera <fernando.herrera@oxsight.co.uk>
+
+ * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
+ wayland: set the event queue also for the xdg_wm_base object
+
+2019-06-04 09:01:47 +0200 Niels De Graef <niels.degraef@barco.com>
+
+ * gst-libs/gst/allocators/gstdmabuf.h:
+ * gst-libs/gst/allocators/gstfdmemory.h:
+ * gst-libs/gst/app/gstappsink.h:
+ * gst-libs/gst/app/gstappsrc.h:
+ * gst-libs/gst/audio/audio-info.h:
+ * gst-libs/gst/audio/gstaudiobasesink.h:
+ * gst-libs/gst/audio/gstaudiobasesrc.h:
+ * gst-libs/gst/audio/gstaudiocdsrc.h:
+ * gst-libs/gst/audio/gstaudioclock.h:
+ * gst-libs/gst/audio/gstaudiodecoder.h:
+ * gst-libs/gst/audio/gstaudioencoder.h:
+ * gst-libs/gst/audio/gstaudiofilter.h:
+ * gst-libs/gst/audio/gstaudioringbuffer.h:
+ * gst-libs/gst/audio/gstaudiosink.h:
+ * gst-libs/gst/audio/gstaudiosrc.h:
+ * gst-libs/gst/gl/egl/gstglcontext_egl.h:
+ * gst-libs/gst/gl/gstgl_fwd.h:
+ * gst-libs/gst/gl/gstglframebuffer.h:
+ * gst-libs/gst/pbutils/encoding-profile.h:
+ * gst-libs/gst/pbutils/encoding-target.h:
+ * gst-libs/gst/pbutils/gstdiscoverer.h:
+ * gst-libs/gst/pbutils/install-plugins.h:
+ * gst-libs/gst/rtp/gstrtpbaseaudiopayload.h:
+ * gst-libs/gst/rtp/gstrtpbasedepayload.h:
+ * gst-libs/gst/rtp/gstrtpbasepayload.h:
+ * gst-libs/gst/rtsp/gstrtspurl.h:
+ * gst-libs/gst/sdp/gstmikey.h:
+ * gst-libs/gst/sdp/gstsdpmessage.h:
+ * gst-libs/gst/tag/gsttagdemux.h:
+ * gst-libs/gst/tag/gsttagmux.h:
+ * gst-libs/gst/video/colorbalancechannel.h:
+ * gst-libs/gst/video/gstvideodecoder.h:
+ * gst-libs/gst/video/gstvideoencoder.h:
+ * gst-libs/gst/video/gstvideofilter.h:
+ * gst-libs/gst/video/gstvideopool.h:
+ * gst-libs/gst/video/gstvideosink.h:
+ * gst-libs/gst/video/gstvideoutils.h:
+ * gst-libs/gst/video/video-info.h:
+ * gst-libs/gst/video/video-overlay-composition.h:
+ Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally
+ Since we started depending on GLib 2.44, we can be sure this macro is
+ defined (it will be a no-op on compilers that don't support it). For
+ plugins we should just start using `G_DECLARE_FINAL_TYPE` which means we
+ no longer need the macro there, but for most types in base/gst-libs we
+ don't want to break ABI, which means it's better to just keep it like it
+ is (and use the `#ifdef` instead).
+
+2018-08-31 18:33:43 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * ext/alsa/Makefile.am:
+ * ext/alsa/gstalsadeviceprobe.c:
+ * ext/alsa/gstalsadeviceprobe.h:
+ * ext/alsa/gstalsadeviceprovider.c:
+ * ext/alsa/gstalsadeviceprovider.h:
+ * ext/alsa/gstalsaplugin.c:
+ * ext/alsa/gstalsasink.c:
+ * ext/alsa/gstalsasrc.c:
+ * ext/alsa/meson.build:
+ alsa: Implement a DeviceProvider
+ Removing gstalsadeviceprobe.[ch] as it was a relique from the 0.10
+ century.
+ This doesn't implement device monitoring but only probing, monitoring
+ should be implemented in its own commit.
+
+2019-06-04 15:04:03 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * docs/meson.build:
+ docs: override rtsp library project name
+ .. to avoid conflicts with the rtsp plugin
+
+2019-06-04 14:58:45 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * docs/meson.build:
+ docs: override rtp library project name
+ .. to avoid conflicts with the rtp plugin
+
+2019-05-31 23:02:53 +0200 Niels De Graef <niels.degraef@barco.com>
+
+ * configure.ac:
+ * meson.build:
+ meson: Bump minimal GLib version to 2.44
+ This means we can use some newer features and get rid of some boilerplate code using the G_DECLARE_* macros.
+ As discussed on IRC, 2.44 is old enough by now to start depending on it.
+
+2019-05-30 18:43:14 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * tests/check/elements/compositor.c:
+ compositor: remove invalid test
+ With https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/159,
+ a single flush start on an aggregator sinkpad will start the flushing
+ process if the aggregator isn't already flushing.
+ The behaviour that this test was checking for is thus no longer correct
+
+2019-05-28 17:04:51 +0200 Daniel Klamt <d.klamt@pengutronix.de>
+
+ * gst-libs/gst/video/gstvideoaffinetransformationmeta.c:
+ Added GI annotation for gstvideoaffinetransformationmeta apply_matrix
+ The problem is that Gobject Introspections does not understand the const
+ gfloat matrix[16] as an matrix but as an array of gfloasts but as just
+ one gfloat.
+ To fix this i added the annotation to the parameter
+ descriptions.
+
+2019-06-01 01:00:06 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * docs/meson.build:
+ docs: unprefix subproject paths
+ special case for app, renamed to applib to not conflict
+ with the plugin
+
+2019-05-30 01:12:59 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/pbutils/encoding-target.c:
+ * gst/audiotestsrc/gstaudiotestsrc.c:
+ * gst/playback/gstdecodebin3.c:
+ * gst/playback/gstparsebin.c:
+ * gst/playback/gstplaybin3.c:
+ * gst/playback/gsturisourcebin.c:
+ * gst/rawparse/gstrawbaseparse.c:
+ doc: remove xml from comments
+
+2019-05-29 14:41:10 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/overlaycomposition/gstoverlaycomposition.c:
+ overlaycompositor: Show the full example instead of a stripped down version
+
+2019-05-29 11:14:05 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ docs: update plugin docs cache
+
+2019-05-13 21:11:12 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst/overlaycomposition/meson.build:
+ doc: Add gstoverlaycomposition to the plugins list
+
+2019-05-25 19:43:33 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ Update plugin cache
+
+2019-05-25 17:26:52 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/gl/gstglfiltershader.c:
+ gstglfiltershader: don't try to link to "version" in doc
+
+2019-05-25 16:54:39 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/pango/gstclockoverlay.c:
+ * ext/pango/gsttimeoverlay.c:
+ * gst/audiomixer/gstaudiomixer.c:
+ * gst/gio/gstgiostreamsink.c:
+ * gst/playback/gstdecodebin3.c:
+ * gst/rawparse/gstrawaudioparse.c:
+ * gst/rawparse/gstrawvideoparse.c:
+ * gst/tcp/gstmultisocketsink.c:
+ doc: fix element section documentations
+ Element sections were not rendered anymore after the hotdoc
+ port, fixing this revealed a few incorrect links.
+
+2019-05-24 15:54:50 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/compositor/compositororc.orc:
+ compositor: Replace shift and conv opcodes by convh in BGRA SOURCE operator
+ Potentially speeds up processing a bit.
+
+2019-05-24 15:53:55 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/compositor/compositororc.orc:
+ compositor: Remove unneeded left shift for ARGB/AYUV SOURCE operator
+ The alpha value is already in the lower 8 bits from the beginning in
+ this case.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/610
+
+2019-05-24 15:22:58 +0200 Arun Raghavan <arun@arunraghavan.net>
+
+ * gst-libs/gst/video/video-color.c:
+ video-color: Deal with NULL colorimetry while converting from string
+ This came up in the case where v4l2 sets caps with colorimetry=NULL, and
+ then tries to parse back the colorimetry, causing a crash in
+ gst_video_get_colorimetry() because of g_str_equal(). We fix this by
+ making sure the only caller of the function never calls it with a null
+ colorimetry string.
+
+2019-05-24 16:35:08 +0200 Arun Raghavan <arun@arunraghavan.net>
+
+ * gst-libs/gst/video/video-color.c:
+ video-color: Fix unknown colorimetry checking
+ Also drop some deadcode #defines.
+
+2019-05-05 21:02:46 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/libs/video.c:
+ tests: video: Enable PQ and HLG transfer en/decode tests
+
+2019-05-05 21:02:55 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-color.c:
+ * gst-libs/gst/video/video-color.h:
+ video-color: Add ARIB STD-B67 transfer chracteristic function
+ It's known also as Rec. ITU-R BT.2100-1 hybrid log-gamma (HLG) used for
+ both SDR and HDR rendering.
+
+2019-05-05 19:22:13 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-color.c:
+ * gst-libs/gst/video/video-color.h:
+ video-color: Add SMPTE ST 2084 support and BT 2100 colorimetry
+ SMPTE ST 2084 transfer characteristics (a.k.a ITU-R BT.2100-1 perceptual quantization, PQ)
+ is used for various HDR standard.
+ With ST 2084, we can represent BT 2100 (Rec. 2100). BT 2100 defines
+ various aspect of HDR such as resolution, transfer functions, matrix, primaries
+ and etc. It uses BT2020 color space (primaries and matrix) with PQ or HLG
+ transfer functions.
+
+2019-05-05 19:08:55 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-color.c:
+ * gst-libs/gst/video/video-color.h:
+ video-color: Define bt2020-10 transfer characteristics for clarity
+ bt707, bt2020-10, and bt2020-12 transfer characteristics are functionally
+ identical but have their own unique values by specification.
+
+2019-05-16 08:53:51 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/playback/gsturidecodebin.c:
+ * gst/playback/gsturisourcebin.c:
+ uridecodebin, urisourcebin: fix buffering for ssh:// URIs
+ Protocols that are in the stream_uris list should always
+ be streams, no matter what they respond to the scheduling
+ query. The flag in the scheduling query is just another
+ way to declare something that needs buffering without the
+ whitelist, the absence of the flag shouldn't make us ignore
+ our known protocol list.
+ Also set is_stream always to a boolean and not a mask value.
+
+2019-05-20 11:14:27 +1000 Matthew Waters <matthew@centricular.com>
+
+ * docs/libs/gl/index.md:
+ * docs/libs/gl/sitemap.txt:
+ * docs/meson.build:
+ * ext/gl/gstglalpha.h:
+ * ext/gl/gstglcolorbalance.h:
+ * ext/gl/gstgldownloadelement.h:
+ * ext/gl/gstgloverlay.h:
+ * ext/gl/gstgluploadelement.h:
+ * ext/gl/gstglvideomixer.c:
+ * gst-libs/gst/gl/egl/gstegl.c:
+ * gst-libs/gst/gl/egl/gsteglimage.c:
+ * gst-libs/gst/gl/egl/gsteglimage.h:
+ * gst-libs/gst/gl/egl/gstglcontext_egl.h:
+ * gst-libs/gst/gl/egl/gstgldisplay_egl.c:
+ * gst-libs/gst/gl/egl/gstgldisplay_egl.h:
+ * gst-libs/gst/gl/egl/gstglmemoryegl.c:
+ * gst-libs/gst/gl/egl/gstglmemoryegl.h:
+ * gst-libs/gst/gl/gbm/gstgldisplay_gbm.h:
+ * gst-libs/gst/gl/gstglapi.c:
+ * gst-libs/gst/gl/gstglbasefilter.c:
+ * gst-libs/gst/gl/gstglbasememory.c:
+ * gst-libs/gst/gl/gstglbasememory.h:
+ * gst-libs/gst/gl/gstglbuffer.h:
+ * gst-libs/gst/gl/gstglbufferpool.h:
+ * gst-libs/gst/gl/gstglcolorconvert.h:
+ * gst-libs/gst/gl/gstglcontext.c:
+ * gst-libs/gst/gl/gstgldebug.c:
+ * gst-libs/gst/gl/gstgldebug.h:
+ * gst-libs/gst/gl/gstgldisplay.h:
+ * gst-libs/gst/gl/gstglfeature.c:
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglframebuffer.h:
+ * gst-libs/gst/gl/gstglmemory.c:
+ * gst-libs/gst/gl/gstglmemory.h:
+ * gst-libs/gst/gl/gstglmemorypbo.h:
+ * gst-libs/gst/gl/gstgloverlaycompositor.h:
+ * gst-libs/gst/gl/gstglquery.h:
+ * gst-libs/gst/gl/gstglrenderbuffer.h:
+ * gst-libs/gst/gl/gstglshader.c:
+ * gst-libs/gst/gl/gstglsl.c:
+ * gst-libs/gst/gl/gstglslstage.h:
+ * gst-libs/gst/gl/gstglupload.h:
+ * gst-libs/gst/gl/gstglviewconvert.h:
+ * gst-libs/gst/gl/gstglwindow.c:
+ * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h:
+ * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h:
+ * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c:
+ * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h:
+ * gst-libs/gst/gl/x11/gstgldisplay_x11.c:
+ gl/docs: add to new docs system
+
+2018-02-26 14:25:40 +0100 Georg Lippitsch <glippitsch@toolsonair.com>
+
+ * ext/alsa/gstalsasrc.c:
+ alsasrc: Don't use driver timestamp if it's zero
+ Some alsa interfaces don't provide timestamps and thus always set the timestamp to zero.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/453
+
+2019-05-17 16:35:40 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/audiotestsrc/gstaudiotestsrc.c:
+ audiotestsrc: Max audio frequency is half the rate, not 1/4
+ https://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem
+
+2019-05-17 12:26:40 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/meson.build:
+ docs: don't build plugins doc cache by default
+ https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/36
+
+2019-05-13 22:53:24 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ docs: Update plugins documentation cache
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/36
+
+2019-05-14 01:56:58 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/audio/gstaudioaggregator.c:
+ gstaudioaggregator: expose output-buffer-duration-fraction
+ The code for this is mostly lifted from audiobuffersplit, it
+ allows use cases such as keeping the buffers output by compositor
+ on one branch and audiomixer on another perfectly aligned, by
+ requiring the compositor to output a n/d frame rate, and setting
+ output-buffer-duration to d/n on the audiomixer.
+ The old output-buffer-duration property now simply maps to its
+ fractional counterpart, the last set property wins.
+
+2019-05-14 13:34:13 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst-libs/gst/gl/gstgloverlaycompositor.c:
+ gloverlaycompositor: fix crash if buffer doesn't have video meta
+ Fix #501
+
+2019-05-12 18:33:32 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * meson.build:
+ meson: Don't try to find gio-unix on Windows
+
+2019-04-23 17:51:25 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/video/gstvideoutils.c:
+ video:doc: Remove duplicated gstvideoutils SECTION
+
+2018-11-11 19:03:33 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ * ext/alsa/gstalsasink.c:
+ * ext/alsa/gstalsasrc.c:
+ Mark some properties as DOC_SHOW_DEFAULT
+
+2018-09-21 13:54:39 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * ext/gl/gstglsinkbin.c:
+ * gst-libs/gst/audio/audio-converter.c:
+ * gst-libs/gst/audio/audio-converter.h:
+ * gst-libs/gst/gl/gstglquery.c:
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ * gst-libs/gst/pbutils/encoding-target.c:
+ * gst-libs/gst/pbutils/gstaudiovisualizer.c:
+ * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c:
+ * gst-libs/gst/tag/tags.c:
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ * gst-libs/gst/video/gstvideodecoder.c:
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * gst-libs/gst/video/video-converter.c:
+ * gst-libs/gst/video/video-converter.h:
+ * gst-libs/gst/video/video-info.h:
+ * gst-libs/gst/video/video-scaler.c:
+ * gst-libs/gst/video/video-scaler.h:
+ * gst-libs/gst/video/videooverlay.c:
+ * gst/playback/gstdecodebin2.c:
+ * gst/playback/gstdecodebin3.c:
+ * gst/playback/gstparsebin.c:
+ * gst/playback/gstplayback.c:
+ * gst/playback/gstplaybin2.c:
+ * gst/playback/gstplaybin3.c:
+ * gst/playback/gstplaysink.c:
+ * gst/playback/gsturidecodebin.c:
+ * gst/tcp/gstmultifdsink.c:
+ * gst/tcp/gstmultisocketsink.c:
+ doc: Fix some gtk-doc comments
+
+2018-10-22 08:17:24 +0200 Thibault Saunier <tsaunier@igalia.com>
+
+ * docs/gst_api_version.in:
+ * docs/index.md:
+ * docs/libs/allocators/index.md:
+ * docs/libs/allocators/sitemap.txt:
+ * docs/libs/app/index.md:
+ * docs/libs/app/sitemap.txt:
+ * docs/libs/audio/index.md:
+ * docs/libs/audio/sitemap.txt:
+ * docs/libs/ext/sitemap.txt:
+ * docs/libs/fft/index.md:
+ * docs/libs/fft/sitemap.txt:
+ * docs/libs/pbutils/index.md:
+ * docs/libs/pbutils/sitemap.txt:
+ * docs/libs/riff/index.md:
+ * docs/libs/riff/sitemap.txt:
+ * docs/libs/rtp/index.md:
+ * docs/libs/rtp/sitemap.txt:
+ * docs/libs/rtsp/index.md:
+ * docs/libs/rtsp/sitemap.txt:
+ * docs/libs/sdp/index.md:
+ * docs/libs/sdp/sitemap.txt:
+ * docs/libs/tag/index.md:
+ * docs/libs/tag/sitemap.txt:
+ * docs/libs/video/index.md:
+ * docs/libs/video/sitemap.txt:
+ * docs/meson.build:
+ * docs/plugins/all_index.md:
+ * docs/plugins/gst_plugins_cache.json:
+ * docs/plugins/index.md:
+ * docs/plugins/sitemap.txt:
+ * docs/sitemap.txt:
+ * docs/version.in:
+ * ext/alsa/meson.build:
+ * ext/cdparanoia/meson.build:
+ * ext/gl/meson.build:
+ * ext/libvisual/meson.build:
+ * ext/ogg/meson.build:
+ * ext/opus/meson.build:
+ * ext/pango/meson.build:
+ * ext/theora/gsttheoraenc.c:
+ * ext/theora/meson.build:
+ * ext/vorbis/meson.build:
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ * gst/adder/meson.build:
+ * gst/app/meson.build:
+ * gst/audioconvert/meson.build:
+ * gst/audiomixer/meson.build:
+ * gst/audiorate/meson.build:
+ * gst/audioresample/meson.build:
+ * gst/audiotestsrc/meson.build:
+ * gst/compositor/meson.build:
+ * gst/encoding/meson.build:
+ * gst/gio/meson.build:
+ * gst/pbtypes/meson.build:
+ * gst/playback/meson.build:
+ * gst/rawparse/meson.build:
+ * gst/subparse/meson.build:
+ * gst/tcp/meson.build:
+ * gst/typefind/meson.build:
+ * gst/videoconvert/meson.build:
+ * gst/videorate/meson.build:
+ * gst/videoscale/meson.build:
+ * gst/videotestsrc/meson.build:
+ * gst/volume/meson.build:
+ * meson.build:
+ * meson_options.txt:
+ * sys/ximage/meson.build:
+ * sys/xvimage/meson.build:
+ doc: Port to hotdoc
+
+2018-09-14 09:33:35 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * Makefile.am:
+ * configure.ac:
+ * docs/Makefile.am:
+ * docs/libs/.gitignore:
+ * docs/libs/Makefile.am:
+ * docs/libs/compiling.sgml:
+ * docs/libs/gst-plugins-base-libs-docs.sgml:
+ * docs/libs/gst-plugins-base-libs-overrides.txt:
+ * docs/libs/gst-plugins-base-libs-sections.txt:
+ * docs/libs/gst-plugins-base-libs.types:
+ * docs/libs/meson.build:
+ * docs/meson.build:
+ * docs/plugins/.gitignore:
+ * docs/plugins/Makefile.am:
+ * docs/plugins/gst-plugins-base-plugins-docs.sgml:
+ * docs/plugins/gst-plugins-base-plugins-overrides.txt:
+ * docs/plugins/gst-plugins-base-plugins-sections.txt:
+ * docs/plugins/gst-plugins-base-plugins.args:
+ * docs/plugins/gst-plugins-base-plugins.hierarchy:
+ * docs/plugins/gst-plugins-base-plugins.interfaces:
+ * docs/plugins/gst-plugins-base-plugins.prerequisites:
+ * docs/plugins/gst-plugins-base-plugins.signals:
+ * docs/plugins/gst-plugins-base-plugins.types:
+ * docs/plugins/inspect/plugin-adder.xml:
+ * docs/plugins/inspect/plugin-alsa.xml:
+ * docs/plugins/inspect/plugin-app.xml:
+ * docs/plugins/inspect/plugin-audioconvert.xml:
+ * docs/plugins/inspect/plugin-audiomixer.xml:
+ * docs/plugins/inspect/plugin-audiorate.xml:
+ * docs/plugins/inspect/plugin-audioresample.xml:
+ * docs/plugins/inspect/plugin-audiotestsrc.xml:
+ * docs/plugins/inspect/plugin-cdparanoia.xml:
+ * docs/plugins/inspect/plugin-compositor.xml:
+ * docs/plugins/inspect/plugin-encoding.xml:
+ * docs/plugins/inspect/plugin-gio.xml:
+ * docs/plugins/inspect/plugin-ivorbisdec.xml:
+ * docs/plugins/inspect/plugin-libvisual.xml:
+ * docs/plugins/inspect/plugin-ogg.xml:
+ * docs/plugins/inspect/plugin-opengl.xml:
+ * docs/plugins/inspect/plugin-opus.xml:
+ * docs/plugins/inspect/plugin-overlaycomposition.xml:
+ * docs/plugins/inspect/plugin-pango.xml:
+ * docs/plugins/inspect/plugin-pbtypes.xml:
+ * docs/plugins/inspect/plugin-playback.xml:
+ * docs/plugins/inspect/plugin-rawparse.xml:
+ * docs/plugins/inspect/plugin-subparse.xml:
+ * docs/plugins/inspect/plugin-tcp.xml:
+ * docs/plugins/inspect/plugin-theora.xml:
+ * docs/plugins/inspect/plugin-typefindfunctions.xml:
+ * docs/plugins/inspect/plugin-videoconvert.xml:
+ * docs/plugins/inspect/plugin-videorate.xml:
+ * docs/plugins/inspect/plugin-videoscale.xml:
+ * docs/plugins/inspect/plugin-videotestsrc.xml:
+ * docs/plugins/inspect/plugin-volume.xml:
+ * docs/plugins/inspect/plugin-vorbis.xml:
+ * docs/plugins/inspect/plugin-ximagesink.xml:
+ * docs/plugins/inspect/plugin-xvimagesink.xml:
+ * docs/plugins/scanobj-build.stamp:
+ * docs/version.entities.in:
+ doc: Remove gtk-doc support
+
+2018-10-22 11:44:37 +0200 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/allocators/meson.build:
+ * gst-libs/gst/app/meson.build:
+ * gst-libs/gst/audio/meson.build:
+ * gst-libs/gst/pbutils/meson.build:
+ * gst-libs/gst/rtp/meson.build:
+ * gst-libs/gst/rtsp/meson.build:
+ * gst-libs/gst/sdp/meson.build:
+ * gst-libs/gst/tag/meson.build:
+ * gst-libs/gst/video/meson.build:
+ meson: Add variables for gir files
+ And flatten list of sources for dependencies
+
+2018-10-22 11:37:44 +0200 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/video/gstvideoutils.c:
+ * gst-libs/gst/video/video-info.c:
+ * gst-libs/gst/video/video-info.h:
+ * gst/playback/gstplayback.c:
+ docs: Add some missing sections documentation
+
+2018-10-22 11:37:41 +0200 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ * gst-libs/gst/pbutils/encoding-target.c:
+ docs: Enhance GstEncodingProfile and GstEncodingTarget doc
+
+2019-05-07 18:36:01 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/gl/gstglshaderstrings.c:
+ glshader: fix default external-oes shaders
+ In glsl, #extension directives need to before other non-preprocesser
+ directives. We were placing the precision qualifier before that. Fix
+ by moving the #extension to the first line in the shader.
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/601
+
+2019-05-06 13:23:22 +0200 Antonio Ospite <antonio.ospite@collabora.com>
+
+ * tests/check/elements/subparse.c:
+ test: add subparse test for SRT subtitles with no newline at the end
+ Add a test to verify that SRT subtitles work even if the last chunk does
+ not have an empty line after it.
+
+2019-05-06 12:48:49 +0200 Antonio Ospite <antonio.ospite@collabora.com>
+
+ * gst/subparse/gstsubparse.c:
+ * tests/check/elements/subparse.c:
+ subparse: fix pushing WebVTT cue when last is not an empty line
+ If the last WebVTT cue does not have an empty line after it, or if it
+ does not end with a newline at all, it does not get pushed out and it
+ won't be displayed.
+ gst_sub_parse_sink_event() already handles the issue for other subtitle
+ formats, enable handling it for GST_SUB_PARSE_FORMAT_VTT too.
+ While at it also add a test for this case.
+
+2019-05-04 23:48:27 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/video-converter.c:
+ * gst-libs/gst/video/video-format.c:
+ * gst-libs/gst/video/video-format.h:
+ * gst-libs/gst/video/video-info.c:
+ video: Add RGB10A2_LE pixel format
+ Packed 10 bits per each R, G and B channel with MSB 2bits alpha channel.
+ This format is mapped to Windows' DXGI_FORMAT_R10G10B10A2_UNORM format which is
+ required for 10bits HDR rendering.
+ Note that this RGB10A2_LE format is R - B channel swapped version of BGR10A2_LE
+
+2019-05-03 14:31:03 -0400 Xavier Claessens <xavier.claessens@collabora.com>
+
+ * meson_options.txt:
+ Missing "android" choice in gl_winsys
+
+2019-05-01 17:22:46 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/video/Makefile.am:
+ * gst-libs/gst/video/meson.build:
+ video: Generate GTypes for videotimecode enums
+
+2019-05-01 17:22:24 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/video/gstvideotimecode.c:
+ videotimecode: Mark latest_daily_jame as allow-none in init\()
+
+2019-05-01 11:25:31 -0500 A. Wilcox <AWilcox@Wilcox-Tech.com>
+
+ * tests/check/libs/video.c:
+ video test: Keep BE test inline with LE test
+
+2019-04-30 17:21:38 -0400 Aaron Boxer <aaron.boxer@collabora.com>
+
+ * gst-libs/gst/video/video-anc.c:
+ * gst-libs/gst/video/video-anc.h:
+ video-anc: add AFD/Bar support
+
+2019-05-01 15:44:44 -0400 Aaron Boxer <aaron.boxer@collabora.com>
+
+ * gst-libs/gst/video/video-frame.h:
+ video-frame: update docs
+ mention closed caption caps as valid caps for video buffer flags
+
+2019-04-12 12:09:31 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/typefind/gsttypefindfunctions.c:
+ typefindfunctions: Add support HEIF file format finding
+ A HEIF compatiable file (i.e., mif1 brand) needs special concern
+ since 'moov' atom is not mandatory for the file although HEIF is
+ a variant of ISOBMFF
+ See http://standards.iso.org/ittf/PubliclyAvailableStandards/c066067_ISO_IEC_23008-12_2017.zip
+
+2019-05-02 14:24:27 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ videoencoder: Forward upstream HDR information to downstream
+ ... if subclass didn't update values. Note that the mastering-display-info
+ and content-light-level might be updated by user defined value (e.g., encoding option).
+
+2019-04-27 22:29:25 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ videodecoder: Forward upstream HDR information to downstream
+ The HDR related information is not part of GstVideoInfo but should be passed
+ to downstream.
+
+2019-02-18 19:54:35 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/libs/video.c:
+ tests: video: Add test for video-hdr
+
+2019-02-18 13:20:33 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ video: Add new APIs for HDR information representation
+ Introduce HDR signalling methods
+ * GstVideoMasteringDisplayInfo: Representing display color volume info.
+ Defined by SMPTE ST 2086
+ * GstVideoContentLightLevel: Representing content light level specified in
+ CEA-861.3, Appendix A.
+ Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/400
+
+2019-04-29 11:25:02 +0200 Robert Rosengren <robertr@axis.com>
+
+ * ext/alsa/gstalsasrc.c:
+ alsasrc: driver timestamps only to be considered if system clock
+ The system clock check when considering to use driver timestamp
+ should not include sub-classes of system clock (such as the net clocks).
+
+2018-06-08 11:03:03 +0200 Danny Smith <dannys@axis.com>
+
+ * ext/alsa/gstalsasrc.c:
+ * ext/alsa/gstalsasrc.h:
+ alsasrc: added option for chosing timestamps
+ Added an option for chosing if driver or pipeline timestamps shall be
+ used.
+
+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-24 10:41:24 +0200 Niels De Graef <niels.degraef@barco.com>
+
+ * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c:
+ * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h:
+ * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
+ gl/wayland: Don't prefix wl_shell struct field
+ As part of commit 808e7127, we prefixed the `GstWlWindow`'s `shell`
+ field with wl_, to differentiate it from the other types of shells a
+ Wayland compositor might support. However, this is apparently a struct
+ that we expose to our users, so changing it means we have an API break.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/592
+
+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-04-23 15:05:43 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/audio/audio-channels.c:
+ * gst-libs/gst/audio/gstaudiodecoder.h:
+ * gst-libs/gst/audio/gstaudioencoder.h:
+ * gst-libs/gst/audio/gstaudioringbuffer.h:
+ * gst-libs/gst/pbutils/codec-utils.c:
+ * gst-libs/gst/pbutils/encoding-profile.c:
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ * gst-libs/gst/rtsp/gstrtspconnection.h:
+ * gst-libs/gst/rtsp/gstrtspdefs.c:
+ * gst-libs/gst/rtsp/gstrtspdefs.h:
+ * gst-libs/gst/sdp/gstmikey.h:
+ * gst-libs/gst/video/gstvideodecoder.h:
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * gst-libs/gst/video/gstvideoencoder.h:
+ * gst-libs/gst/video/navigation.h:
+ * gst-libs/gst/video/video-format.h:
+ * gst-libs/gst/video/video-info.h:
+ * gst-libs/gst/video/video-resampler.h:
+ * gst-libs/gst/video/videooverlay.c:
+ libs: Fix various Since markers
+
+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-04-23 14:42:17 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-anc.h:
+ video-anc: Add Since: 1.16 marker
+
+2019-04-23 14:42:03 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/gstvideoaggregator.h:
+ videoaggregator: Add Since: 1.16 markers to all public structs
+
+2019-04-23 14:31:45 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/gl/gstglformat.c:
+ * gst-libs/gst/gl/gstglshaderstrings.c:
+ * gst-libs/gst/gl/gstglsl.c:
+ * gst-libs/gst/gl/gstglwindow.c:
+ gl: Add various missing Since: 1.16 markers
+ And add some missing function documentation.
+
+2019-04-22 18:33:20 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-anc.h:
+ video-anc: Add DID16 value for SMPTE 2016-3 AFD/Bar data
+
+2019-04-22 17:06:09 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/video/video-anc.c:
+ * tests/check/libs/videoanc.c:
+ video-anc: Handle SD formats correctly
+ VANC is stored linearly in SD formats instead of separating the Y and YV
+ components from each other and having first all Y and then all UV
+ values.
+
+2019-03-27 12:30:00 +0100 Kristofer Bjorkstrom <kristofb@axis.com>
+
+ * gst-libs/gst/rtsp/gstrtspconnection.c:
+ * gst-libs/gst/rtsp/gstrtspconnection.h:
+ * tests/check/libs/rtspconnection.c:
+ rtspconnection: add Content-Length limit
+ Add the possible to limit the Content-Length
+ Define an appropriate request size limit and reject requests exceeding
+ the limit (413 Request Entity Too Large)
+
+2019-04-19 10:24:36 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * README:
+ * RELEASE:
+ * configure.ac:
+ * docs/plugins/inspect/plugin-adder.xml:
+ * docs/plugins/inspect/plugin-alsa.xml:
+ * docs/plugins/inspect/plugin-app.xml:
+ * docs/plugins/inspect/plugin-audioconvert.xml:
+ * docs/plugins/inspect/plugin-audiomixer.xml:
+ * docs/plugins/inspect/plugin-audiorate.xml:
+ * docs/plugins/inspect/plugin-audioresample.xml:
+ * docs/plugins/inspect/plugin-audiotestsrc.xml:
+ * docs/plugins/inspect/plugin-cdparanoia.xml:
+ * docs/plugins/inspect/plugin-compositor.xml:
+ * docs/plugins/inspect/plugin-encoding.xml:
+ * docs/plugins/inspect/plugin-gio.xml:
+ * docs/plugins/inspect/plugin-libvisual.xml:
+ * docs/plugins/inspect/plugin-ogg.xml:
+ * docs/plugins/inspect/plugin-opengl.xml:
+ * docs/plugins/inspect/plugin-opus.xml:
+ * docs/plugins/inspect/plugin-overlaycomposition.xml:
+ * docs/plugins/inspect/plugin-pango.xml:
+ * docs/plugins/inspect/plugin-pbtypes.xml:
+ * docs/plugins/inspect/plugin-playback.xml:
+ * docs/plugins/inspect/plugin-rawparse.xml:
+ * docs/plugins/inspect/plugin-subparse.xml:
+ * docs/plugins/inspect/plugin-tcp.xml:
+ * docs/plugins/inspect/plugin-theora.xml:
+ * docs/plugins/inspect/plugin-typefindfunctions.xml:
+ * docs/plugins/inspect/plugin-videoconvert.xml:
+ * docs/plugins/inspect/plugin-videorate.xml:
+ * docs/plugins/inspect/plugin-videoscale.xml:
+ * docs/plugins/inspect/plugin-videotestsrc.xml:
+ * docs/plugins/inspect/plugin-volume.xml:
+ * docs/plugins/inspect/plugin-vorbis.xml:
+ * docs/plugins/inspect/plugin-ximagesink.xml:
+ * docs/plugins/inspect/plugin-xvimagesink.xml:
+ * meson.build:
+ Back to development
+
=== release 1.16.0 ===
2019-04-19 00:19:55 +0100 Tim-Philipp Müller <tim@centricular.com>