Release 1.19.2
[platform/upstream/gstreamer.git] / ChangeLog
index 550f483..f997cc9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+=== release 1.19.2 ===
+
+2021-09-23 01:33:39 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.19.2
+
+2021-09-22 14:03:57 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph263pdepay.c:
+         rtph263pdepay: flag keyframes on output buffers
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1091>
+
+2021-08-18 19:47:40 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtphdrext-twcc.c:
+         rtphdrhext-twcc: Return failure on map failure
+         This feels like exactly like a case that should fail.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1059>
+
+2021-08-18 19:46:25 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtphdrext-colorspace.c:
+       * gst/rtpmanager/gstrtphdrext-rfc6464.c:
+       * gst/rtpmanager/gstrtphdrext-twcc.c:
+         rtphdrext: Update write() API to return a signed value
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1059>
+
+2021-09-14 17:26:27 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Try to build AAC codec-data whenever it's possible
+         AAC codec_data is a just collection of AAC profile, samplerate, and
+         channels. We can know samplerate and channels from parsed
+         SampleEntry data. Although the AAC profile is unknown there,
+         let's assume it as AAC-LC like we've been doing for the version 1
+         atom.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1082>
+
+2021-09-07 22:23:01 +0200  Vivienne Watermeier <vwatermeier@igalia.com>
+
+       * gst/flv/gstflvdemux.c:
+       * gst/flv/gstflvdemux.h:
+         flv: fix seqnum handling for seeks
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1078>
+
+2021-01-18 16:06:27 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         isomp4: also allow muxing different h264/5 profiles/levels/etc
+         All of that is advertised through the codec_data itself so can change
+         just fine within isomp4.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1071>
+
+2021-09-11 09:24:35 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.h:
+       * gst/matroska/matroska-mux.c:
+         matroska: Add support for muxing/demuxing ffv1
+         Previously only demuxing when stored via the RIFF/AVI mapping was
+         supported.
+         See https://github.com/FFmpeg/FFV1/blob/master/ffv1.md#matroska-file-format
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/923
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1080>
+
+2021-09-12 12:18:32 +0100  Philippe Normand <philn@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: Update cache
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1081>
+
+2021-08-03 19:12:11 +0900  Seungha Yang <seungha@centricular.com>
+
+       * ext/jpeg/gstjpegdec.c:
+         jpegdec: Fix crash when interlaced field height is not DCT block size aligned
+         In case of interlaced JPEG file, we are doubling stride.
+         The scratch scan line should take account of it as well.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1042>
+
+2021-09-02 08:38:54 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/avi/gstavidemux.c:
+         avidemux: Also detect 0x000001 as H264 byte-stream start code in codec_data
+         This works around some AVI files storing byte-stream data in the
+         codec_data. The previous workaround was only checking for
+         0x00000001 (4 bytes) instead of 0x000001 (3 bytes).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1072>
+
+2021-08-31 11:05:16 +0100  Philippe Normand <philn@igalia.com>
+
+       * ext/qt/qtitem.cc:
+         qt: Fix build for Qt 5.9
+         The QQuickItem::size() method was introduced in 5.10, so use direct width() and
+         height() access instead.
+         Fixes #908
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1069>
+
+2021-08-19 10:32:27 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtphdrextrfc6464.c:
+         rtphdrext-rfc6464: Add test for inserting in payloader using the API
+         This makes it clearer how to use the plugin in an API driven application.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1058>
+
+2021-08-18 19:36:07 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtphdrext-rfc6464.c:
+         rtphdrext-rfc6464: Put max level if the audio is beyond it
+         Otherwise, it just fails to add the extension, which makes no
+         sense. And our level element produces levels higher than 127 in some
+         cases.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1058>
+
+2021-08-18 19:35:36 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtphdrext-rfc6464.c:
+         rtphdrext-rfc6464: Add example pipeline
+         This makes it a bit easier to understand how to use it in an application.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1058>
+
+2021-08-18 19:07:18 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtphdrextrfc6464.c:
+         rtphdrext-rfc6464: Add test for inserting it based on caps
+         Tests adding the extension based on the caps.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1058>
+
+2021-08-27 14:32:45 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Force stream-start push when re-using EOS'd streams
+         When re-using streams, we *do* need to push a `stream-start` event downstream if
+         we previously were EOS'd. Failure to do that would never remove the EOS status
+         on all downstream elements and cause weird issues.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1067>
+
+2021-08-27 02:05:45 -0400  Brad Smith <brad@comstyle.com>
+
+       * gst/deinterlace/meson.build:
+         deinterlace: Use proper ASM output format for *BSD OS
+         FreeBSD/NetBSD/OpenBSD amd64 use the ELF binary format.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1066>
+
+2021-08-27 13:30:57 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         qmlgl: don't critical on input events before input format has been set
+         Accessing the unset GstVideoInfo would result in criticals
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1065>
+
+2021-08-25 11:53:58 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         docs: Add `Since` marker to "twcc-feedback-interval" property
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2021-08-25 10:33:24 +0200  Havard Graff <havard@pexip.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: update with "twcc-feedback-interval"
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2021-04-13 16:19:22 +0200  Tulio Beloqui <tulio.beloqui@pexip.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpstats.h:
+       * gst/rtpmanager/rtptwcc.c:
+       * tests/check/elements/rtpsession.c:
+         rtptwcc: changes to use rtp buffer arrival time and current time.
+         For TWCC we are more interested to track the arrival time (receive side)
+         and the current time (sender side) of the buffers rather than the
+         running time.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2021-03-26 11:57:42 +0100  Knut Inge Hvidsten <knut.hvidsten@pexip.com>
+
+       * gst/rtpmanager/rtpstats.c:
+       * gst/rtpmanager/rtptwcc.c:
+       * gst/rtpmanager/rtptwcc.h:
+         rtptwcc: add payloadtype to RTPTWCCPacket
+         The consumer of the stats can then separate between different media-types,
+         and do individual stats for each of them.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2021-03-19 18:19:43 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+         rtptwcc: make enabling TWCC sticky
+         Meaning that if a caps comes along that does NOT have TWCC in it,
+         this does not turn of TWCC for the rest, as this is in fact
+         completely allowed. (To have some payload-types not containing TWCC
+         seqnums).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2021-02-23 09:44:05 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtptwcc.c:
+       * gst/rtpmanager/rtptwcc.h:
+         rtptwcc: move TWCC-logic over to the TWCC-manager
+         Prevent cluttering up the rtpsession, and keeping things localized.
+         Also write TWCC-seqnums for *all* streams in the session if configured by
+         caps.
+         A while back WebRTC was not doing TWCC for audio, basically breaking the
+         whole idea of a "transport-wide seqnuencenumber" applying for all bundled
+         streams. However, they have since fixed this, and now it no longers
+         makes sense to be able to single out certain payloadtypes for
+         use with TWCC, rather just including them all.
+         This also makes using RTX, RED, FEC etc much simpler, as it will apply
+         to them all as they enter the rtpsession.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2021-02-23 09:50:04 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+         rtptwcc: fix warning
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2021-02-11 15:17:16 +0100  Tulio Beloqui <tulio.beloqui@pexip.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+       * tests/check/elements/rtpsession.c:
+         rtptwcc: fixes and optimizations around run-length chunks
+         Co-authored-by: Havard Graff <havard.graff@gmail.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2020-12-18 14:01:23 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+       * tests/check/elements/rtpsession.c:
+         rtptwcc: fix seqnum-wrap
+         Using the proper API to do this is obviously an improvement, and
+         adding a test for the case of a packet-loss when the seqnum wrap
+         is also a good idea.
+         Co-authored-by: Tulio Beloqui <tulio.beloqui@pexip.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2020-12-18 13:06:35 +0100  Tulio Beloqui <tulio.beloqui@pexip.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+       * tests/check/elements/rtpsession.c:
+         rtptwcc: fixed feedback packet count overflow that allowed late packets to be processed
+         Co-authored-by: Havard Graff <havard.graff@gmail.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2020-12-16 16:31:18 +0100  Tulio Beloqui <tulio.beloqui@pexip.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+       * tests/check/elements/rtpsession.c:
+         rtptwcc: fixed parsing of old sequence number
+         Co-authored-by: Havard Graff <havard.graff@gmail.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2020-12-16 16:16:09 +0100  Tulio Beloqui <tulio.beloqui@pexip.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+       * tests/check/elements/rtpsession.c:
+         rtptwcc: fixed guint8 overflow of feedback packet count
+         Co-authored-by: Havard Graff <havard.graff@gmail.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2020-11-19 23:50:23 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtptwcc.c:
+       * gst/rtpmanager/rtptwcc.h:
+       * tests/check/elements/rtpsession.c:
+         rtptwcc: add feedback-interval
+         To allow RTCP TWCC reports to be scheduled on a timer instead of per
+         marker-bit.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2021-08-20 11:54:01 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+       * gst/rtpmanager/rtptwcc.h:
+         rtptwcc: remove _set_send_packet_ts
+         Not in use.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2020-11-17 00:45:02 +0100  Havard Graff <havard@pexip.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtptwcc: make twcc-tests more deterministic
+         They were a bit racy.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/927>
+
+2021-08-24 13:28:22 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: add depth for ProRes 4:4:4:4 variants if available
+         Might be 24bpp in case an alpha channel is coded but
+         the image is always opaque.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1061>
+
+2021-08-22 23:16:26 +0000  Ruslan Khamidullin <ruslank@borisfx.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: for Apple ProRes, allow overriding pixel bit depth for 4:4:4:4 variants
+         e.g. when exporting an opaque image, yet with alpha channel.
+         Apple ProRes certification requires that, when a ProRes-writing
+         application *knows* that the entire frame is opaque, the application
+         writes only RGB without alpha even when the clip is RGBA. For that,
+         this tiny change allows the app to override pixel depth when writing ProRes.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1061>
+
+2019-05-22 11:16:56 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * ext/vpx/gstvpxdec.c:
+       * ext/vpx/gstvpxdec.h:
+         vpxdec: Fix direct rendering, avoid holding write access
+         When a buffer is pushed downstream, we should try not to hold the
+         buffer mapped with write access. Doing so would often lead to
+         an unneccesary memcpy later.
+         For instance, gst_buffer_make_writable() in
+         gst_video_decoder_finish_frame() will cause a memcpy because of
+         _memory_get_exclusive_reference().
+         We know that we can perform a two-step remap when using system
+         memory, as this will not cause the location of the memory to
+         change.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/812>
+
+2021-08-19 16:26:17 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         isomp4/mux: add a function for seeking to a specific output byte position
+         We do it enough times that this makes sense.  Also add a debug log line
+         for the seek position requested.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1060>
+
+2021-08-19 16:02:47 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/atoms.c:
+         isomp4/mux: don't overwrite with a bigger moov when fragmenting
+         When outputting fragmented mp4, with a seekable downstream, we rewrite
+         the moov to maybe add a duration to the mvex.  If we start by not
+         writing the initial moov->mvex->mhed duration and then overwrite with a
+         moov containing mhed atom, the moov's will have different sizes and
+         could overwrite subsequent data and result in an unplayable file.
+         e.g. The initial moov would be of size 842 and the final moov would have
+         a size of 862.
+         Fix by always pushing out the mhed duration in the moov when
+         fragmenting.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/898
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1060>
+
+2021-01-15 20:53:27 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         isomp4: actually make streamable fallback work
+         We weren't setting the fragment_mode field anymore now that the
+         implementation doesn't change based on the value of the streamable
+         property.  This lead to invalid files.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1060>
+
+2021-01-15 20:54:56 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         isomp4: fix trun data offset handling
+         The trun offset was missing a calculation for one of the box type
+         headers.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/866
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1060>
+
+2020-10-15 00:28:36 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/gstqtmux.c:
+         isomp4/mux: fixes for fragmented mp4 output
+         Various buffer offset calculations were not quite correct in all cases.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/866
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1060>
+
+2021-08-10 00:53:57 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/matroska/matroska-mux.c:
+         matroska-mux: support H264 avc3 / H265 hev1
+         The matroska codec specs is unfortunately vague on the subject,
+         stating for H264:
+         AVC/H.264 stored as described in [@!ISO.14496-15]
+         and for H265:
+         HEVC/H.265 stored as described in [@!ISO.14496-15]
+         This spec however specifies multiple stream formats, our
+         implementation has opted for interpreting this as avc1 / hvc1,
+         both of which disallow in-band SPS.
+         Most decoders however will support in-band SPS / PPS, and
+         this commit gives the option to explicitly mux in avc3 / hev1,
+         which allows changing stream parameters on the fly, that is
+         useful for smart encoding for example.
+         When either of these stream formats are picked as the input,
+         changes in codec_data / tier / level / profile do not cause
+         renegotiation failure, a warning is logged however as it isn't
+         clear how compliant such a stream is.
+         The stream-format field is correctly ordered in the template
+         caps to avoid selecting potentially non-compliant options on
+         automatic negotiation.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1047>
+
+2021-08-10 00:51:36 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         isomp4/qtmux: allow renegotiating when tier / level / profile change
+         Those are carried either in codec_data or in-band SPS (for avc3),
+         and it is OK for those to change, though decoders obviously need
+         to support it.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1047>
+
+2021-08-06 23:36:48 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmuxmap.c:
+         isomp4/qtmux: accept video/x-h264, stream-format=avc3
+         The main difference between avc1 and avc3 is that avc3 is allowed
+         to contain in-band SPS / PPS. In practice decoders will always use
+         in-band parameter sets anyway, but it is cleaner to explicitly
+         advertise it.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1047>
+
+2021-08-06 22:59:23 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         isomp4/qtmux: make sure to switch to next chunk on new caps
+         For example, with single video sink pad, and new codec_data is
+         received, current_chunk_offset must be reset to -1 for the
+         aggregate loop to open a new chunk.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1047>
+
+2021-08-06 22:55:32 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/atoms.c:
+         isomp4/atoms: fix multiple stsd entries
+         stsd entries are serialized in reverse order (starting from
+         g_list_last()), and must be prepended to the entry list for their
+         index to be correct when referenced from stsc entries.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1047>
+
+2021-08-12 11:03:58 -0400  Arun Raghavan <arun@asymptotic.io>
+
+       * docs/gst_plugins_cache.json:
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-mux.h:
+         matroska-mux: Add a timestamp-offset property
+         Adds a user-controllable timestamp offset to clusters and blocks. This
+         should be useful if we want to have timestamps that have significance
+         outside of the current file (for example, we might set the offset to the
+         wallclock when the file is being created, or some other common base, if
+         we want to correlate streams across multiple files).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1051>
+
+2021-07-15 12:02:40 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroska: demux: update stream_start_time
+         The stream_start_time can be less than the first detected.
+         In case of B-Frame based media, the first frame PTS might be
+         greater than the next one.
+         Need to keep the segment.start if a seek has been performed.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1030>
+
+2021-08-17 16:08:33 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/matroska/matroska-demux.c:
+         mastrokademux: Remove redundant assignment
+         The segment.position is unconditionnaly set few lines below.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1030>
+
+2021-08-17 16:49:47 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+       * gst/videocrop/gstvideocrop.c:
+       * tests/icles/videocrop-test.c:
+         videocrop: Fix icles tests.
+         Internally videcrop can call gst_video_crop_set_info() with NULL as in
+         caps. Then critical messages are raised when the in caps are
+         processed.
+         To fix this the in caps are checked, and if they are present, its
+         capsfeature is extracted, otherwise, the previous raw caps detection
+         remains as before.
+         Also the videocrop-test removes the format field in the structure
+         because now its always passed.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1056>
+
+2021-01-08 17:34:02 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtp/gstrtp.c:
+       * gst/rtp/gstrtpelements.h:
+       * gst/rtp/gstrtphdrext-colorspace.c:
+       * gst/rtp/gstrtphdrext-colorspace.h:
+       * gst/rtp/meson.build:
+       * tests/check/elements/rtphdrext-colorspace.c:
+       * tests/check/meson.build:
+         rtp: Color Space header extension
+         Implements WebRTC header extension defined in
+         http://www.webrtc.org/experiments/rtp-hdrext/color-space.
+         It uses RTP header to communicate color space information and optionally
+         also metadata that is needed in order to properly render a high dynamic
+         range (HDR) video stream.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/853>
+
+2021-08-09 10:46:30 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: Add protection when set decoder capture fps accroding to output fps
+         Some v4l2 drivers don't have the capacity to change framerate. There is
+         chance to make decoder capture fps to be 0/0 if numerator and denominator
+         returned by G_PARM ioctl are both 0. It causes critical warning
+         "passed '0' as denominator for `GstFraction'".
+         In order to fix this, add protection when set decoder capture fps according
+         to output fps.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1048>
+
+2021-06-01 15:33:01 +0200  Per Förlin <perfn@axis.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: Add support to ignore x-server HEADER reply
+         When connecting to an RTSP server in tunnled mode (HTTP) the server
+         usually replies with a x-server header. This contains the address
+         of the intended streaming server. However some servers return an
+         "invalid" address. Here follows two examples when it might happen.
+         1. A server use Apache combined with a separate RTSP process to handle
+         Https request on port 443. In this case Apache handle TLS and
+         connects to the local RTSP server, which results in a local
+         address 127.0.0.1 or ::1 in the x-server reply. This address is
+         returned to the actual RTSP client in the x-server header.
+         The client will receive this address and try to  connect to it
+         and fail.
+         2. The client use a ipv6 link local address with a specified scope id
+         fe80::aaaa:bbbb:cccc:dddd%eth0 and connects via Http on port 80.
+         The RTSP server receives the connection and returns the address
+         in the x-server header. The client will receive this address and
+         try to connect to it "as is" without the scope id and fail.
+         In the case of streaming data from RTSP servers like 1. and 2. it's
+         useful to have the option to simply ignore the x-server header reply
+         and continue using the original address.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1007>
+
+2021-08-04 12:33:06 +0700  Dmitry Shusharin <pmdvsh@gmail.com>
+
+       * ext/qt/qtitem.cc:
+         gstqmlgl: fix indent
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1032>
+
+2021-07-30 16:52:23 +0700  Dmitry Shusharin <pmdvsh@gmail.com>
+
+       * ext/qt/gstqsgtexture.cc:
+       * ext/qt/gstqsgtexture.h:
+         gstqmlgl: wrap raw GstGLContext into GWeakRef
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1032>
+
+2021-07-30 16:32:13 +0700  Dmitry Shusharin <pmdvsh@gmail.com>
+
+       * tests/examples/qt/meson.build:
+       * tests/examples/qt/qmlsink-multisink/main.cpp:
+       * tests/examples/qt/qmlsink-multisink/main.qml:
+       * tests/examples/qt/qmlsink-multisink/meson.build:
+       * tests/examples/qt/qmlsink-multisink/qmlsink-multi.qrc:
+       * tests/examples/qt/qmlsink-multisink/videoitem/VideoItem.qml:
+       * tests/examples/qt/qmlsink-multisink/videoitem/videoitem.cpp:
+       * tests/examples/qt/qmlsink-multisink/videoitem/videoitem.h:
+         gstqmlgl: add multisink test application
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1032>
+
+2021-07-30 17:21:46 +0700  Dmitry Shusharin <pmdvsh@gmail.com>
+
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+         gstqmlgl: refactoring: rename ambiguous variables, clean up unused and duplicated ones
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1032>
+
+2021-07-30 17:20:59 +0700  Dmitry Shusharin <pmdvsh@gmail.com>
+
+       * ext/qt/gstqtglutility.cc:
+         gstqmlgl: rework WGL-specific context init code
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1032>
+
+2021-07-30 17:20:49 +0700  Dmitry Shusharin <pmdvsh@gmail.com>
+
+       * ext/qt/gstqtglutility.cc:
+         gstqmlgl: retrieve correct device bound to current GL context (+ minor code cleanup)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1032>
+
+2021-07-30 17:20:25 +0700  Dmitry Shusharin <pmdvsh@gmail.com>
+
+       * ext/qt/gstqsgtexture.cc:
+         gstqmlgl: correct validation for Qt GL context
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1032>
+
+2021-07-30 17:20:07 +0700  Dmitry Shusharin <pmdvsh@gmail.com>
+
+       * ext/qt/gstqtglutility.h:
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+       * ext/qt/qtwindow.cc:
+       * ext/qt/qtwindow.h:
+         gstqmlgl: create helper QRunnable-based class for render jobs
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1032>
+
+2021-08-06 16:25:02 +0200  Tulio Beloqui <tulio@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: fixed stall on gap when using rtx
+         Co-authored-by: Håvard Graff <havard@pexip.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1055>
+
+2021-08-13 19:32:53 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/flv/gstindex.c:
+         flv: use g_memdup2() as g_memdup() is deprecated
+         g_memdup() is deprecated since GLib 2.68 and we want to avoid
+         deprecation warnings with recent versions of GLib.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1052>
+
+2021-08-15 12:26:38 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Always use the content decoder but set `Accept-Encoding: identity` if no compression should be used
+         Some servers respond with gzip-encoded responses regardless of whether
+         the request allowed it to be used in the response. By always having the
+         content decoder enabled, these invalid responses can be decoded
+         correctly while for well-behaving servers the `compress` property
+         selects between allowing compressed responses or not.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/833
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1053>
+
+2021-08-12 22:57:01 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qt: always update the sink_retrieved flag when the sink retrieves
+         Fixes a case where adding a qmlgloverlay element after an existing
+         qmlglsink elements was already in the pipeline would create an entirely
+         separate GstGLDisplay pointing to the same underlying display resource.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1050>
+
+2021-08-11 14:52:52 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+       * gst/videocrop/gstaspectratiocrop.c:
+       * gst/videocrop/gstaspectratiocrop.h:
+       * gst/videocrop/gstvideocrop.c:
+       * gst/videocrop/gstvideocrop.h:
+       * gst/videocrop/gstvideocropelement.c:
+       * gst/videocrop/gstvideocropelements.h:
+       * gst/videocrop/gstvideocropplugin.c:
+       * gst/videocrop/meson.build:
+         videocrop: Resurrect logging category.
+         Fix for a regression from commit 8f1384c9. That commit moved the debug
+         category definition, as static, into a gstvideocropelement.c, but that
+         category was used as default, in gstvideocrop.c, so it was never used
+         at logging, so the debug selector never showed the logs for
+         videocrop.
+         This patch move back the category definition into gstvideocrop.c and
+         leaving the function videocrop_element_init() as a noop.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1049>
+
+2021-07-31 23:14:34 +0900  Seungha Yang <seungha@centricular.com>
+
+       * ext/jpeg/meson.build:
+         jpeg: Add support for meson fallback
+         Allow building jpeg plugin by using meson fallback
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1041>
+
+2021-07-27 10:43:21 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2: Keep decoder capture fps same as output fps if it's not set
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1035>
+
+2021-07-27 18:33:18 +0900  Seungha Yang <seungha@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/jack/gstjack.c:
+       * ext/jack/gstjack.h:
+       * ext/jack/gstjackaudioclient.c:
+       * ext/jack/gstjackaudioclient.h:
+       * ext/jack/gstjackaudiosink.c:
+       * ext/jack/gstjackaudiosink.h:
+       * ext/jack/gstjackaudiosrc.c:
+       * ext/jack/gstjackaudiosrc.h:
+         jack: Add port-names property to select ports explicitly
+         By this new property, user can select physical port to connect,
+         and element will pick requested port instead of random ones.
+         User should provide full port name including "client_name:" prefix.
+         An example is
+         jackaudiosrc port-names="system:capture_1,system:capture_3" ! ...
+         jackaudiosink port-names="system:playback_2"
+         In addition to "port-names" property, a new connect type "explicit"
+         is added so that element can post error message if requested
+         "port-names" contains invalid port(s).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1037>
+
+2021-07-23 11:04:00 +0200  Kai Uwe Broulik <kai_uwe.broulik@mbition.io>
+
+       * ext/qt/gstqsgtexture.cc:
+       * ext/qt/gstqtsink.cc:
+         qt: Support RGB format
+         In GstQSGTexture::hasAlphaChannel return value based on
+         whether the video format has alpha channel.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1040>
+
+2021-07-26 20:14:32 +0900  Seungha Yang <seungha@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/jack/gstjackaudiosink.c:
+       * ext/jack/gstjackaudiosink.h:
+       * ext/jack/gstjackaudiosrc.c:
+       * ext/jack/gstjackaudiosrc.h:
+         jack: Add low-latency property for automatic latency-optimized setting
+         Similar to wasapi/wasapi2 plugins on Windows, adding low-latency
+         option so that jack element can optimize GstAudioRingBufferSpec
+         setting for low latency.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1034>
+
+2021-07-26 19:55:25 +0900  Seungha Yang <seungha@centricular.com>
+
+       * ext/jack/gstjackaudioclient.c:
+       * ext/jack/gstjackaudioclient.h:
+       * ext/jack/gstjackaudiosrc.c:
+       * ext/jack/gstjackringbuffer.h:
+         jack: Remove trailing whitespace
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1034>
+
+2021-07-27 17:58:15 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/videocrop/gstvideocrop-private.h:
+         videocrop: Resurrect any caps feature negotiation.
+         Commit e31cbce4 brought a regression to negotiate featured caps. But
+         only by removing the entry in the caps template. This commit brings it
+         back.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1039>
+
+2021-07-26 18:43:04 +0900  Seungha Yang <seungha@centricular.com>
+
+       * ext/jack/gstjackaudiosink.c:
+       * ext/jack/gstjackaudiosrc.c:
+         jack: Fix assertion fail when device supports only mono channel
+         MAX should be larger than MIN for GST_TYPE_INT_RANGE.
+         GStreamer-CRITICAL **: 18:26:27.912:
+         gst_value_collect_int_range: assertion 'collect_values[0].v_int < collect_values[1].v_int' failed
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1033>
+
+2021-07-21 20:14:46 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtsrc.cc:
+       * ext/qt/qtwindow.cc:
+       * ext/qt/qtwindow.h:
+         qmlglsrc: fix operation without any qmlglsink
+         E.g. a pipeline like qmlglsrc ! gldownload ! ... would currently fail to
+         run because the OpenGL context are not created in the correct order.
+         The QtWindow also needs to know the OpenGL context used by downstream
+         elements in order to set optimize for the correct GstGLSyncMeta for
+         synchonisation purposes.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1036>
+
+2021-07-26 17:55:24 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Fix some reference leaks in error cases.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1023>
+
+2021-07-08 00:12:52 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * tests/check/elements/splitmuxsink.c:
+         splitmuxsink: Prevent hang going back to NULL after failures
+         Prevent a condition where splitmuxsink won't go back to NULL state
+         after a child element fails to change state by making sure that
+         a READY->READY state change doesn't fail, and by returning
+         GST_FLOW_ERROR or GST_FLOW_FLUSHING upstream to shut down streaming
+         as quickly as possible.
+         This can happen after (for example) setting an invalid filename
+         on the sink element. In that case, the READY->PAUSED transition
+         fails, but with internal elements still in the NULL state. Trying
+         to set splitmuxsink back to NULL then ends up trying to bring
+         those NULL elements up to READY with a READY->READY transition,
+         (which fails, prevent splitmuxsink from getting to NULL)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1023>
+
+2021-07-13 01:27:45 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: reduce noise when gst_pad_set_caps fails
+         It may be that downstream is simply flushing, in which case logging
+         an error is misleading.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1029>
+
+2021-07-08 02:22:20 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: always use factory property when set
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1024>
+
+2021-06-21 13:47:50 +0200  Yacine Bandou <yacine.bandou@softathome.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: No need for new "application/x-cbcs" caps
+         Instead of using the new "application/x-cbcs" caps, we are just adding
+         a new structure field "ciphe-mode", to indicate which encryption scheme
+         is used: "cenc", "cbcs", "cbc1" or "cens".
+         Similarly for the protection metadata, we add the "cipher-mode" field
+         to specify the encryption mode with which the buffers are encrypted.
+         "cenc": AES-CTR (no pattern)
+         "cbc1": AES-CBC (no pattern)
+         "cens": AES-CTR (pattern specified)
+         "cbcs": AES-CBC (pattern specified, using a constant IV)
+         Currently only "cenc" and "cbcs" are supported.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1013>
+
+2021-07-05 16:12:57 +0100  Philippe Normand <philn@igalia.com>
+
+       * ext/qt/qtitem.h:
+         qt: Fix clang build
+         The updatePaintNode method is part of the QQuickItem class interface, so needs
+         to be flagged as overriding the default implementation.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/567>
+
+2020-04-15 10:38:04 +0100  Philippe Normand <philn@igalia.com>
+
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+         qt: Add navigation events support
+         Currently handles only mouse events.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/567>
+
+2020-04-15 10:33:22 +0100  Philippe Normand <philn@igalia.com>
+
+       * ext/gtk/gtkgstbasewidget.c:
+         gtk: Scroll events dispatch support
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/567>
+
+2021-07-02 01:41:05 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Always write a tags element into seekhead
+         If there are only stream tags, we still want to write the
+         tags entry into the seekhead, so that tags can be found
+         quickly in the player.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/905
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1020>
+
+2021-06-30 23:52:26 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Don't need to update track per GstCaps if it's not changed
+         Skip GstQTMuxPad::set_caps() call for duplicated caps.
+         All the processing done in set_caps() method for duplicated caps
+         are redundant.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1019>
+
+2021-07-01 13:18:45 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+         rtpssrcdemux: Remove pads and reset the element also in READY->NULL
+         Mostly for completeness.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1018>
+
+2021-07-01 13:18:09 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpptdemux.c:
+         rtpptdemux: Remove pads also in PAUSED->READY
+         They're based on per-stream information and that should be reset
+         whenever going to READY state.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1018>
+
+2021-02-16 16:39:34 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: update plugins cache for vp9enc
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/874>
+
+2021-04-09 19:22:29 +0200  Jakub Adam <jakub.adam@collabora.com>
+
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvp9enc.h:
+       * ext/vpx/gstvpxenums.h:
+       * ext/vpx/meson.build:
+         vpx: add enum for adaptive quantization modes
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/874>
+
+2021-02-16 13:28:00 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvp9enc.h:
+         vp9enc: expose frame-parallel-decoding property
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/874>
+
+2021-02-16 12:57:55 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvp9enc.h:
+         vp9enc: expose aq-mode property
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/874>
+
+2021-06-26 20:00:03 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/udp/gstmultiudpsink.c:
+         multiudpsink: Fix broken SO_SNDBUF get/set on Windows
+         SO_SNDBUF has been undefined on Windows because of missing WinSock2.h
+         include. And don't use native socket functions (e.g., setsockopt())
+         if code is expected to be built on Windows. We don't link ws2_32.lib
+         for this plugin.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1016>
+
+2021-06-24 14:57:14 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtphdrext-twcc.c:
+         rtpmanager: Access GstRTPHdrExt fields through accessor
+         This way, the implementation can be private.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1017>
+
+2021-06-22 17:19:19 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Refuse seeks in BYTES format
+         If downstream tries to seek in BYTES format, don't pass that through
+         to upstream. The byte positions downstream requests won't make any
+         sense in the muxed stream. There might be other formats we want to
+         pass through to upstream, but BYTES is not one of them. If we get a
+         seeking query about BYTES format, refuse that too.
+         This fixes a situation where we're playing a fragmented mp4 over http
+         and qtdemux refuses the initial seek (in TIME format), but then
+         h264parse/baseparse send a seek in BYTES format and everything falls
+         apart.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1014>
+
+2021-06-16 16:30:59 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: update codec_data in caps regardless of format
+         Updating of codec_data in the caps is important to propagate changes
+         in sps/pps/vps via NALs. Without this, downstream does not renegotiate
+         when upstream changes resolution.
+         The comment referring to rtph264pay is from 2015 and is out of date.
+         rtph264pay stopped doing that in 2017 with commit
+         dabeed52a995d27e16eba9e4617e61eb0bcd44c4
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1011>
+
+2021-06-04 13:56:05 +0300  Jordan Petridis <jordan@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         doc: update gst_plugins_cache.json
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1006>
+
+2021-06-03 20:33:45 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         qtitem: don't potentially leak a large number of buffers
+         The only other place where these queued buffers are removed, is in
+         setCaps() but that is not called at all on shutdown so this list of
+         buffers could not be removed.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1004>
+
+2021-05-28 09:54:12 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/jpeg/gstjpegenc.c:
+         jpegenc: Remove arbitrary encoding size limitation
+         The encoder is happy to encode with sizes less then 16x16, so remove this
+         arbitrary limitation. This also fixes the fact the sink and src template caps
+         disagree.
+         Fixes #888
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/998>
+
+2021-05-23 15:42:38 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: use g_memdup2() as g_memdup() is deprecated
+         - atom nodes/bytereader sizes are already checked
+         - palettes: are fixed/known size
+         g_memdup() is deprecated since GLib 2.68 and we want to avoid
+         deprecation warnings with recent versions of GLib.
+         Also use gst_buffer_new_memdup() instead of _wrapped(g_memdup(),..).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/993>
+
+2021-05-23 01:28:11 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/ebml-read.c:
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.c:
+       * gst/matroska/matroska-read-common.c:
+         matroskademux: use g_memdup2() as g_memdup() is deprecated
+         - ebml-read: add some sanity checks when going from 64-bit
+         to 32-bit length
+         - matroska-ids: codec_data_size has been checked via
+         gst_ebml_read_binary(), is existing allocation.
+         - matroska-demux: alloc size is from existing allocations
+         g_memdup() is deprecated since GLib 2.68 and we want to avoid
+         deprecation warnings with recent versions of GLib.
+         Also use gst_buffer_new_memdup() instead of _wrapped(g_memdup(),..).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/993>
+
+2021-05-22 19:39:32 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/libpng/gstpngdec.c:
+       * ext/vpx/gstvpxenc.c:
+       * ext/wavpack/gstwavpackenc.c:
+       * meson.build:
+       * tests/check/elements/rtp-payloading.c:
+       * tests/check/elements/rtph264.c:
+       * tests/check/elements/rtph265.c:
+       * tests/check/elements/rtpopus.c:
+       * tests/check/elements/rtpvp8.c:
+       * tests/check/elements/rtpvp9.c:
+       * tests/icles/gdkpixbufoverlay-test.c:
+         Use g_memdup2() where available and add fallback for older GLib versions
+         - png: alloc size variable is a png type that's always 32-bit
+         - vpx: alloc size based on existing allocation
+         - wavpack: alloc size based on existing allocation
+         - icles: gdkpixbufoverlay: trusted and hard-coded input data
+         - rtp tests: rtp-payloading, vp8, vp9, h264, h265: trusted and/or static input data
+         g_memdup() is deprecated since GLib 2.68 and we want to avoid
+         deprecation warnings with recent versions of GLib.
+         Also use gst_buffer_new_memdup() instead of _wrapped(g_memdup(),..)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/993>
+
+2021-06-01 15:28:36 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * meson.build:
+         Back to development
+
+=== release 1.19.1 ===
+
+2021-06-01 00:11:44 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * README:
+       * RELEASE:
+       * docs/gst_plugins_cache.json:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.19.1
+
+2021-05-29 12:54:22 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpjpegpay.c:
+         rtpjpegpay: fix image corruption when compiled with MSVC on Windows
+         On Windows with MSVC, jpeg_header_size would end up 2 bytes larger
+         than it should be. This then leads to the first 2 bytes of the
+         actual jpeg image data to be dropped, because we think those
+         belong to the header, which results in an undecodable image when
+         reconstructed in the depayloader.
+         What happens is that when the compiler evaluates
+         jpeg_header_size = mem.offset + read_u16_and_inc_offset_by_2(&mem);
+         it actually uses the mem.offset value after it has been increased
+         by the function call on the right hand size of the equation.
+         From section 6.5 of the C99 spec:
+         3. The grouping of operators and operands is indicated by the syntax [74].
+         Except as specified later (for the function-call (), &&, ||, ?:, and
+         comma operators), the order of evaluation of subexpressions and the
+         order in which side effects take place are both unspecified.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/889
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/999>
+
+2021-05-25 16:19:20 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Set default latency if the frame duration is invalid
+         If the duration of the v4l2object is invalid, use default 25fps instead.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/996>
+
+2021-05-26 00:23:56 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: Drop "field-order" field while transforming caps
+         Like other basetransform subclasses are doing, drop field
+         which can be converted by deinterlace.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/997>
+
+2021-05-25 20:10:34 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: Drop field-order field if outputting progressive
+         Progressive with field-order doesn't make sense
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/997>
+
+2021-05-21 14:19:29 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * tests/check/elements/rtpssrcdemux.c:
+         rtpssrcdemux: fix "data flow before segment event" crash
+         This crash could happen at any time a RTP and RTCP buffer arrived
+         simultaneously in ssrcdemux.
+         The problem was that sticky-event arriving while the rtp and rtcp pads
+         were being set up could arrive just too late to be included in the initial
+         forwarding.
+         The fix checks if the stickies have been sent on the srcpad about to be
+         pushed on, and if not sends them. It also blocks any stickes from
+         being forwarded *prior* to this happening, to avoid them arriving on
+         the srcpad multiple times.
+         Since the test loops 1000 times, this will make running under valgrind
+         take forever, so use the RUNNING_ON_VALGRIND variable to detect we
+         are running under valgrind, and reduce the loop-count to 2 in that case.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/992>
+
+2021-05-21 18:45:17 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+         rtpssrcdemux: refactor destruction of GstRtpSsrcDemuxPads
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/992>
+
+2021-05-21 18:30:28 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * gst/rtpmanager/gstrtpssrcdemux.h:
+         rtpssrcdemux: make naming consistent
+         Use plural for GstRtpSsrcDemuxPads, since it contains two pads, and
+         use the variable-name 'dpads' everywhere.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/992>
+
+2021-05-23 15:14:11 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: use g_strndup() for copying text data
+         So we don't rely on NUL terminators inside the data.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/994>
+
+2021-05-23 13:29:07 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: clean up adtl/note/labl chunk parsing
+         We were passing the size of the adtl chunk to the note/labl
+         sub-chunk parsing function, which means we may memdup lots of
+         data after the chunk string's NUL terminator that doesn't
+         really belong to it.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/994>
+
+2021-05-23 13:24:21 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: guard against overflow when comparing chunk sizes
+         Could be rewritten as lsize > (size - 8) a well, but the
+         extra check seems clearer. Doesn't look like it was problematic,
+         lsize wasn't actually used when parsing the sub-chunks.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/994>
+
+2021-05-21 13:31:12 -0300  Daniel Almeida <daniel.almeida@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+         doc: update gst_plugins_cache.json
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/991>
+
+2021-05-05 13:20:04 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: fix decoder glitches with H264 content
+         To avoid decoder starvation causing glitches on screen,
+         the demuxer shall clip only when the buffer is a key frame
+         and the lace time is greater than the stop time.
+         Fixes gst-editing-services#128
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/973>
+
+2021-05-11 20:41:38 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtoverlay.cc:
+         qml: don't use buffers that have invalid contents
+         If the GL context is not shareable, ignore it.
+         A future change may also not output the relevant output either.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/983>
+
+2021-05-11 20:38:52 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqsgtexture.cc:
+         qml: also use the dummy texture when no buffer has been set
+         Fixes corrupted texture output when changing OpenGL display/contexts.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/983>
+
+2021-05-11 17:20:00 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+         doc: Update cache for RGBP format addition
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/968>
+
+2021-04-23 14:37:46 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.c:
+       * gst/matroska/matroska-ids.h:
+         matroskademux: Advertise codec-alpha in caps
+         This will be used to select the appropriate decoders. We also only attach the
+         GstVideoCodecAlphaMeta if the AlphaMode element is set, this is to stay on the
+         safe side and mimic what browsers (verified in Firefox and Chromium code) do.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/968>
+
+2021-03-22 16:58:26 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Store alpha stream in VideoCodecAlphaMeta
+         This generalize the feature over using mini object quark data. If
+         that feature was Matroska specifc, using the new CustomMeta would have
+         been enough and arguably cleaner then QData, though it seems that
+         similar technique is use with AV1 Image Format (AVIF).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/968>
+
+2016-12-03 14:27:57 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroska-demux: extract VP8 alpha from BlockAdditionals
+         And put it on buffers as qdata (which is easier in this
+         case than a private custom meta because it can be picked
+         up easily in other modules).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/968>
+
+2021-05-03 17:39:05 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+       * ext/qt/gstqtglutility.h:
+       * ext/qt/gstqtoverlay.cc:
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtwindow.cc:
+         qt: return a different GstGLDisplay object when the first sink requests
+         This allows the 'replace-gstreamer-opengl-context' context machinery to
+         correctly replace the OpenGL context used by the pipeline when the first
+         qmlglsink is added to the pipeline.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/982>
+
+2021-05-07 11:16:47 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: Plug leaks of saddr in error cases
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/977>
+
+2021-05-07 11:16:21 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: Whitespace
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/977>
+
+2021-05-07 00:43:44 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: Plug a method subobject leak
+         Changing the method would leak the previous method.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/976>
+
+2021-05-06 15:04:42 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/vpx/gstvp9enc.c:
+         vp9enc: Add color range support
+         When setting the colorspace, we now clear the range to reduced range,
+         the default, and then we also set the range so the VP9 encoder encodes
+         the right information in the bitstream.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/975>
+
+2021-05-06 14:51:31 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvpxenc.c:
+         vp9enc: Move colorspace configuration in VP9 enc
+         This is not supported by VP8 and was causing a warning.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/975>
+
+2021-05-06 14:48:36 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvpxenc.c:
+       * ext/vpx/gstvpxenc.h:
+         vpxdenc: Add a GstVideoCodecState to configure_encoder virtual
+         This will be needed to configure the VP9 specific colorimetry, which is
+         currently configured for VP8 casing warning.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/975>
+
+2021-05-05 16:48:10 +0200  Bastien Nocera <hadess@hadess.net>
+
+       * ext/gtk/gtkgstbasewidget.c:
+         gtk: Remove coordinates double-translation
+         Remove our own translation in the mouse event capture code, as that
+         translation will be done through the navigation interface.
+         Tested by resizing the window created by:
+         gst-launch-1.0 -v videotestsrc ! navigationtest ! glupload ! glcolorconvert ! tee name=t  ! gtkglsink
+         and checking that the cursor follows the mouse as expected.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/974>
+
+2021-05-05 14:28:15 +0200  Bastien Nocera <hadess@hadess.net>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtk: Translate navigation events coordinates
+         If the application passed down some pointer coordinates, translate those
+         from display coordinates to stream coordinates, so things work as
+         expected even if the video is resized.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/974>
+
+2021-05-05 14:24:31 +0200  Bastien Nocera <hadess@hadess.net>
+
+       * ext/gtk/gtkgstbasewidget.c:
+       * ext/gtk/gtkgstbasewidget.h:
+         gtk: Export _display_size_to_stream_size()
+         Export _display_size_to_stream_size() so that GstNavigation implementors
+         can translate from display coordinates to stream coordinates before
+         pushing the events upstream to the DVD source, for example.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/974>
+
+2018-02-26 17:26:41 +0100  David Fernandez <d.fernandezlop@gmail.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/matroska/matroska-mux.c:
+         matroska-mux: Change accepted caps width and height from [16, MAX] to [1, MAX]
+         There are cases where the video size might be less than 16x16.
+         This change allows the Matroska muxer to accept this cases.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/539>
+
+2021-04-20 22:08:23 +0200  François Laignel <fengalin@free.fr>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtsp/gstrtspsrc.c:
+       * tests/check/elements/avimux.c:
+       * tests/check/elements/flvmux.c:
+       * tests/check/elements/interleave.c:
+       * tests/check/elements/qtmux.c:
+       * tests/check/elements/rtpbin.c:
+       * tests/check/elements/rtpcollision.c:
+       * tests/check/elements/rtpmux.c:
+       * tests/check/elements/splitmuxsink.c:
+       * tests/check/elements/videomixer.c:
+       * tests/examples/rtp/client-PCMA.c:
+       * tests/examples/rtp/server-alsasrc-PCMA.c:
+         Use gst_element_request_pad_simple
+         Instead of the deprecated gst_element_get_request_pad.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/958>
+
+2021-04-30 08:12:47 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+         qtmux: Make sure to write 64-bit STCO table when needed.
+         qtmux attempts to choose between writing a 32-bit stco chunk offset table
+         when it can, but switch to a 64-bit co64 table when file offsets go over
+         4GB.
+         This patch fixes a problem where the atom handling code was checking
+         mdat-relative offsets instead of the final file offset (computed by
+         adding the mdat position plus the mdat-relative offset) - leading to
+         problems where files with a size between 4GB and 4GB+offset-of-the-mdat
+         would write incorrect STCO tables with some samples having truncated
+         32-bit offsets.
+         Smaller files write STCO correctly, larger files would switch to
+         co64 and also output correctly.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/970>
+
+2021-04-22 15:01:32 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Add interlace-mode back to caps for camera
+         skip_try_fmt_probes is set to TRUE for v4l2src to skip interlace-mode and
+         colorimetry when probe caps. gst_v4l2_object_set_format_full() will add
+         colorimetry back to caps when iterating over the negotiated caps. There is
+         one case that v4l2src is first in preview state then starts recording.
+         v4l2src caps will change with an additional interlace-mode structure after
+         renegotiation, then v4l2src needs to reset. But this camera driver can't
+         orphan buffer pool, it causes require buffer failed as streaming is still
+         in active state.
+         To fix this, also need to add interlace-mode back to caps for camera to
+         avoid reset.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/961>
+
+2021-04-02 18:41:28 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/rtp/gstrtpopuspay.c:
+       * gst/rtp/gstrtpopuspay.h:
+       * tests/check/elements/rtp-payloading.c:
+         rtpopuspay: set MARKER flag
+         Set MARKER flag on first buffer after DTX.
+         According to RFC 3551 section 4.1 the marker bit needs to be set on
+         "the first packet after a silence period during which packets have
+         not been transmitted contiguously".
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/967>
+
+2021-03-31 11:18:30 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtp/gstrtpopuspay.c:
+       * gst/rtp/gstrtpopuspay.h:
+       * tests/check/elements/rtp-payloading.c:
+         rtpopuspay: add DTX support
+         If enabled, the payloader won't transmit empty frames.
+         Can be tested using:
+         opusenc dtx=true bitrate-type=vbr ! rtpopuspay dtx=true
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/967>
+
+2021-04-24 11:15:50 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * ext/taglib/gstid3v2mux.cc:
+         taglib: Update createFrame() to non-deprecated version.
+         ID3v2::FrameFactory::createFrame() versions not taking a Header have
+         been deprecated since v1.5 (Jan 2008).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/965>
+
+2021-04-25 02:16:45 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: fix divide-by-zero
+         The estimated packet-duration can sometimes end up as zero, and dividing
+         by that is never a good idea...
+         The test reproduces the scenario, and the fix is easy.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/966>
+
+2020-06-02 19:38:33 +0200  Havard Graff <havard@pexip.com>
+
+         rtpjitterbuffer: clean up and improve missing packets handling
+         * Try to make variable and function names more clear.
+         * Add plenty of comments describing the logic step-by-step.
+         * Improve the logging around this, making the logs easier to read and
+         understand when debugging these issues.
+         * Revise the logic of packets that are actually beyond saving in doing
+         the following:
+         1. Do an optimistic estimation of which packets can still arrive.
+         2. Based on this, find which packets (and duration) are now hopelessly
+         lost.
+         3. Issue an immediate lost-event for the hopelessly lost and then add
+         lost/rtx timers for the ones we still hope to save, meaning that if
+         they are to arrive, they will not be discarded.
+         * Revise the use of rtx-delay:
+         Earlier the rtx-delay would vary, depending on the pts of the latest
+         packet and the estimated pts of the packet it being issued a RTX for,
+         but now that we aim to estimate the PTS of the missing packet accurately,
+         the RTX delay should remain the same for all packets.
+         Meaning: If the packet have a PTS of X, the delay in asked for a RTX
+         for this packet is always a constant X + delay, not a variable one.
+         * Finally ensure that the chaotic "check-for-stall" tests uses timestamps
+         that starts from 0 to make them easier to debug.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/952>
+
+2021-04-23 12:07:52 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/level/gstlevel.c:
+       * gst/level/gstlevel.h:
+         level: make properties thread-safe
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/962>
+
+2021-04-22 14:11:09 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/level/gstlevel.c:
+         level: disable passthrough when audio-level-meta is enabled
+         Ensure we receive a writable buffer to add the meta.
+         Fix #878
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/962>
+
+2021-04-23 08:28:06 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Don't pass a non-GObject pointer to GST_DEBUG_OBJECT and similar
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/964>
+
+2021-04-22 08:57:23 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Avoid generation of invalid timestamps
+         When updating timestamps and timer timeouts with a new offset, make sure that
+         the resulting value is valid (and not a negative (signed) value which ends up in
+         a massive (unsigned) value).
+         Fixes #571
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/960>
+
+2021-04-21 18:41:08 +0100  Philippe Normand <philn@igalia.com>
+
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: Fix glib warning emitted when attribute query fails
+         The v4l2object is not a GstObject. Logging has to go through its dbg_obj
+         specially meant for this.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/959>
+
+2021-03-25 13:20:38 +0100  VaL Doroshchuk <valentyn.doroshchuk@qt.io>
+
+       * ext/qt/gstqtoverlay.cc:
+       * tests/examples/qt/qmloverlay/overlay.py:
+         qmloverlay: Use first found GstGLVideoItem as widget property
+         GstGLVideoItem is required to render input video in the overlay's qml.
+         And currently qmlgloverlay requires to set this GstGLVideoItem to its widget property.
+         Instead of fetching GstGLVideoItem from the overlay's root object (root-item prop),
+         and setting it back as a widget (widget prop),
+         proposing to use found GstGLVideoItem in the current object hierarchy (passed in qml-scene) by default.
+         Also useful in Python, which solves the issue when casting gpointer <=> QQuickItem* is required.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/919>
+
+2021-04-19 16:39:03 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/v4l2/gstv4l2.c:
+         v4l2: fix debug category initialisation again
+         Would spew warnings on the rpi4 when calling into
+         gst_v4l2_object_get_codec_caps() from the probe_and_register()
+         function since the v4l2_debug category initialisation would
+         only be done later as part of the element/device provider
+         registration.
+         Also log things in the probe function to the v4l2 category
+         instead of the default category while we're at it.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/956>
+
+2021-04-19 01:29:33 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix race saving seek event seqnum.
+         We need to save the seek seqnum before the flush stop event
+         since that will start the basesrc task which may send the segment
+         event before we're ready.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/954>
+
+2021-03-31 10:52:14 +0200  Marco Felsch <m.felsch@pengutronix.de>
+
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+         qmlglsink: allow to set force-aspect-ratio property
+         Add the forceAspectRatio Q_PROPERTY to allow changing the aspect ratio
+         from QML code as well.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/937>
+
+2021-04-19 11:14:00 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/v4l2/v4l2_calls.c:
+         v4l2src: fix spurious SOURCE_CHANGED error-level log messages
+         They're harmless, and some drivers at least return EINVAL
+         instead of ENOTTY for unsupported events (here: uvcvideo).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/955>
+
+2021-04-14 16:32:06 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/rtp/gstrtpsbcpay.c:
+         rtpsbcpay: remove use of packed struct for payload
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/950>
+
+2021-04-14 11:13:45 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/dtmf/gstdtmfcommon.h:
+       * gst/dtmf/gstrtpdtmfdepay.c:
+       * gst/dtmf/gstrtpdtmfsrc.c:
+         dtmf: convert to bit accessors
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/949>
+
+2021-04-13 09:23:12 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Remove some dead code
+         stop is not used after this point, nor do we create a new segment
+         here since 84725d62b57bc74ce34abde755f35bf8f948f94d
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/940>
+
+2021-04-10 02:53:51 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Do not overwrite the known duration after a seek
+         This breaks the duration query and also the seeking query.
+         Broke in 5f1a732bc7b76a6f1b8aa5f26b6e76fbca0261c7
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/940>
+
+2021-04-10 04:40:46 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Just assign the segment instead of memcpy
+         Assignments copy by value, we don't need to memcpy...
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/940>
+
+2021-04-13 11:30:51 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Check srcresult before waiting on the condition variable too
+         It might've been set to FLUSHING between the last check and the waiting,
+         and in that case we'd be waiting here forever now.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/944>
+
+2021-04-12 23:15:17 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * tests/check/elements/rtpsession.c:
+         rtp: fix test_twcc_header_and_run to support big endian.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/942>
+
+2021-04-12 23:13:15 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/rtpmanager/rtptwcc.c:
+         rtp: fix rtptwcc to support big endian.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/942>
+
+2021-04-12 21:59:45 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/rtpmanager/gstrtphdrext-rfc6464.c:
+         rtp: fix rtphdrextrfc6464 to support big endian.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/942>
+
+2021-04-12 21:36:58 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * tests/check/elements/alpha.c:
+         tests: Fix alpha test on big endian machines.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/943>
+
+2021-03-19 02:51:20 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Protect against writing absurd sample durations
+         If the input DTS goes backward or is missing, the calculated
+         sample duration goes negative and wraps around to a very big
+         number. In that case, just write a sample with a duration of
+         0 and hope the problem is transient.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/914>
+
+2021-04-10 03:09:44 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: De-dup seek event seqnums to avoid multiple seeks
+         Seek events are sent upstream on each sink, so if we receive multiple
+         seeks with the same seqnum, we must only perform one seek, not N seeks
+         where N = the number of sinks in the pipeline connected to rtspsrc.
+         This is the same thing done by demuxers like qtdemux or matrsokademux.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/938>
+
+2021-04-10 01:55:28 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Using multicast UDP has no relation to seekability
+         The transport has no relation to whether a media can be seeked. The
+         range response having a duration is the correct thing to check for.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/939>
+
+2021-04-10 01:54:48 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Add more logging for range parsing and seekable
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/939>
+
+2021-04-10 14:47:23 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         videocrop: Update documentation cache
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/515>
+
+2021-04-07 21:57:11 +0200  Markus Ebner <info@ebner-markus.de>
+
+       * gst/videocrop/gstvideocrop-private.h:
+       * gst/videocrop/gstvideocrop.c:
+       * gst/videocrop/gstvideocrop.h:
+         videocrop: Add support for GBR* video formats
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/515>
+
+2021-04-07 18:54:49 +0200  Markus Ebner <info@ebner-markus.de>
+
+       * gst/videocrop/gstvideocrop-private.h:
+       * gst/videocrop/gstvideocrop.c:
+       * gst/videocrop/gstvideocrop.h:
+         videocrop: Added support for planar pixel formats > 8bits
+         - Added support for planar pixel formats with depths greater than 8bits
+         to transform_planar implementation
+         - Added a whole lot of new pixel formats to the support-list
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/515>
+
+2021-04-07 17:52:34 +0200  Markus Ebner <info@ebner-markus.de>
+
+       * gst/videocrop/gstaspectratiocrop.c:
+       * gst/videocrop/gstvideocrop-private.h:
+       * gst/videocrop/gstvideocrop.c:
+         videocrop: Move supported format list into private header
+         - Moved declaration of supported pixel formats to private header, which
+         can be shared between videocrop and aspectvideocrop
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/515>
+
+2021-04-06 17:02:34 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtpmanager/rtpjitterbuffer.c:
+         rtpjitterbuffer: More logging when calculating rfc7273 timestamps
+         This code can be fragile, since it is very exacting in the timestamps
+         that it will accept. Add more logging so it's easier to debug issues
+         and figure out whether it's a bug in the calculation or something
+         wrong in the incoming buffers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/934>
+
+2021-04-08 13:29:10 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph265depay.c:
+       * gst/rtp/gstrtpsv3vdepay.c:
+         rtp: missing debug init after element splitting
+         - h264depay
+         - h265depay
+         - sv3vdepay
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/936>
+
+2020-03-30 09:29:07 +0200  Michal Dzik <michal.dzik@streamunlimited.com>
+
+       * gst/rtp/gstrtpsbcpay.c:
+         rtp: rename gst_rtp_sbc_pay_flush_buffers()
+         gst_rtp_sbc_pay_flush_buffers() is a misleading name. A better name would
+         be gst_rtp_sbc_pay_drain_buffers(), because that's what it does, it drains
+         any leftover queued data and pushes it downstream. "Flushing" in GStreamer
+         typically means to throw away any queued data and not process/push it
+         downstream.
+         Signed-off-by: Michal Dzik <michal.dzik@streamunlimited.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/700>
+
+2020-03-24 13:31:00 +0100  Michal Dzik <michal.dzik@streamunlimited.com>
+
+       * gst/rtp/gstrtpsbcpay.c:
+         rtp: fix adapter flushing in sbc payloader
+         GstAdapter must be flushed in some cases (flush, new segment, state change)
+         Without it, it may, for example, push some leftover buffer from old
+         segment in new segment. This, in general, breaks timestamps.
+         See GstAdapter documentation for more.
+         Signed-off-by: Michal Dzik <michal.dzik@streamunlimited.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/700>
+
+2020-08-18 20:16:06 +0200  Jakub Adam <jakub.adam@collabora.com>
+
+       * ext/vpx/gstvpxenc.c:
+         vpxenc: add colorspace information into VP9 bitstream
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/871>
+
+2021-03-26 16:26:22 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Use default colorimetry if that in caps is unknown
+         Some streams have unknown colorimetry in caps, but v4l2object sets
+         default values for each primaries. It will cause check colorimetry
+         fail when do gst_v4l2_video_colorimetry_matches().
+         To fix this, need to keep the unknown colorimetry in caps same as
+         the default value set by v4l2object.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/923>
+
+2021-03-31 16:37:56 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Take segment stop into account when need_segment
+         Otherwise, in the case of e.g. a deferred seek event, the segment stop
+         would be replaced with GST_CLOCK_TIME_NONE.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/929>
+
+2021-03-29 16:45:26 +0200  Val Doroshchuk <val@sevendof.com>
+
+       * ext/qt/gstqtoverlay.cc:
+       * ext/qt/gstqtoverlay.h:
+         gstqtoverlay: Add initialization and finalization to qml-scene prop
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/924>
+
+2021-03-31 10:21:59 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtglutility.h:
+         qt: fix build warning with clang and c-linkage of user defined type
+         In file included from ../subprojects/gst-plugins-good/ext/qt/qtglrenderer.cc:17:
+         ../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:35:16: error: 'qt_opengl_native_context_from_gst_gl_context' has C-linkage specified, but returns user-defined type 'QVariant' which is incompatible with C [-Werror,-Wreturn-type-c-linkage]
+         QVariant       qt_opengl_native_context_from_gst_gl_context     (GstGLContext * context);
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/928>
+
+2021-03-30 09:45:45 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/qt/gstqtelement.cc:
+       * ext/qt/gstqtelements.h:
+       * ext/qt/gstqtoverlay.cc:
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/gstqtsrc.cc:
+         qt: hotfix: allow per feature registration
+         Fixes #869
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/925>
+
+2021-02-17 08:52:40 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+       * ext/twolame/gsttwolamemp2enc.h:
+         twolame: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:49:03 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/shout2/gstshout2.c:
+       * ext/shout2/gstshout2.h:
+         shout2: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:38:46 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/cairo/gstcairo.c:
+       * ext/cairo/gstcairooverlay.c:
+       * ext/cairo/gstcairooverlay.h:
+         cairo: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:34:34 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/y4m/gsty4mencode.c:
+       * gst/y4m/gsty4mencode.h:
+         y4m: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:32:26 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/wavparse/gstwavparse.c:
+       * gst/wavparse/gstwavparse.h:
+         wavparse: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:29:40 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/wavenc/gstwavenc.c:
+       * gst/wavenc/gstwavenc.h:
+         wavenc: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:27:24 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/spectrum/gstspectrum.c:
+       * gst/spectrum/gstspectrum.h:
+         spectrum: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:27:12 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/monoscope/gstmonoscope.c:
+       * gst/monoscope/gstmonoscope.h:
+         monoscope: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:22:47 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+       * gst/imagefreeze/gstimagefreeze.h:
+         imagefreeze: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:19:52 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/id3demux/gstid3demux.c:
+       * gst/id3demux/gstid3demux.h:
+         id3demux: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:16:33 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/icydemux/gsticydemux.c:
+       * gst/icydemux/gsticydemux.h:
+         icydemux: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:14:26 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/goom2k1/gstgoom.c:
+       * gst/goom2k1/gstgoom.h:
+         goom2k1: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:11:26 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/cutter/gstcutter.c:
+       * gst/cutter/gstcutter.h:
+         cutter: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:11:14 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/goom/gstgoom.c:
+       * gst/goom/gstgoom.h:
+         goom: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 17:10:33 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/deinterlace/gstdeinterlace.h:
+         deinterlace: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 16:34:48 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * sys/oss4/gstoss4audioplugin.c:
+       * sys/oss4/meson.build:
+       * sys/oss4/oss4-audio.c:
+       * sys/oss4/oss4-audio.h:
+       * sys/oss4/oss4-sink.c:
+       * sys/oss4/oss4-sink.h:
+       * sys/oss4/oss4-source.c:
+       * sys/oss4/oss4-source.h:
+         oss4: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 16:11:36 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * sys/oss/gstossaudio.c:
+       * sys/oss/gstossaudioelement.c:
+       * sys/oss/gstossaudioelements.h:
+       * sys/oss/gstosssink.c:
+       * sys/oss/gstosssrc.c:
+       * sys/oss/meson.build:
+         oss: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 15:56:35 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/auparse/gstauparse.c:
+       * gst/auparse/gstauparse.h:
+         auparse: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 15:29:06 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2deviceprovider.c:
+       * sys/v4l2/gstv4l2element.c:
+       * sys/v4l2/gstv4l2elements.h:
+       * sys/v4l2/gstv4l2radio.c:
+       * sys/v4l2/gstv4l2sink.c:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/meson.build:
+         v4l2: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 15:05:43 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/videofilter/gstgamma.c:
+       * gst/videofilter/gstgamma.h:
+       * gst/videofilter/gstvideobalance.c:
+       * gst/videofilter/gstvideobalance.h:
+       * gst/videofilter/gstvideoflip.c:
+       * gst/videofilter/gstvideoflip.h:
+       * gst/videofilter/gstvideomedian.c:
+       * gst/videofilter/gstvideomedian.h:
+       * gst/videofilter/plugin.c:
+         videofilter: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 14:58:57 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/videocrop/gstaspectratiocrop.c:
+       * gst/videocrop/gstvideocrop.c:
+       * gst/videocrop/gstvideocropelement.c:
+       * gst/videocrop/gstvideocropelements.h:
+       * gst/videocrop/gstvideocropplugin.c:
+       * gst/videocrop/meson.build:
+         videocrop: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 14:54:15 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/videobox/gstvideobox.c:
+       * gst/videobox/gstvideobox.h:
+         videobox: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 14:49:56 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/udp/gstdynudpsink.c:
+       * gst/udp/gstmultiudpsink.c:
+       * gst/udp/gstudp.c:
+       * gst/udp/gstudpelement.c:
+       * gst/udp/gstudpelements.h:
+       * gst/udp/gstudpsink.c:
+       * gst/udp/gstudpsrc.c:
+       * gst/udp/meson.build:
+         udp: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 14:43:32 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/smpte/gstsmpte.c:
+       * gst/smpte/gstsmpte.h:
+       * gst/smpte/gstsmptealpha.c:
+       * gst/smpte/gstsmptealpha.h:
+       * gst/smpte/plugin.c:
+         smpte: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 14:38:37 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/shapewipe/gstshapewipe.c:
+       * gst/shapewipe/gstshapewipe.h:
+         shapewipe: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 14:35:51 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/rtsp/gstrtpdec.c:
+       * gst/rtsp/gstrtsp.c:
+       * gst/rtsp/gstrtspelement.c:
+       * gst/rtsp/gstrtspelements.h:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/meson.build:
+         rtsp: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 14:24:33 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+       * gst/rtpmanager/gstrtpdtmfmux.c:
+       * gst/rtpmanager/gstrtpdtmfmux.h:
+       * gst/rtpmanager/gstrtpfunnel.c:
+       * gst/rtpmanager/gstrtpfunnel.h:
+       * gst/rtpmanager/gstrtphdrext-rfc6464.c:
+       * gst/rtpmanager/gstrtphdrext-rfc6464.h:
+       * gst/rtpmanager/gstrtphdrext-twcc.c:
+       * gst/rtpmanager/gstrtphdrext-twcc.h:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpjitterbuffer.h:
+       * gst/rtpmanager/gstrtpmanager.c:
+       * gst/rtpmanager/gstrtpmux.c:
+       * gst/rtpmanager/gstrtpmux.h:
+       * gst/rtpmanager/gstrtpptdemux.c:
+       * gst/rtpmanager/gstrtpptdemux.h:
+       * gst/rtpmanager/gstrtprtxqueue.c:
+       * gst/rtpmanager/gstrtprtxqueue.h:
+       * gst/rtpmanager/gstrtprtxreceive.c:
+       * gst/rtpmanager/gstrtprtxreceive.h:
+       * gst/rtpmanager/gstrtprtxsend.c:
+       * gst/rtpmanager/gstrtprtxsend.h:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/gstrtpsession.h:
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * gst/rtpmanager/gstrtpssrcdemux.h:
+       * gst/rtpmanager/gstrtpst2022-1-fecdec.c:
+       * gst/rtpmanager/gstrtpst2022-1-fecdec.h:
+       * gst/rtpmanager/gstrtpst2022-1-fecenc.c:
+       * gst/rtpmanager/gstrtpst2022-1-fecenc.h:
+         rtpmanager: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 13:49:15 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/replaygain/gstrganalysis.c:
+       * gst/replaygain/gstrglimiter.c:
+       * gst/replaygain/gstrglimiter.h:
+       * gst/replaygain/gstrgvolume.c:
+       * gst/replaygain/gstrgvolume.h:
+       * gst/replaygain/replaygain.c:
+       * gst/replaygain/rganalysis.h:
+         replaygain: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 13:43:44 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/multipart/multipart.c:
+       * gst/multipart/multipartdemux.c:
+       * gst/multipart/multipartdemux.h:
+       * gst/multipart/multipartmux.c:
+       * gst/multipart/multipartmux.h:
+         multipart: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 12:04:26 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/multifile/gstimagesequencesrc.c:
+       * gst/multifile/gstimagesequencesrc.h:
+       * gst/multifile/gstmultifile.c:
+       * gst/multifile/gstmultifilesink.c:
+       * gst/multifile/gstmultifilesink.h:
+       * gst/multifile/gstmultifilesrc.c:
+       * gst/multifile/gstmultifilesrc.h:
+       * gst/multifile/gstsplitfilesrc.c:
+       * gst/multifile/gstsplitfilesrc.h:
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+       * gst/multifile/gstsplitmuxsrc.c:
+       * gst/multifile/gstsplitmuxsrc.h:
+         multifile: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 11:14:17 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/matroska/gstmatroskaelement.c:
+       * gst/matroska/gstmatroskaelements.h:
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-demux.h:
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-parse.c:
+       * gst/matroska/matroska-parse.h:
+       * gst/matroska/matroska.c:
+       * gst/matroska/meson.build:
+       * gst/matroska/webm-mux.c:
+         matroska: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 10:59:34 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/level/gstlevel.c:
+       * gst/level/gstlevel.h:
+         level: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 10:57:58 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/law/alaw-decode.c:
+       * gst/law/alaw-decode.h:
+       * gst/law/alaw-encode.c:
+       * gst/law/alaw-encode.h:
+       * gst/law/alaw.c:
+       * gst/law/mulaw-decode.c:
+       * gst/law/mulaw-decode.h:
+       * gst/law/mulaw-encode.c:
+       * gst/law/mulaw-encode.h:
+       * gst/law/mulaw.c:
+         law: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 10:26:40 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/isomp4/gstisomp4element.c:
+       * gst/isomp4/gstisomp4elements.h:
+       * gst/isomp4/gstqtmoovrecover.c:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstrtpxqtdepay.c:
+       * gst/isomp4/isomp4-plugin.c:
+       * gst/isomp4/meson.build:
+       * gst/isomp4/qtdemux.c:
+         isomp4: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 09:57:27 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/interleave/deinterleave.c:
+       * gst/interleave/gstinterleaveelements.h:
+       * gst/interleave/interleave.c:
+       * gst/interleave/plugin.c:
+         interleave: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-16 09:51:16 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/flx/gstflxdec.c:
+       * gst/flx/gstflxdec.h:
+         flx: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 17:37:09 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/flv/gstflvdemux.c:
+       * gst/flv/gstflvelement.c:
+       * gst/flv/gstflvelements.h:
+       * gst/flv/gstflvmux.c:
+       * gst/flv/gstflvplugin.c:
+       * gst/flv/meson.build:
+         flv: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 17:27:51 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/equalizer/gstiirequalizer.c:
+       * gst/equalizer/gstiirequalizer.h:
+       * gst/equalizer/gstiirequalizer10bands.c:
+       * gst/equalizer/gstiirequalizer3bands.c:
+       * gst/equalizer/gstiirequalizernbands.c:
+       * gst/equalizer/gstiirequalizerplugin.c:
+       * gst/equalizer/meson.build:
+         equalizer: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 15:37:52 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/effectv/gstaging.c:
+       * gst/effectv/gstdice.c:
+       * gst/effectv/gstedge.c:
+       * gst/effectv/gsteffectv.c:
+       * gst/effectv/gsteffectv.h:
+       * gst/effectv/gstop.c:
+       * gst/effectv/gstquark.c:
+       * gst/effectv/gstradioac.c:
+       * gst/effectv/gstrev.c:
+       * gst/effectv/gstripple.c:
+       * gst/effectv/gstshagadelic.c:
+       * gst/effectv/gststreak.c:
+       * gst/effectv/gstvertigo.c:
+       * gst/effectv/gstwarp.c:
+         effectv: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 15:03:10 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/dtmf/gstdtmf.c:
+       * gst/dtmf/gstdtmfsrc.c:
+       * gst/dtmf/gstdtmfsrc.h:
+       * gst/dtmf/gstrtpdtmfdepay.c:
+       * gst/dtmf/gstrtpdtmfdepay.h:
+       * gst/dtmf/gstrtpdtmfsrc.c:
+       * gst/dtmf/gstrtpdtmfsrc.h:
+         dtmf: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 14:55:15 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/debugutils/breakmydata.c:
+       * gst/debugutils/cpureport.c:
+       * gst/debugutils/gstcapsdebug.c:
+       * gst/debugutils/gstcapssetter.c:
+       * gst/debugutils/gstdebug.c:
+       * gst/debugutils/gstdebugutilselements.h:
+       * gst/debugutils/gstnavigationtest.c:
+       * gst/debugutils/gstnavigationtest.h:
+       * gst/debugutils/gstnavseek.c:
+       * gst/debugutils/gstpushfilesrc.c:
+       * gst/debugutils/gsttaginject.c:
+       * gst/debugutils/progressreport.c:
+       * gst/debugutils/rndbuffersize.c:
+       * gst/debugutils/testplugin.c:
+         debugutils: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 13:38:21 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/avi/gstavi.c:
+       * gst/avi/gstavidemux.c:
+       * gst/avi/gstavielement.c:
+       * gst/avi/gstavielements.h:
+       * gst/avi/gstavimux.c:
+       * gst/avi/gstavisubtitle.c:
+       * gst/avi/meson.build:
+         avi: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 13:02:59 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/autodetect/gstautoaudiosink.c:
+       * gst/autodetect/gstautoaudiosrc.c:
+       * gst/autodetect/gstautodetect.c:
+       * gst/autodetect/gstautodetect.h:
+       * gst/autodetect/gstautodetectelement.c:
+       * gst/autodetect/gstautodetectelements.h:
+       * gst/autodetect/gstautodetectplugin.c:
+       * gst/autodetect/gstautovideosink.c:
+       * gst/autodetect/gstautovideosrc.c:
+       * gst/autodetect/meson.build:
+         autodetect: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 13:00:38 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/audioparsers/gstaacparse.c:
+       * gst/audioparsers/gstac3parse.c:
+       * gst/audioparsers/gstamrparse.c:
+       * gst/audioparsers/gstaudioparserselements.h:
+       * gst/audioparsers/gstdcaparse.c:
+       * gst/audioparsers/gstflacparse.c:
+       * gst/audioparsers/gstmpegaudioparse.c:
+       * gst/audioparsers/gstsbcparse.c:
+       * gst/audioparsers/gstwavpackparse.c:
+       * gst/audioparsers/plugin.c:
+         audioparsers: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 12:44:31 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/apetag/gstapedemux.c:
+       * gst/apetag/gstapedemux.h:
+         apetag: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-15 11:00:46 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/vpx/gstvp8dec.c:
+       * ext/vpx/gstvp8enc.c:
+       * ext/vpx/gstvp9dec.c:
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvpxelement.c:
+       * ext/vpx/gstvpxelements.h:
+       * ext/vpx/meson.build:
+       * ext/vpx/plugin.c:
+         vpx: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 17:26:36 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/taglib/gstapev2mux.cc:
+       * ext/taglib/gstid3v2mux.cc:
+       * ext/taglib/gsttaglibelement.c:
+       * ext/taglib/gsttaglibelements.h:
+       * ext/taglib/gsttaglibplugin.c:
+       * ext/taglib/meson.build:
+         taglib: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 17:09:19 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/qt/gstplugin.cc:
+       * ext/qt/gstqtelement.cc:
+       * ext/qt/gstqtelements.h:
+       * ext/qt/gstqtoverlay.cc:
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/gstqtsrc.cc:
+       * ext/qt/meson.build:
+       * ext/qt/qtplugin.pro:
+         qt: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 16:09:53 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/speex/gstspeex.c:
+       * ext/speex/gstspeexdec.c:
+       * ext/speex/gstspeexelement.c:
+       * ext/speex/gstspeexelements.h:
+       * ext/speex/gstspeexenc.c:
+       * ext/speex/meson.build:
+         speex: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 16:04:16 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/soup/gstsoup.c:
+       * ext/soup/gstsoupelement.c:
+       * ext/soup/gstsoupelements.h:
+       * ext/soup/gstsouphttpclientsink.c:
+       * ext/soup/gstsouphttpsrc.c:
+       * ext/soup/meson.build:
+         soup: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 15:53:19 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/raw1394/gst1394.c:
+       * ext/raw1394/gstdv1394src.c:
+       * ext/raw1394/gstdv1394src.h:
+       * ext/raw1394/gsthdv1394src.c:
+       * ext/raw1394/gsthdv1394src.h:
+         raw1394: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 15:47:46 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/wavpack/gstwavpack.c:
+       * ext/wavpack/gstwavpackdec.c:
+       * ext/wavpack/gstwavpackelement.c:
+       * ext/wavpack/gstwavpackelements.h:
+       * ext/wavpack/gstwavpackenc.c:
+       * ext/wavpack/meson.build:
+         wavpack: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 15:35:11 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/alpha/gstalpha.c:
+       * gst/alpha/gstalpha.h:
+         alpha: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 15:27:31 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/audiofx/audioamplify.c:
+       * gst/audiofx/audioamplify.h:
+       * gst/audiofx/audiochebband.c:
+       * gst/audiofx/audiochebband.h:
+       * gst/audiofx/audiocheblimit.c:
+       * gst/audiofx/audiocheblimit.h:
+       * gst/audiofx/audiodynamic.c:
+       * gst/audiofx/audiodynamic.h:
+       * gst/audiofx/audioecho.c:
+       * gst/audiofx/audioecho.h:
+       * gst/audiofx/audiofirfilter.c:
+       * gst/audiofx/audiofirfilter.h:
+       * gst/audiofx/audiofx.c:
+       * gst/audiofx/audioiirfilter.c:
+       * gst/audiofx/audioiirfilter.h:
+       * gst/audiofx/audioinvert.c:
+       * gst/audiofx/audioinvert.h:
+       * gst/audiofx/audiokaraoke.c:
+       * gst/audiofx/audiokaraoke.h:
+       * gst/audiofx/audiopanorama.c:
+       * gst/audiofx/audiopanorama.h:
+       * gst/audiofx/audiowsincband.c:
+       * gst/audiofx/audiowsincband.h:
+       * gst/audiofx/audiowsinclimit.c:
+       * gst/audiofx/audiowsinclimit.h:
+       * gst/audiofx/gstscaletempo.c:
+       * gst/audiofx/gstscaletempo.h:
+       * gst/audiofx/gststereo.c:
+       * gst/audiofx/gststereo.h:
+         audiofx: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 13:16:28 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/rtp/gstasteriskh263.c:
+       * gst/rtp/gstasteriskh263.h:
+       * gst/rtp/gstrtp.c:
+       * gst/rtp/gstrtpL16depay.c:
+       * gst/rtp/gstrtpL16depay.h:
+       * gst/rtp/gstrtpL16pay.c:
+       * gst/rtp/gstrtpL16pay.h:
+       * gst/rtp/gstrtpL24depay.c:
+       * gst/rtp/gstrtpL24depay.h:
+       * gst/rtp/gstrtpL24pay.c:
+       * gst/rtp/gstrtpL24pay.h:
+       * gst/rtp/gstrtpL8depay.c:
+       * gst/rtp/gstrtpL8depay.h:
+       * gst/rtp/gstrtpL8pay.c:
+       * gst/rtp/gstrtpL8pay.h:
+       * gst/rtp/gstrtpac3depay.c:
+       * gst/rtp/gstrtpac3depay.h:
+       * gst/rtp/gstrtpac3pay.c:
+       * gst/rtp/gstrtpac3pay.h:
+       * gst/rtp/gstrtpamrdepay.c:
+       * gst/rtp/gstrtpamrdepay.h:
+       * gst/rtp/gstrtpamrpay.c:
+       * gst/rtp/gstrtpamrpay.h:
+       * gst/rtp/gstrtpbvdepay.c:
+       * gst/rtp/gstrtpbvdepay.h:
+       * gst/rtp/gstrtpbvpay.c:
+       * gst/rtp/gstrtpbvpay.h:
+       * gst/rtp/gstrtpceltdepay.c:
+       * gst/rtp/gstrtpceltdepay.h:
+       * gst/rtp/gstrtpceltpay.c:
+       * gst/rtp/gstrtpceltpay.h:
+       * gst/rtp/gstrtpdvdepay.c:
+       * gst/rtp/gstrtpdvdepay.h:
+       * gst/rtp/gstrtpdvpay.c:
+       * gst/rtp/gstrtpdvpay.h:
+       * gst/rtp/gstrtpelement.c:
+       * gst/rtp/gstrtpelements.h:
+       * gst/rtp/gstrtpg722depay.c:
+       * gst/rtp/gstrtpg722depay.h:
+       * gst/rtp/gstrtpg722pay.c:
+       * gst/rtp/gstrtpg722pay.h:
+       * gst/rtp/gstrtpg723depay.c:
+       * gst/rtp/gstrtpg723depay.h:
+       * gst/rtp/gstrtpg723pay.c:
+       * gst/rtp/gstrtpg723pay.h:
+       * gst/rtp/gstrtpg726depay.c:
+       * gst/rtp/gstrtpg726depay.h:
+       * gst/rtp/gstrtpg726pay.c:
+       * gst/rtp/gstrtpg726pay.h:
+       * gst/rtp/gstrtpg729depay.c:
+       * gst/rtp/gstrtpg729depay.h:
+       * gst/rtp/gstrtpg729pay.c:
+       * gst/rtp/gstrtpg729pay.h:
+       * gst/rtp/gstrtpgsmdepay.c:
+       * gst/rtp/gstrtpgsmdepay.h:
+       * gst/rtp/gstrtpgsmpay.c:
+       * gst/rtp/gstrtpgsmpay.h:
+       * gst/rtp/gstrtpgstdepay.c:
+       * gst/rtp/gstrtpgstdepay.h:
+       * gst/rtp/gstrtpgstpay.c:
+       * gst/rtp/gstrtpgstpay.h:
+       * gst/rtp/gstrtph261depay.c:
+       * gst/rtp/gstrtph261depay.h:
+       * gst/rtp/gstrtph261pay.c:
+       * gst/rtp/gstrtph261pay.h:
+       * gst/rtp/gstrtph263depay.c:
+       * gst/rtp/gstrtph263depay.h:
+       * gst/rtp/gstrtph263pay.c:
+       * gst/rtp/gstrtph263pay.h:
+       * gst/rtp/gstrtph263pdepay.c:
+       * gst/rtp/gstrtph263pdepay.h:
+       * gst/rtp/gstrtph263ppay.c:
+       * gst/rtp/gstrtph263ppay.h:
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph264depay.h:
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph264pay.h:
+       * gst/rtp/gstrtph265depay.c:
+       * gst/rtp/gstrtph265depay.h:
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/gstrtph265pay.h:
+       * gst/rtp/gstrtpilbcdepay.c:
+       * gst/rtp/gstrtpilbcdepay.h:
+       * gst/rtp/gstrtpilbcpay.c:
+       * gst/rtp/gstrtpilbcpay.h:
+       * gst/rtp/gstrtpisacdepay.c:
+       * gst/rtp/gstrtpisacdepay.h:
+       * gst/rtp/gstrtpisacpay.c:
+       * gst/rtp/gstrtpisacpay.h:
+       * gst/rtp/gstrtpj2kdepay.c:
+       * gst/rtp/gstrtpj2kdepay.h:
+       * gst/rtp/gstrtpj2kpay.c:
+       * gst/rtp/gstrtpj2kpay.h:
+       * gst/rtp/gstrtpjpegdepay.c:
+       * gst/rtp/gstrtpjpegdepay.h:
+       * gst/rtp/gstrtpjpegpay.c:
+       * gst/rtp/gstrtpjpegpay.h:
+       * gst/rtp/gstrtpklvdepay.c:
+       * gst/rtp/gstrtpklvdepay.h:
+       * gst/rtp/gstrtpklvpay.c:
+       * gst/rtp/gstrtpklvpay.h:
+       * gst/rtp/gstrtpldacpay.c:
+       * gst/rtp/gstrtpmp1sdepay.c:
+       * gst/rtp/gstrtpmp1sdepay.h:
+       * gst/rtp/gstrtpmp2tdepay.c:
+       * gst/rtp/gstrtpmp2tdepay.h:
+       * gst/rtp/gstrtpmp2tpay.c:
+       * gst/rtp/gstrtpmp2tpay.h:
+       * gst/rtp/gstrtpmp4adepay.c:
+       * gst/rtp/gstrtpmp4adepay.h:
+       * gst/rtp/gstrtpmp4apay.c:
+       * gst/rtp/gstrtpmp4apay.h:
+       * gst/rtp/gstrtpmp4gdepay.c:
+       * gst/rtp/gstrtpmp4gdepay.h:
+       * gst/rtp/gstrtpmp4gpay.c:
+       * gst/rtp/gstrtpmp4gpay.h:
+       * gst/rtp/gstrtpmp4vdepay.c:
+       * gst/rtp/gstrtpmp4vdepay.h:
+       * gst/rtp/gstrtpmp4vpay.c:
+       * gst/rtp/gstrtpmp4vpay.h:
+       * gst/rtp/gstrtpmpadepay.c:
+       * gst/rtp/gstrtpmpadepay.h:
+       * gst/rtp/gstrtpmpapay.c:
+       * gst/rtp/gstrtpmpapay.h:
+       * gst/rtp/gstrtpmparobustdepay.c:
+       * gst/rtp/gstrtpmparobustdepay.h:
+       * gst/rtp/gstrtpmpvdepay.c:
+       * gst/rtp/gstrtpmpvdepay.h:
+       * gst/rtp/gstrtpmpvpay.c:
+       * gst/rtp/gstrtpmpvpay.h:
+       * gst/rtp/gstrtpopusdepay.c:
+       * gst/rtp/gstrtpopusdepay.h:
+       * gst/rtp/gstrtpopuspay.c:
+       * gst/rtp/gstrtpopuspay.h:
+       * gst/rtp/gstrtppcmadepay.c:
+       * gst/rtp/gstrtppcmadepay.h:
+       * gst/rtp/gstrtppcmapay.c:
+       * gst/rtp/gstrtppcmapay.h:
+       * gst/rtp/gstrtppcmudepay.c:
+       * gst/rtp/gstrtppcmudepay.h:
+       * gst/rtp/gstrtppcmupay.c:
+       * gst/rtp/gstrtppcmupay.h:
+       * gst/rtp/gstrtpqcelpdepay.c:
+       * gst/rtp/gstrtpqcelpdepay.h:
+       * gst/rtp/gstrtpqdmdepay.c:
+       * gst/rtp/gstrtpqdmdepay.h:
+       * gst/rtp/gstrtpreddec.c:
+       * gst/rtp/gstrtpredenc.c:
+       * gst/rtp/gstrtpsbcdepay.c:
+       * gst/rtp/gstrtpsbcdepay.h:
+       * gst/rtp/gstrtpsbcpay.c:
+       * gst/rtp/gstrtpsbcpay.h:
+       * gst/rtp/gstrtpsirendepay.c:
+       * gst/rtp/gstrtpsirendepay.h:
+       * gst/rtp/gstrtpsirenpay.c:
+       * gst/rtp/gstrtpsirenpay.h:
+       * gst/rtp/gstrtpspeexdepay.c:
+       * gst/rtp/gstrtpspeexdepay.h:
+       * gst/rtp/gstrtpspeexpay.c:
+       * gst/rtp/gstrtpspeexpay.h:
+       * gst/rtp/gstrtpstorage.c:
+       * gst/rtp/gstrtpstreamdepay.c:
+       * gst/rtp/gstrtpstreamdepay.h:
+       * gst/rtp/gstrtpstreampay.c:
+       * gst/rtp/gstrtpstreampay.h:
+       * gst/rtp/gstrtpsv3vdepay.c:
+       * gst/rtp/gstrtpsv3vdepay.h:
+       * gst/rtp/gstrtptheoradepay.c:
+       * gst/rtp/gstrtptheoradepay.h:
+       * gst/rtp/gstrtptheorapay.c:
+       * gst/rtp/gstrtptheorapay.h:
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+       * gst/rtp/gstrtpvorbisdepay.c:
+       * gst/rtp/gstrtpvorbisdepay.h:
+       * gst/rtp/gstrtpvorbispay.c:
+       * gst/rtp/gstrtpvorbispay.h:
+       * gst/rtp/gstrtpvp8depay.c:
+       * gst/rtp/gstrtpvp8depay.h:
+       * gst/rtp/gstrtpvp8pay.c:
+       * gst/rtp/gstrtpvp8pay.h:
+       * gst/rtp/gstrtpvp9depay.c:
+       * gst/rtp/gstrtpvp9depay.h:
+       * gst/rtp/gstrtpvp9pay.c:
+       * gst/rtp/gstrtpvp9pay.h:
+       * gst/rtp/gstrtpvrawdepay.c:
+       * gst/rtp/gstrtpvrawdepay.h:
+       * gst/rtp/gstrtpvrawpay.c:
+       * gst/rtp/gstrtpvrawpay.h:
+       * gst/rtp/meson.build:
+       * tests/check/meson.build:
+         rtp: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 11:12:34 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/pulse/gstpulseelement.c:
+       * ext/pulse/gstpulseelements.h:
+       * ext/pulse/meson.build:
+       * ext/pulse/plugin.c:
+       * ext/pulse/pulsesink.c:
+       * ext/pulse/pulsesrc.c:
+         pulse: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 10:41:29 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+       * ext/mpg123/gstmpg123audiodec.h:
+         mpeg123: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 10:33:50 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/libpng/gstpng.c:
+       * ext/libpng/gstpngdec.c:
+       * ext/libpng/gstpngdec.h:
+       * ext/libpng/gstpngenc.c:
+       * ext/libpng/gstpngenc.h:
+         libpng: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 10:27:18 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/lame/gstlamemp3enc.c:
+       * ext/lame/gstlamemp3enc.h:
+       * ext/lame/plugin.c:
+         lame: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 10:26:26 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/libcaca/gstcacaplugin.c:
+       * ext/libcaca/gstcacasink.c:
+       * ext/libcaca/gstcacasink.h:
+       * ext/libcaca/gstcacatv.c:
+       * ext/libcaca/gstcacatv.h:
+       * ext/libcaca/meson.build:
+         libcaca: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 10:09:46 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/jpeg/gstjpeg.c:
+       * ext/jpeg/gstjpegdec.c:
+       * ext/jpeg/gstjpegelements.h:
+       * ext/jpeg/gstjpegenc.c:
+       * ext/jpeg/gstjpegplugin.c:
+       * ext/jpeg/gstsmokedec.c:
+       * ext/jpeg/gstsmokeenc.c:
+       * ext/jpeg/meson.build:
+         jpeg: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 09:56:36 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/jack/gstjack.c:
+       * ext/jack/gstjack.h:
+       * ext/jack/gstjackaudiosink.c:
+       * ext/jack/gstjackaudiosrc.c:
+         jack: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 08:57:55 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/gdk_pixbuf/gstgdkpixbufdec.c:
+       * ext/gdk_pixbuf/gstgdkpixbufelement.c:
+       * ext/gdk_pixbuf/gstgdkpixbufelements.h:
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
+       * ext/gdk_pixbuf/gstgdkpixbufplugin.c:
+       * ext/gdk_pixbuf/gstgdkpixbufsink.c:
+       * ext/gdk_pixbuf/meson.build:
+         gdk_pixbuf: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-12 08:48:21 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gstgtksink.h:
+       * ext/gtk/gstplugin.c:
+         gtk: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-11 19:53:30 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/flac/gstflac.c:
+       * ext/flac/gstflacdec.c:
+       * ext/flac/gstflacelement.c:
+       * ext/flac/gstflacelements.h:
+       * ext/flac/gstflacenc.c:
+       * ext/flac/gstflactag.c:
+       * ext/flac/meson.build:
+         flac: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-02-11 18:57:03 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/dv/gstdv.c:
+       * ext/dv/gstdvdec.c:
+       * ext/dv/gstdvdemux.c:
+       * ext/dv/gstdvelement.c:
+       * ext/dv/gstdvelements.h:
+       * ext/dv/meson.build:
+         dv: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2020-08-14 15:27:31 -0400  Julian Bouzas <julian.bouzas@collabora.com>
+
+       * ext/aalib/gstaaplugin.c:
+       * ext/aalib/gstaasink.c:
+       * ext/aalib/gstaasink.h:
+       * ext/aalib/gstaatv.c:
+       * ext/aalib/gstaatv.h:
+       * ext/aalib/meson.build:
+         aalib: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
+
+2021-03-19 17:19:43 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/videocrop/gstvideocrop.c:
+       * gst/videocrop/gstvideocrop.h:
+       * tests/check/elements/videocrop.c:
+         videocrop: handle non raw caps features
+         Currently, videocrop, only negotiates raw caps (system memory) because
+         it's the type of memory it can modify. Nonetheless, it's also possible
+         for the element to handle non-raw caps when only adding the crop meta
+         is possible, in other words, when downstream buffer pools expose the
+         crop API.
+         This patch enable non-raw caps negotiation. If downstream doesn't
+         expose crop API and negotiated caps are featured, the negotiation
+         fails.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/915>
+
+2021-03-19 10:35:09 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Don't special-case G_SIGNAL_RUN_CLEANUP stage in signal accumulators
+         All these signals don't run the class handler in the CLEANUP stage.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/913>
+
+2021-03-19 10:34:33 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/shout2/gstshout2.c:
+         shout2: Don't register signal without class handler with G_SIGNAL_RUN_CLEANUP
+         There is no class handler to run during the CLEANUP stage.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/913>
+
+2021-03-23 16:59:28 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Avoid colorimetry mismatch for streams with invalid colorimetry
+         video-info sets gst colorimetry to default value when colorimetry in caps
+         is unparsable or invalid. Then v4l2object uses this gst colorimetry to do
+         mapping with v4l2 colorimetry. This may cause colorimetry mismatch when
+         check mapped gst colorimetry with that read from caps directly.
+         To fix this, need to correct gst colorimetry as that parsed from video-info
+         when check gst_v4l2_video_colorimetry_matches().
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/917>
+
+2021-03-19 10:52:26 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Add support for hdr10 stream playback
+         Colorimetry of hdr10 video is bt2100-pq with transfer as
+         GST_VIDEO_TRANSFER_SMPTE2084. So map GST_VIDEO_TRANSFER_SMPTE2084
+         to V4L2_XFER_FUNC_SMPTE2084 to support hdr10 stream playback.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/888>
+
+2021-03-20 10:41:29 -0500  Sid Sethupathi <sid.sethupathi@gmail.com>
+
+       * gst/shapewipe/gstshapewipe.c:
+         shapewipe: fix broken link in docs
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/916>
+
+2021-03-18 17:42:02 +0000  Alba Mendez <me@alba.sh>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix more signals
+         Behaviour change in GLib causes select-stream signal to discard
+         the value returned by handlers. See !909 for more info.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/912>
+
+2021-03-18 19:52:53 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/jack/gstjack.c:
+       * ext/jack/gstjackaudiosink.c:
+       * ext/jack/gstjackaudiosrc.c:
+       * ext/pulse/pulsesink.h:
+       * ext/qt/gstqsgtexture.cc:
+       * ext/qt/gstqtglutility.cc:
+       * ext/qt/qtglrenderer.cc:
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtwindow.cc:
+       * ext/vpx/gstvpxdec.c:
+       * ext/vpx/gstvpxenc.c:
+       * gst/audioparsers/gstac3parse.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/ximage/ximageutil.c:
+         gst: don't use volatile to mean atomic
+         volatile is not sufficient to provide atomic guarantees and real atomics
+         should be used instead.  GCC 11 has started warning about using volatile
+         with atomic operations.
+         https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719
+         Discovered in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/868
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/911>
+
+2021-03-17 15:54:59 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtsp/gstrtspsrc.c:
+         Update docs cache and fix before-send signal doc syntax
+         The docs for before-send were missing because of this
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/909>
+
+2021-03-17 13:18:34 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix accumulation of before-send signal return values
+         Since glib 2.62, the accumulated return values in RUN_CLEANUP override the
+         accumulated return values in RUN_FIRST. Since:
+         1. We have a default handler that always returns TRUE, and
+         2. User handlers are only run in RUN_FIRST, and
+         3. Our accumulator just takes the latest return value
+         We were discarding the return value from the user handler and always
+         sending messages even if the user handler said not to. See
+         https://gitlab.gnome.org/GNOME/glib/-/issues/2352 for more details.
+         This signal does not need RUN_CLEANUP or RUN_FIRST, so just change it
+         to RUN_LAST so that it's emitted exactly once and accumulated once.
+         With this fix, this signal can now be used to intercept PAUSE when
+         going to GST_STATE_NULL so that the server does a TEARDOWN (if
+         necessary) and not a PAUSE, which will confuse other RTSP clients when
+         playing shared media.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/909>
+
+2021-03-17 11:32:08 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         Revert unusable workaround for PAUSE being sent when going NULL
+         Directly setting rtspsrc to the NULL state before putting the pipeline
+         in the NULL state usually works, but it can cause a deadlock in some
+         cases, so it's not a reliable mechanism to fix this.
+         This reverts commit f37afdafff1fd0a339966116261f5cd0de53f5d1:
+         "rtspsrc: Fix state changes from PAUSED to PLAYING"
+         and commit 76d624b2df5594a82269b94dffe8766a372d059d:
+         "rtspsrc: Do not send PAUSE command when going to GST_STATE_NULL"
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/908>
+
+2021-03-16 19:25:36 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Fix parsing of the mediaclk:direct= field
+         Due to an off-by-one when parsing the string, the most significant digit
+         or the clock offset was skipped when parsing the offset.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/907>
+
+2021-03-16 00:08:43 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix state changes from PAUSED to PLAYING
+         This was accidentally broken in the last commit that touched this
+         because I missed the fall-through in the case immediately above this.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/906>
+
+2021-03-04 13:05:19 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.h:
+         matroskademux: Fix extraction of multichannel WavPack
+         The old code had a couple of issues that all lead to potential memory
+         safety bugs.
+         - Use a constant for the Wavpack4Header size instead of using sizeof.
+         It's written out into the data and not from the struct and who knows
+         what special alignment/padding requirements some C compilers have.
+         - gst_buffer_set_size() does not realloc the buffer when setting a
+         bigger size than allocated, it only allows growing up to the maximum
+         allocated size. Instead use a GstAdapter to collect all the blocks
+         and take out everything at once in the end.
+         - Check that enough data is actually available in the input and
+         otherwise handle it an error in all cases instead of silently
+         ignoring it.
+         Among other things this fixes out of bounds writes because the code
+         assumed gst_buffer_set_size() can grow the buffer and simply wrote after
+         the end of the buffer.
+         Thanks to Natalie Silvanovich for reporting.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/859
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/902>
+
+2021-03-03 11:31:52 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Initialize track context out parameter to NULL before parsing
+         Various error return paths don't set it to NULL and callers are only
+         checking if the pointer is NULL. As it's allocated on the stack this
+         usually contains random stack memory, and more often than not the memory
+         of a previously parsed track.
+         This then causes all kinds of memory corruptions further down the line.
+         Thanks to Natalie Silvanovich for reporting.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/858
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/902>
+
+2021-03-15 12:57:19 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Do not send PAUSE command when going to GST_STATE_NULL
+         This usually doesn't matter, but it is disruptive when streaming from
+         a shared media since it will pause all other clients when any client
+         exits.
+         This new behaviour is opt-in and should be safe because you need to
+         set the NULL state on rtspsrc directly, instead of just on the
+         pipeline. See the updated documentation for an explanation.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/901>
+
+2021-01-18 15:54:43 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: handle GST_VIDEO_TRANSFER_BT601
+         V4L2 makes no difference between the BT.601 and BT.709 transfer
+         functions [1], but GStreamer does since 1.18 [2].
+         Adapt gst_v4l2_object_get_colorspace() and
+         gst_v4l2_object_set_format_full().
+         [1] https://linuxtv.org/downloads/v4l-dvb-apis-new/userspace-api/v4l/colorspaces-details.html#colorspace-smpte-170m-v4l2-colorspace-smpte170m
+         [2] https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/724
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/856>
+
+2021-03-11 22:22:15 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: fix title of a few properties docstrings
+         GstRtspSrc -> GstRTSPSrc
+         This would have been noticed by the since checker, but those
+         properties were introduced prior to that.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/899>
+
+2021-03-07 21:25:01 +0000  Vladimir Menshakov <vladimir.menshakov@gmail.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/wavpack/gstwavpackdec.c:
+       * ext/wavpack/gstwavpackdec.h:
+         wavpackdec: Add floating point format support
+         This commit negotiate F32 audio format if MODE_FLOAT used in wavpack file.
+         Wavpack float mode is always in 32-bit IEEE format.
+         The following pipeline plays distorted audio if source file is encoded in float mode:
+         gst-launch-1.0 filesrc ... ! wavpackparse ! wavpackdec ! pulsesink
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/894>
+
+2021-03-04 16:40:06 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroska: also support push-mode from seek events sent to the element
+         Otherwise sending seek events would fail to actually seek.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/891>
+
+2021-02-26 10:49:10 +0100  Marc Leeman <m.leeman@televic.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         gstrtspsrc: 551 should not result in an unhandled error
+         Some cameras (e.g. HikVision DS-2CD2732F-IS) return "551 Option
+         not supported" when a command is sent that is not implemented
+         (e.g. PAUSE). Instead; it should return "501 Not Implemented".
+         This is wrong, as previously, the camera did announce support for PAUSE
+         in the OPTIONS.
+         In this case, handle the 551 as if it was 501 to avoid throwing errors
+         to application level. */
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/885>
+
+2021-03-01 14:32:40 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Do not expose profiles/levels in vp8/vp9 template caps
+         Vp8/vp9 supported profiles/levels are listed in decoder sink caps, but
+         there is no parser for these two formats and the demuxers also don't have
+         these information. It causes negotiation fail between demuxers and decoder
+         when check caps "accept = gst_caps_is_subset (caps, template_caps);".
+         To fix this, need to remove profiles/levels for vp8/vp9 formats in decoder
+         sink caps.
+         Fix #854
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/887>
+
+2021-03-03 18:30:39 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/rtpmanager/gstrtphdrext-twcc.h:
+         rtpmanager: Fix an MSVC compile warning
+         We don't expect this object is a part of public library.
+         gstrtphdrext-twcc.c(45): warning C4273: 'gst_rtp_header_extension_twcc_get_type': inconsistent dll linkage
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/889>
+
+2021-02-24 13:25:43 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: fix src side frame rate negotiation
+         Negotiating v4l2h264dec ! v4l2h264enc transcoding pipelines fails in
+         case the encoder does not accept framerate=(fraction)0/1.
+         The acquired caps used for downstream negotiation are determined from
+         gst_v4l2_object_acquire_format(), which sets the GstVideoInfo::fps_n
+         and ::fps_d fields to 0.
+         To fix this, copy the frame rate from the sink side.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/882>
+
+2021-02-16 16:20:05 +0200  Jordan Petridis <jpetridis@gnome.org>
+
+       * sys/rpicamsrc/meson.build:
+         rpicamsrc: depend on posix threads and vchiq_arm
+         Could only test on rpi 3b+
+         Close #839
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/875>
+
+2021-02-11 14:48:07 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Silence traces around unsupported source change
+         Don't be too spamy about unsupported source change flags as these will be
+         commonly extended in the future.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-11 14:24:29 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Move preferred resolution query before the probe
+         As we lock the DV_TIMINGS (and standards in the future), we need to probe the
+         caps after, otherwise, we may endup fixating to an unsupported resolution,
+         which would lead to a not-negotiated error.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-10 16:37:01 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2src: Calculate framerate from DV timings
+         And use this framerate in our preference. Note that we also flush
+         the probed caps as it seems that the format enumeration may change
+         when a new source change event get triggered.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-10 15:52:55 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.h:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2rc: Add DV_TIMINGS query and locking
+         This adds support to DV_TIMINGS query and locking. The timing width and
+         height is then used as a preference.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-10 15:49:03 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Force renegotiation on resolution change
+         As mandated by the specification, make sure to cycle through streamoff
+         / streamon regardless if the caps have changed or not.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-10 14:52:14 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.h:
+         v4l2object: Remove unused streaming member
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-10 10:48:48 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Refactor to use PreferredCapsInfo structure
+         Avoid passing around a bare structure for the preference, this removes
+         the need to copy and free that structure and simplify the code. Also
+         fix a type in the structure name, Prefered -> Preferred.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-08 17:27:20 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Stub preferred resolution support
+         This stubs the ability to use preferred resolution from digital
+         video timings, analog TV standards or driver reported native
+         resolution.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-09 14:44:02 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: Subscribe source_change for the current input
+         When we subscribe for source-change event, we need to specify for which
+         input. Make sure we subscribe for the current input.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-08 17:26:20 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/gstv4l2src.h:
+         v4l2src: Add input signal status detection
+         As part of the support to select a preferred size, we can also
+         detect the signal status. This is a split patch so that feature
+         is separated to ease review.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-08 17:24:00 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: Add helper to query input status
+         This is a wrapper around ENUM_INPUT renamed for readability.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-08 17:22:37 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2radio.c:
+       * sys/v4l2/gstv4l2tuner.c:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: Fix input/output index sign
+         This is an unsigned integer in the kernel API.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-04 16:59:44 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Add source resolution change support
+         This patch adds support for source resolution change detection.
+         Resolution change is signaled by drivers when a change in the detected
+         signal have been detected. This is notably seen on HDMI receivers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-04 14:13:32 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2bufferpool.h:
+         v4l2bufferpool: Handle resolution change event
+         This patch adds the detection, dequeuing and reporting of the SOURCE_CHANGE
+         event when the CH_RESOLUTION flag is set. The acquire function will now return
+         a new custom success called GST_V4L2_FLOW_RESOLUTION_CHANGE. In order to use
+         this new feature, elements must enable it by calling:
+         gst_v4l2_buffer_pool_enable_resolution_change (pool);
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-04 11:01:38 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2object: Add event helpers
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2021-02-04 10:10:34 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: use FLOW_LAST_BUFFER
+         This uses the GST_V4L2_FLOW_LAST_BUFFER alias instead of
+         GST_FLOW_CUSTOM_SUCCESS to make the code more readable.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/870>
+
+2018-12-10 14:10:05 +0100  Lucas Stach <l.stach@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: prefer NV12 over I420
+         Considering NV12 an 'odd' format is a historical artifact. This format
+         is now quite common, and usually preferable to I420 due to more memory
+         friendly access patterns.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/857>
+
+2021-02-18 10:34:25 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/wavparse/gstwavparse.c:
+       * tests/check/elements/wavparse.c:
+         wavparse: fix seeking in READY state
+         wavparse claims to be able to support seeking in the READY state by
+         saving the pending seek event and actually seeking later after having parsed the
+         header.
+         Problem was that this seek event was reset on the READY to PAUSED
+         transition, making all this code useless. Fixing it by stop resetting
+         on READY to PAUSED transition as we already reset on PAUSED to READY
+         and when initiating the element.
+         Note that DTS marker detection isn't support in such scenario as
+         gst_type_find_helper_for_buffer() needs a buffer containing the
+         beginning of the stream.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/879>
+
+2021-02-18 10:05:03 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * tests/check/elements/wavparse.c:
+         tests: wavparse: factor out create_pipeline()
+         No semantic change.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/879>
+
+2021-02-18 00:34:02 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: update plugins cache with new h264 / vp8 depay properties
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/834>
+
+2020-12-09 01:40:45 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph264depay.h:
+         rtph264depay: expose request-keyframe property
+         When set, the depayloader will request new keyframes on packet
+         loss
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/834>
+
+2020-12-09 01:34:20 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/gstrtpvp8depay.c:
+       * gst/rtp/gstrtpvp8depay.h:
+         rtpvp8depay: expose request-keyframe property
+         When set, the depayloader will request new keyframes on packet
+         loss
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/834>
+
+2020-12-09 01:24:57 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph264depay.h:
+         rtph264depay: expose wait-for-keyframe property
+         Similar to rtpvp8depay, when packet loss occurs, the depayloader
+         starts waiting for a keyframe.
+         We try to only stop waiting when all the packets for the new keyframe
+         have been received, by only resetting waiting_for_keyframe when
+         encountering the first packet of a keyframe, this is slightly
+         fragile because there is no bit that explicitly marks the start
+         of an access unit, so we rely on the existing picture_start
+         detection code.
+         As a consequence, the property is only meaningful when outputting
+         access units, and is ignored when outputting NALs directly.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/834>
+
+2021-02-18 00:36:43 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/videomixer/videomixer2.c:
+         videomixer: document as deprecated
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/878>
+
+2021-02-16 22:20:17 +1100  Ashley Brighthope <ashley.b@reddegrees.com>
+
+       * gst/wavenc/gstwavenc.c:
+         wavenc: Fixed INFO chunk corruption, caused by odd sized data not being padded. Code style was updated.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/873>
+
+2020-12-07 19:51:35 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst/rtp/gstrtpopuspay.c:
+         rtpopuspay: add info regarding (non-standard) multichannel support
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/832>
+
+2020-12-07 16:50:01 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: update plugins cache for rtpopus
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/832>
+
+2020-12-01 20:09:58 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * tests/check/elements/rtpopus.c:
+         tests: add rtpopus multichannel test cases
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/832>
+
+2020-12-01 16:43:32 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst/rtp/gstrtpopusdepay.c:
+         rtpopusdepay: support libwebrtc-compatible multichannel payload
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/832>
+
+2020-11-30 21:49:48 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst/rtp/gstrtpopuspay.c:
+         rtpopuspay: support libwebrtc-compatible multichannel payload
+         When the audio has more than 2 channels, add optional fields to output
+         caps from which webrtcbin can generate SDP in the syntax recognized by
+         "multiopus" codec present in libwebrtc [1].
+         e.g. for 5.1 audio:
+         a=rtpmap:96 multiopus/48000/6
+         a=fmtp:96 num_streams=4;coupled_streams=2;channel_mapping=0,4,1,2,3,5
+         [1] https://webrtc-review.googlesource.com/c/src/+/129768
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/832>
+
+2020-11-30 22:10:14 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst/rtp/gstrtpopuspay.c:
+         rtpopuspay: make use of gst_rtp_base_payload_set_outcaps_structure()
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/832>
+
+2021-02-09 19:31:28 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/effectv/LICENSE:
+         effectv: Remove redundant license file
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/869>
+
+2021-02-05 00:55:12 +0000  Kevin Song <kevinbing.song@gmail.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         Apply 1 suggestion(s) to 1 file(s)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/868>
+
+2021-02-05 00:55:04 +0000  Kevin Song <kevinbing.song@gmail.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         Apply 1 suggestion(s) to 1 file(s)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/868>
+
+2021-02-04 13:43:17 +0800  Bing Song <bing.song@nxp.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: support resolution change stream encode.
+         Resolution change stream transcoding will drain before send new video
+         frame buffer. Need encode video frame after process EOS.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/868>
+
+2021-02-04 11:44:53 +0100  Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+         qtdemux: added support for cbcs encryption scheme
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/865>
+
+2021-01-21 18:04:58 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtpmanager/gstrtphdrext-rfc6464.c:
+       * gst/rtpmanager/gstrtphdrext-rfc6464.h:
+       * gst/rtpmanager/gstrtpmanager.c:
+       * gst/rtpmanager/meson.build:
+       * tests/check/elements/rtphdrextrfc6464.c:
+       * tests/check/meson.build:
+         rtp: add rtphdrextrfc6464
+         Header Extension for Client-to-Mixer Audio Level Indication as
+         defined in RFC 6464.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/630>
+
+2020-06-16 12:01:30 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/level/gstlevel.c:
+       * gst/level/gstlevel.h:
+       * tests/check/elements/level.c:
+         level: add GstRTPAudioLevelMeta on buffers
+         This meta can be used by a RTP payloader to send the level information
+         to the peer.
+         Part of https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/446
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/630>
+
+2021-02-03 17:10:20 +0200  Robert Swain <robert.swain@gmail.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: Provide documentation for GST_DEINTERLACE_BUFFER_STATE
+         More information available in
+         https://gstconf.ubicast.tv/videos/interlacing-and-telecine-in-gstreamer/
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/866>
+
+2021-01-30 16:16:13 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/deinterlace/gstdeinterlacemethod.c:
+         deinterlace: Fix telecine/onefield mixup
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/838
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/866>
+
+2021-01-30 15:49:23 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/deinterlace/gstdeinterlacemethod.c:
+         deinterlace: Better alternate support
+         Improve line offset halving based on whether this field is top or
+         bottom.
+         Also handle the buffer state the same as mixed.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/866>
+
+2021-01-14 01:12:06 +0800  Bing Song <bing.song@nxp.com>
+
+       * sys/v4l2/gstv4l2h265codec.c:
+         v4l2h265codec: fix HEVC profile string issue.
+         Keep HEVC profile compatible with other module.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/850>
+
+2020-12-15 10:41:40 +0800  Bing Song <bing.song@nxp.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+         v4l2object: Need keep same transfer as input caps.
+         GST_VIDEO_TRANSFER_BT2020_12 and GST_VIDEO_TRANSFER_BT2020_10 will
+         be mapped to V4L2_XFER_FUNC_709. Need check input caps when map
+         V4L2_XFER_FUNC_709 back to GST_VIDEO_TRANSFER_BT2020_12 and
+         GST_VIDEO_TRANSFER_BT2020_10
+         Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/816
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/841>
+
+2020-12-07 10:01:53 +0100  Tobias Ronge <tobiasr@axis.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Do not wait for response while flushing
+         Due to the may_cancel flag in GstRTSPConnection, receiving might not get
+         cancelled when supposed to. In this case, gst_rtsp_src_receive_response
+         will have to wait until timeout instead but if busy receiving RTP
+         data, this timeout will never occur.
+         With this patch, gst_rtsp_src_receive_response returns GST_RTSP_EINTR
+         if flushing is set to TRUE instead of continuing to receive.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/831>
+
+2021-01-14 19:13:03 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/dv/meson.build:
+         meson: allow libdv subproject fallback
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/854>
+
+2020-12-21 13:55:58 +0100  Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Allow streams with no specified protection system ID
+         This is necessary in cases like CMAF where there won't be any events
+         passing thru.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/852>
+
+2021-01-07 16:57:27 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * docs/gst_plugins_cache.json:
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Map correct video format for RGBA
+         Map V4L2_PIX_FMT_RGBA32 pixel format to GST_VIDEO_FORMAT_RGBA instead of
+         GST_VIDEO_FORMAT_RGB video format to support RGBA.
+         Fixes #823
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/848>
+
+2021-01-02 13:06:16 +0530  Sanchayan Maity <sanchayan@asymptotic.io>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: Fix marker links
+         These should be with a single ':'. The double '::' results in a CI with
+         build failure message like below.
+         ERROR: [links]: (mandatory-link-not-found): Mandatory link Link GstSocketTimestamp -> None (GstSocketTimestamp) could not be resolved
+         ERROR: [check-missing-since-markers]: (missing-since-marker): Missing since marker for udpsrc:socket-timestamp
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/828>
+
+2020-12-17 11:24:07 +0530  Sanchayan Maity <sanchayan@asymptotic.io>
+
+       * docs/gst_plugins_cache.json:
+       * gst/udp/gstudpsrc.c:
+       * gst/udp/gstudpsrc.h:
+         udpsrc: Allow use of socket control message timestamps for DTS
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/828>
+
+2020-12-09 20:20:18 +1100  Matthew Waters <matthew@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/videofilter/gstvideoflip.c:
+       * gst/videofilter/gstvideoflip.h:
+       * tests/check/elements/videoflip.c:
+         videoflip: fix possible crash when setting the video-direction while running
+         A classic case of not enough locking.
+         One interesting thing with this is the interaction between the
+         rotation value and caps negotiation.  i.e. the width/height of the caps
+         can be swapped depending on the video-direction property.  We can't lock
+         the entirety of the caps negotiation for obvious reasons so we need to
+         do something else.  This takes the approach of trying to use a single
+         rotation value throughout the entirety of the negotiation and then
+         subsequent output frame in a kind of latching sequence.
+         Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/792
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/836>
+
+2020-12-09 19:49:47 +1100  Matthew Waters <matthew@centricular.com>
+
+       * tests/check/elements/videoflip.c:
+       * tests/check/meson.build:
+         tests: add tests for videoflip
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/836>
+
+2020-12-30 13:38:46 +0100  Ignacio Casal Quinteiro <qignacio@amazon.com>
+
+       * gst/deinterlace/meson.build:
+         deinterlace: force -DPREFIX on macos
+         This is due to a bug in meson where it will not detect properly
+         the compiler if the symbols need an undercore.
+         https://github.com/mesonbuild/meson/issues/5482
+         Fixes #821
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/845>
+
+2020-12-15 11:36:27 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Use proper types instead of G_TYPE_POINTER for the RTSP messages in the "handle-request" signal
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/842>
+
+2020-12-10 14:27:49 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Avoid deadlock when releasing a pad from a running muxer
+         Might not drain correctly
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/838>
+
+2020-12-11 11:24:14 +0800  Hou Qi <qi.hou@nxp.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Use active resolution during fallback colorspace probe
+         For legacy drivers that don't implement ENUM_FRAMESIZE, use active
+         resolution to probe colorspace. This can improve the accuracy of the
+         result when the colorspace depends on the resolution. This fixes a
+         wrong colorspace issue on board with vendor bsp at resolution 2560x1440.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/830>
+
+2020-12-12 04:02:37 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpst2022-1-fecdec.c:
+         rtpst2022-1-fecdec: don't xor out of bounds
+         When reconstituting packets from a stream with variable packet
+         sizes, don't xor larger packets past the length of the protected
+         packet
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/839>
+
+2020-12-12 04:00:41 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpst2022-1-fecenc.c:
+         rtpst2022-1-fecenc: memset when reallocating xored payload
+         When protecting packets with a variable payload length, we
+         reallocate the xored payload when needed. It is a good idea
+         to memset the extended memory to 0 so that we don't xor
+         data with garbage!
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/839>
+
+2020-12-12 03:56:11 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpst2022-1-fecdec.c:
+       * gst/rtpmanager/gstrtpst2022-1-fecenc.c:
+         rtpst2022-1-fec-*: protect additional RTP header fields
+         While the standard is a bit vague about whether the padding,
+         extension and marker bits should be protected:
+         > The usage, by senders and receivers, of the following bits shall
+         > be defined by the associated video/audio transport standards:
+         It is obviously necessary and useful for some formats (eg VP8)
+         that those indeed be protected.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/839>
+
+2020-12-12 03:28:56 +1100  Jan Schmidt <jan@centricular.com>
+
+       * tests/check/elements/splitmuxsink.c:
+         splitmuxsink: Unit test - check format/opened/closed sequence
+         Check the sequence of format-location/fragment-opened/fragment-closed
+         events is respected. There should be 1 format-location call for each
+         fragment-opened message, and 1 fragment-closed for each.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/833>
+
+2020-12-09 00:40:52 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Fix for 'reference bytes muxed' check.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/798
+         introduced a check in the need-new-fragment logic to avoid starting a
+         new fragment unless there has been some data on the reference stream,
+         but the check is done against the number of bytes that have been
+         received on the input, not the number that were released for output
+         into the current fragment.
+         Fix the check to remember and test against bytes that have been sent
+         for output.
+         This also fixes a problem where starting a new fragment fails to
+         request a new filename from the format-location signal.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/833>
+
+2020-09-15 00:27:24 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Add debug for fragment opened/closed msgs
+         When posting fragment-opened and fragment-closed messages,
+         put a debug statement in the logs
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/833>
+
+2020-08-18 16:06:14 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Convert asserts into element errors.
+         Change some g_assert into element errors so that they can be
+         caught and the pipeline shut down.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/833>
+
+2020-07-10 15:36:54 +1000  Matthew Waters <matthew@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtpmanager/gstrtpfunnel.c:
+       * gst/rtpmanager/gstrtphdrext-twcc.c:
+       * gst/rtpmanager/gstrtphdrext-twcc.h:
+       * gst/rtpmanager/gstrtpmanager.c:
+       * gst/rtpmanager/meson.build:
+         rtpmanager: update for rtp header extensions
+         Provide an implementation of the transport-wide-cc header extension and
+         use it in rtpfunnel.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/808>
+
+2020-11-15 11:30:07 +0000  Jose Quaresma <quaresma.jose@gmail.com>
+
+       * sys/rpicamsrc/meson.build:
+         rpicamsrc: add vchostif library as it is required to build successful
+         fix: undefined reference to `vc_gencmd'
+         /usr/src/debug/gstreamer1.0-plugins-good/1.18.1-r0/build/../gst-plugins-good-1.18.1/sys/rpicamsrc/RaspiCamControl.c:1440: undefined reference to `vc_gencmd'
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/818>
+
+2020-11-25 17:51:24 +0100  Marijn Suijten <marijns95@gmail.com>
+
+       * tests/check/elements/rtp-payloading.c:
+         tests/rtp-payloading: Use new AudioFormatInfo::fill_silence function
+         The function is renamed to be properly associated with AudioFormatInfo
+         (its instance) instead of AudioFormat (an unrelated enum), see [1] for
+         the rename itself.
+         [1]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/940
+
+2020-11-24 22:11:50 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/deinterlace/meson.build:
+       * meson.build:
+         deinterlace: Enable x86 assembly with nasm on MSVC
+         We need to remove x86inc.asm from the list of compiled assembly files
+         because it is not supposed to be compiled separately. It is directly
+         included by yadif.asm, and it exports no symbols.
+         The object file was getting ignored on all platforms except on msvc
+         where it was causing a linker hang when building with debugging
+         enabled because the object file had no debug symbols (or similar).
+         We've seen this before in FFmpeg too, which uses nasm:
+         https://gitlab.freedesktop.org/gstreamer/meson-ports/ffmpeg/-/merge_requests/46
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/825>
+
+2020-11-19 17:47:21 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtoverlay.cc:
+       * ext/qt/gstqtsink.cc:
+         qml: add some docs on display and contexts
+         Especially considering some dynamic pipeline scenarios.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/822>
+
+2020-11-18 20:09:24 +0100  Tim Schneider <tim.schneider94@t-online.de>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Added "src->started = FALSE;" to gst_rpi_cam_src_stop
+         Makes the element reusable multiple times after a state change back to READY.
+         Fixes #105
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/823>
+
+2020-11-12 09:32:30 +0800  Bing Song <bing.song@nxp.com>
+
+       * docs/gst_plugins_cache.json:
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: caps negotiate wrong as interlace feature
+         gst_caps_simplify() will move interlace format before normal video
+         format. It will cause caps negotiate prefer interlaced caps which
+         isn't expected. Seperate normal caps and interlaced caps and then
+         merge it will keep prefer progress video format.
+         Add ARGB/BGRA for interlaced caps.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/802
+         Part-of <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/813>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/813>
+
+2020-11-13 21:25:42 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: never send on a non-internal source
+         This will end up as a "received" packet, due to the code in
+         source_push_rtp, which will think this is a packet being received.
+         Instead drop the packet and hope that either:
+         1. Something upstream responds to the GstRTPCollision event and changes
+         SSRC used for sending.
+         2. That the application responds to the "on-ssrc-collision" signal, and
+         forces the sender (payloader) to change its SSRC.
+         3. That the BYE sent to the existing user of this SSRC will respond to
+         the BYE, and that we timeout this source, so we can continue sending
+         using the chosen SSRC.
+         The test reproduces a scenario where we previously would have sent
+         on a non-internal source.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/817>
+
+2020-11-13 12:39:53 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: rewrite timeout-check to avoid underflow
+         If current_time is < collision_timeout, we get an uint64 underflow, and
+         the check will trigger prematurely.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/817>
+
+2020-11-13 14:58:44 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/audioparsers/gstaacparse.c:
+         aacparse: Fix caps change handling
+         In baseparse we set the fixed caps flag on all src pads, therefore the
+         source pad caps query in get_allowed_caps will return the current caps.
+         Current caps won't necessarily intersect with the new caps (e.g. sample
+         rate change). Replace get_allowed_caps with peer_query_caps.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/816>
+
+2020-11-12 23:39:21 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/qtdemux.c:
+         tests: qtdemux: fix typo in caps field
+         timesacle -> timescale
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/815>
+
+2020-11-12 23:38:21 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/qtdemux.c:
+         tests: qtdemux: fix crash on 32-bit architectures
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/803
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/815>
+
+2020-09-14 13:12:50 +0530  Sanchayan Maity <sanchayan@asymptotic.io>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtp/gstrtp.c:
+       * gst/rtp/gstrtpldacpay.c:
+       * gst/rtp/gstrtpldacpay.h:
+       * gst/rtp/meson.build:
+         rtp: ldacpay: Add LDAC RTP payloader
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/757>
+
+2020-11-03 15:58:30 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/qt/gstqsgtexture.cc:
+       * ext/qt/gstqsgtexture.h:
+       * ext/qt/qtitem.cc:
+         qmlglsink: Keep old buffers around a bit longer if they were bound by QML
+         We don't know exactly when QML will stop using them but it should be
+         safe to unref them after at least 2 more buffers were bound.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/810>
+
+2020-11-10 18:18:12 +0000  ChrisDuncanAnyvision <chrisd@anyvision.co>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: Ensure same group-id used for both TCP/UDP stream-start events
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/811>
+
+2020-11-10 16:17:23 +0000  ChrisDuncanAnyvision <chrisd@anyvision.co>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Use consistent URI hashed stream-id for UDP and TCP/Interleaved streams
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/811>
+
+2020-11-04 18:43:04 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * meson.build:
+         meson: Enable some MSVC warnings for parity with GCC/Clang
+         This makes it easier to do development with MSVC by making it warn
+         on common issues that GCC/Clang error out for in our CI configuration.
+         Continuation from https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/223
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/809>
+
+2020-10-15 21:42:40 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtpmanager/rtpsource.h:
+       * gst/rtpmanager/rtpstats.h:
+         rtpsource: Report for which local SSRC is a remote RB reporting on
+         This is useful in the Bundle case because there may be multiple local
+         and remote SSRCs in the same session.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/776>
+
+2020-10-29 15:58:38 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtp/gstrtpisacdepay.c:
+       * gst/rtp/gstrtpisacpay.c:
+         docs: update plugins cache
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/530>
+
+2020-03-20 13:15:33 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/rtp/gstrtp.c:
+       * gst/rtp/gstrtpisacdepay.c:
+       * gst/rtp/gstrtpisacdepay.h:
+       * gst/rtp/meson.build:
+         rtp: add rtpisacdepay
+         Depayload for the iSAC audio codec.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/530>
+
+2020-03-20 13:15:33 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/rtp/gstrtp.c:
+       * gst/rtp/gstrtpisacpay.c:
+       * gst/rtp/gstrtpisacpay.h:
+       * gst/rtp/meson.build:
+         rtp: add rtpisacpay
+         Payload for the iSAC audio codec.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/530>
+
+2020-11-01 18:36:49 +0000  Dinesh Manajipet <saidinesh5@gmail.com>
+
+       * ext/qt/qtitem.cc:
+         qmlglsink: Set qtitem's implicit width/height
+         This can be useful to let the layouts automatically resize qtitem
+         and also easily query a video's width/height from QML
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/802>
+
+2020-11-01 10:30:27 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Release pads via GstAggregator
+         See https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/797
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/801>
+
+2020-10-26 12:40:49 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/gstqtmux.c:
+         qtmux: support muxing multiple codec_data for h264/h265
+         Each codec_data is put into its own SampleTableEntry inside the stsd.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/787>
+
+2020-10-29 14:54:16 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/debugutils/gstnavseek.c:
+       * gst/debugutils/gstnavseek.h:
+         navseek: add hold_eos property
+         This property will tell the element to hold
+         the EOS event and keep it until the next
+         keystroke.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/792>
+
+2020-10-31 12:52:04 +1100  Jan Schmidt <jan@centricular.com>
+
+       * tests/check/elements/splitmuxsrc.c:
+         splitmuxsrc: Fix comment in a test
+         Fix a comment in the splitmuxsrc robust muxing test so it
+         describes the test properly.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/798>
+
+2020-10-31 12:49:08 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Change EOS catching logic.
+         Add a new state for ending the overall stream, and use it to decide
+         whether to pass the final EOS message up the bus instead of dropping
+         it. Fixes a small race that makes the testsuite sometimes not generate
+         the last fragment(s) sometimes because the wrong EOS gets
+         allowed through too early.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/798>
+
+2020-10-31 02:19:07 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Don't use the element state lock
+         Using the element state lock to avoid splitmuxsink shutting
+         down while doing element manipulations can lead to a deadlock on
+         shutdown if a fragment switch happens at exactly the wrong moment.
+         Use a private mutex and a shutdown boolean instead.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/798>
+
+2020-10-30 03:38:15 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Don't busy loop on a non-ready pad.
+         If a pad gets into the check_completed_gop method and then
+         the underlying conditions change on the reference context,
+         things could get stuck in a busy loop when the context should
+         instead jump back out and wait for more data.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/798>
+
+2020-10-30 03:36:51 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Mark running=false on shutdown.
+         Make sure that any late gst_element_call_async() callbacks
+         know that the elements is shutting down and bail out instead
+         of operating on the element we're trying to stop.
+         Fixes a spurious test failure in elements_splitmuxsrc
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/798>
+
+2020-10-29 02:36:35 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Forward EOS messages from async fragments.
+         Re-enable forwarding EOS messages from fragments that are completing
+         asynchronously, so that splitmuxsink itself won't go EOS until they
+         are complete. This was disabled to work around a bug in core that
+         is fixed in
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/683
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/798>
+
+2020-09-17 22:56:01 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Never start a new fragment with no reference buffers
+         If there has been no bytes from the reference stream muxed into
+         the current fragment, then time can't have advanced, there's no
+         GOP... this fragment would be broken or empty, so wait for some
+         data on the reference buffer.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/798>
+
+2020-10-29 02:38:16 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Chain up when releasing pad, and fix some locking.
+         Release pads by calling up into aggregator so it can do the right
+         things. Don't clean up the pad until after that.
+         Add some missing locks around some accesses to shared pad state.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/797>
+
+2018-08-13 15:35:11 +0200  Stian Selnes <stian@pexip.com>
+
+       * gst/rtp/gstrtpvp9depay.c:
+       * gst/rtp/gstrtpvp9depay.h:
+       * tests/check/elements/rtpvp9.c:
+         rtpvp9depay: Improve SVC parsing, aggregate all layers
+         - Fix start and end of picture to support multiple layers. Start of
+         picture is the first packet of the base layer, while end of picture
+         is when the marker bit is set (last packet of the enhancement
+         layers).
+         - All "layers" (aka "frames") of a picture are pushed downstream in a
+         single buffer when picture is complete.
+         - Forgive SID=0 for enhancement layers (invalid, but Chrome and
+         Firefox sends it)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/773>
+
+2020-10-30 03:09:48 +0100  Stian Selnes <stian@pexip.com>
+
+       * gst/rtp/gstrtpvp8depay.c:
+       * gst/rtp/gstrtpvp8depay.h:
+       * tests/check/elements/rtpvp8.c:
+         rtpvp8depay: Send lost events when marker bit is missing
+         This means the previous frame was incomplete.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/796>
+
+2020-10-14 23:17:53 +0200  Knut Saastad <Knut@bitflow.io>
+
+       * gst/rtp/gstrtpvp8depay.c:
+       * gst/rtp/gstrtpvp8pay.c:
+         rtpvp9depay: detect incomplete frames and bail out
+         If a packet with the B bit set arrives but we haven't received
+         a packet with the marker or E bits set to end the previous frame,
+         we know the current frame was incomplete.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/795>
+
+2020-10-14 23:17:53 +0200  Knut Saastad <Knut@bitflow.io>
+
+       * gst/rtp/gstrtpvp9depay.c:
+         rtpvp9depay: detect incomplete frames and bail out
+         If a packet with the B bit set arrives but we haven't received
+         a packet with the marker or E bits set to end the previous frame,
+         we know the current frame was incomplete.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/769>
+
+2020-10-14 01:28:50 +0200  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtp/gstrtpvp8depay.c:
+       * gst/rtp/gstrtpvp8depay.h:
+       * gst/rtp/gstrtpvp9depay.c:
+       * gst/rtp/gstrtpvp9depay.h:
+       * tests/check/elements/rtpvp8.c:
+       * tests/check/elements/rtpvp9.c:
+         rtpvp*depay: possibly forward might-have-been-fec PacketLost events
+         This is ad adaptation of a Pexip patch for dealing with spurious
+         GstRTPPacketLost events caused by lost ulpfec packets: as FEC packets
+         under that scheme are spliced in the same sequence domain as the media
+         packets, it is not generally possible to determine whether a lost packet
+         was a FEC packet or a media packet.
+         When upstreaming pexip's ulpfec patches, we decided to drop all lost
+         events at the base depayloader level, and where the original patch
+         from pexip was making use of picture ids and marker bits to determine
+         whether a packet should be forwarded, this patch makes use of those
+         to determine whether they should be dropped instead (by removing their
+         might-have-been-fec field).
+         Spurious lost events coming out of the depayloader can cause the
+         decoder to stop decoding until the next keyframe and / or request a new
+         keyframe, and while this is not desirable it makes sense to forward
+         that information when we have other means to determine whether a lost
+         packet was indeed a FEC packet, as is the case with VP8 / VP9 payloads
+         when they carry a picture id.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/769>
+
+2020-10-20 23:22:36 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: Preserve SPS/PPS arrival order.
+         Even if SPS/PPS haven't changed, make sure to move them to the
+         end of the tracking array if needed, so we always know what the
+         most recent entries are, in case we need to discard the oldest
+         when generating codec_data.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/775>
+
+2020-10-17 00:05:15 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: Warn when max SPS/PPS are collected in AVC mode.
+         The AVC codec_data has a flaw that it can only accomodate
+         31 SPS headers, even though H.264 can have 32, and 255 PPS,
+         when there can be 256 in H.264. When streaming RTP some
+         clients like to cycle through SPS/PPS ids when changing
+         configuration and can eventually accumulate a full set.
+         In that case, we have no choice but to discard one (oldest)
+         entry, or else the count written into the codec_data is wrong
+         and downstream decoding failures ensue.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/775>
+
+2020-10-28 00:29:05 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtptimerqueue.c:
+       * gst/rtpmanager/rtptimerqueue.h:
+       * tests/check/elements/rtpjitterbuffer.c:
+       * tests/check/elements/rtptimerqueue.c:
+         rtpjitterbuffer: don't send multiple instant RTX for the same packet
+         Due to us not properly acknowleding the time when the last RTX was sent
+         when scheduling a new one, it can easily happen that due to the packet
+         you are requesting have a PTS that is slightly old (but not too old when
+         adding the latency of the jitterbuffer), both its calculated second and
+         third (etc.) timeout could already have passed. This would lead to a burst
+         of RTX requests, which acts completely against its purpose, potentially
+         spending a lot more bandwidth than needed.
+         This has been properly reproduced in the test:
+         test_rtx_not_bursting_requests
+         The good news is that slightly re-thinking the logic concerning
+         re-requesting RTX, made it a lot simpler to understand, and allows us
+         to remove two members of the RtpTimer which no longer serves any purpose
+         due to the refactoring. If desirable the whole "delay" concept can actually
+         be removed completely from the timers, and simply just added to the timeout
+         by the caller of the API. But that can be a change for a another time.
+         The only external change (other than the improved behavior around bursting
+         RTX) is that the "delay" field now stricly represents the delay between
+         the PTS of the RTX-requested packet and the time it is requested on,
+         whereas before this calculation was more about the theoretical calculated
+         delay. This is visible in three other RTX-tests where the delay had
+         to be adjusted slightly. I am confident however that this change is
+         correct.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/789>
+
+2020-10-27 23:43:49 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroska-mux: Fix sparse stream crash
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/656
+         introduced an invalid memory access when debug is enabled, by casting
+         the wrong pointer to a GstCollectPad. Fixing that showed the original
+         change was incorrect and leads to an infinite loop in the
+         testsuite. This patch fixes both problems.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/788>
+
+2020-10-22 15:29:01 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * ext/vpx/gstvpxenc.c:
+         vpx: Fix the check to unfixed/unknown framerate to set bitrate
+         0/1 means unknown framerate not X/0 (which is illegal).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/782>
+
+2020-10-22 09:17:26 -0400  Arun Raghavan <arun@asymptotic.io>
+
+       * gst/rtp/gstrtputils.c:
+         rtputils: Count metas with an empty tag list for copying/keeping
+         The GstMetaInfos registered in core do not set their tags to NULL, but
+         instead use an empty list (non-NULL list with a single NULL value).
+         Let's check explicitly for that so as to not miss some metas.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/779>
+
+2020-10-16 16:05:45 -0700  Bastien Reboulet <bastien.reboulet@gmail.com>
+
+       * ext/qt/qtitem.cc:
+         qmlglsink: fix crash when created/destroyed in quick succession
+         The crash is caused by a race condition where the render thread
+         calls a method on the QtGLVideoItem instance that was
+         previously destroyed by the main thread.
+         Also, less frequently, QtGLVideoItem::onSceneGraphInitialized
+         is called when QQuickItem::window is null, also causing a crash.
+         Fixes #798
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/777>
+
+2020-10-19 18:23:25 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2codec: Garbage collect old frames if they accumulate because of codec bugs
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/778>
+
+2020-10-19 17:56:04 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2bufferpool.h:
+       * sys/v4l2/gstv4l2sink.c:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2codec: Pass system frame number as timestamp and use it to retrieve back frames reliably
+         System frame numbers are supposed to be unique and correct drivers are
+         passing through timestamps without modification from the output/sink to the
+         capture/src side.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/778>
+
+2020-09-24 13:13:00 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+         rtpbin: Add clear-ssrc action
+         This action signal will delegate to clear-ssrc onto the rtpssrcdemux element
+         associated with the session. This allow rtpbin users to clear pads and
+         elements for a specific ssrc that is known to no longer be in use. This
+         happens when a pad is reused in rtpsrc or ristsrc.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/736>
+
+2017-09-08 20:02:13 +0100  John-Mark Bell <jmb@pexip.com>
+
+       * gst/rtp/gstrtpvp8pay.c:
+       * gst/rtp/gstrtpvp8pay.h:
+       * tests/check/elements/rtpvp8.c:
+       * tests/check/meson.build:
+         rtpvp8pay: payload temporally scaled bitstreams.
+         Co-Authored-By: Vincent Sanders <vince@pexip.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/728>
+
+2017-11-17 15:11:41 +0100  Stian Selnes <stian@pexip.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtp/gstrtpvp8pay.c:
+       * gst/rtp/gstrtpvp8pay.h:
+         rtpvp8pay: Add picture-id-offset property
+         Add property to set the initial value for picture-id. RFC7741 says
+         that picture-id MAY be initialized to a random value, thus it's also
+         valid to simply set it to a fixed initial value. A fixed value is very
+         useful for testing.
+         Default behavior is not changed.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/728>
+
+2017-03-16 15:23:28 +0100  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtp/gstrtpvp8pay.c:
+         rtpvp8pay: move duplicate code to separate functions
+         Two new functions to modify picture id:
+         gst_rtp_vp8_pay_picture_id_reset - picks random picture id of
+         appropriate bitsize
+         gst_rtp_vp8_pay_picture_id_increment - increments picture id taking
+         care of wrapping
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/728>
+
+2017-09-08 08:13:05 +0100  John-Mark Bell <jmb@pexip.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/vpx/gstvpxenc.c:
+         vp8enc: expect bps for temporal-scalability-target-bitrate.
+         Consistency with target-bitrate is less surprising and with
+         modern libvpx additional configuration is required to make
+         temporal scaling work.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/728>
+
+2017-09-08 08:19:20 +0100  John-Mark Bell <jmb@pexip.com>
+
+         vp8enc: finish support for temporally scaled encoding
+         - introduce two new properties:
+         * temporal-scalability-layer-flags:
+         Provide fine-grained control of layer encoding to the
+         outside world. The flags sequence should be a multiple of
+         the periodicity and is indexed by a running count of encoded
+         frames modulo the sequence length.
+         * temporal-scalability-layer-sync-flags:
+         Specify the pattern of inter-layer synchronisation (i.e.
+         which of the frames generated by the layer encoding
+         specification represent an inter-layer synchronisation).
+         There must be one entry per entry in
+         temporal-scalability-layer-flags.
+         - apply temporal scalability settings and expose as buffer
+         metadata.
+         This allows the codec to allocate a given frame to the correct
+         internal bitrate allocator. Additionally, all the
+         non-bitstream metadata needed to payload a temporally scaled
+         stream is now attached to each output buffer as a
+         GstVideoVP8Meta.
+         - add unit test for temporally scaled encoding.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/728>
+
+2020-10-15 18:21:54 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/udp/gstudp.c:
+       * meson.build:
+         meson: update glib minimum version to 2.56
+         In order to support the symbol g_enum_to_string in various
+         project using GStreamer ( gst-validate etc.), the glib minimum
+         version should be 2.56.0.
+         Remove compat code as glib requirement
+         is now > 2.56
+         Version used by Ubuntu 18.04 LTS
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/774>
+
+2020-10-14 14:30:34 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpst2022-1-fecenc.c:
+         rtpst2022-1-fecenc: fix input seqnum check
+         We need to cast the incremented last seqnum to guint16 for
+         consistent checks on wraparound
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/770>
+
+2020-09-12 09:02:30 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/flv/gstflvmux.c:
+       * gst/flv/gstflvmux.h:
+         flvmux: Correct time types
+         - last_dts is in milliseconds, not nanoseconds as expected for
+         GstClockTime. Make it a generic guint64.
+         - Use GstClockTime for the fields that actually contain nanoseconds.
+         None of them should become negative.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/766>
+
+2020-10-09 09:31:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpst2022-1-fecenc.c:
+         rtpst2022-1-fecenc: Don't unconditionally use GLib 2.60 APIs
+         g_queue_clear_full() in this case.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/768>
+
+2020-10-08 18:54:55 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/rtpulpfeccommon.c:
+         rtpulpfec: fix potential alignment issue in xor function
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/753#note_646453
+         for context
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/753>
+
+2020-10-06 03:03:13 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+       * gst/rtpmanager/gstrtpmanager.c:
+       * gst/rtpmanager/gstrtpst2022-1-fecenc.c:
+       * gst/rtpmanager/gstrtpst2022-1-fecenc.h:
+       * gst/rtpmanager/meson.build:
+       * tests/check/elements/rtpst2022-1-fecenc.c:
+       * tests/check/meson.build:
+         rtpmanager: implement SMPTE 2022-1 FEC encoder
+         + improve integration of FEC encoders in rtpbin
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/753>
+
+2020-10-06 03:13:30 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+       * gst/rtpmanager/gstrtpmanager.c:
+       * gst/rtpmanager/gstrtpst2022-1-fecdec.c:
+       * gst/rtpmanager/gstrtpst2022-1-fecdec.h:
+       * gst/rtpmanager/meson.build:
+       * tests/check/elements/rtpst2022-1-fecdec.c:
+       * tests/check/meson.build:
+         rtpmanager: implement SMPTE 2022-1 FEC decoder
+         + improve integration of FEC decoders in rtpbin
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/753>
+
+2020-07-08 17:28:31 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpfunnel.c:
+       * tests/check/elements/rtpfunnel.c:
+         rtpfunnel: Also forward custom sticky event
+         This is useful to track metadata about each group of packets
+         Also include a unit test
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/666>
+
+2020-09-29 09:44:54 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/isomp4/gstqtmux-doc.c:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmuxmap.c:
+         isomp4: Rename GstQTMux to GstBaseQTMux to avoid breaking API
+         Since 52b63de19ada283c1180c8fc00cacb1465fdf10f the qtmux GType was
+         renamed GstQTMuxElement which breaks presets, revert that change.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/755>
+
+2020-09-28 18:25:21 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpdvpay.c:
+       * gst/rtp/gstrtph261pay.c:
+       * gst/rtp/gstrtph263pay.c:
+       * gst/rtp/gstrtph263ppay.c:
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/gstrtpj2kpay.c:
+       * gst/rtp/gstrtpjpegpay.c:
+       * gst/rtp/gstrtpklvpay.c:
+       * gst/rtp/gstrtpmp4vpay.c:
+       * gst/rtp/gstrtpmpvpay.c:
+       * gst/rtp/gstrtptheorapay.c:
+       * gst/rtp/gstrtpvp8pay.c:
+       * gst/rtp/gstrtpvp9pay.c:
+         rtp: Fix allocations to support source-info property
+         Use gst_rtp_base_payload_allocate_output_buffer() instead of
+         gst_rtp_buffer_new_allocate() in order to allocate RTP buffer with
+         correct number of CSRCs according to the meta.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/612>
+
+2015-10-23 11:08:56 +0200  Stian Selnes <stian@pexip.com>
+
+       * gst/rtp/gstrtpvp8pay.c:
+         rtpvp8pay: Fix allocation to support source-info property
+         Use gst_rtp_base_payload_allocate_output_buffer() in order to allocate
+         RTP buffer with correct number of CSRCs according to the meta.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/314
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/612>
+
+2020-09-28 15:36:00 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: output the correct limits in error messages
+         Having the current bytes being less than the limit was confusing!
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/732>
+
+2020-07-31 16:47:37 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+       * tests/check/elements/qtmux.c:
+         qtmux: properly support initial caps nego failure
+         Scenario:
+         - gap event causes h264parse to push made up caps that may fail checks
+         inside qtmux (e.g missing codec_data).
+         - the caps event has already been marked as received and is sticky on
+         the sink pad
+         - gst_qt_mux_pad_can_renegotiate() will retrieve the failed caps event
+         using gst_pad_get_current_caps() and reject the correct updated caps
+         with codec_data.
+         - Failure!
+         Keep track of the configured caps ourselves instead of relying on the
+         sticky event on the pad.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/732>
+
+2020-07-22 15:34:44 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: support non-seekable downstream mode
+         Write an mdat per buffer in that case.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/732>
+
+2020-09-23 15:25:36 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Remove the rtpjitterbuffer with the stream
+         Since !348, the jitterbuffer was only removed with the session. This restores
+         the original behaviour and removes the jitterbuffer when the stream is
+         removed. This avoid accumulating jitterbuffer objects into the bin when a
+         session is reused.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/735>
+
+2020-09-23 13:26:51 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Cleanup dead code
+         The rtpjitterbuffer is now part of the session elements, we no longer need
+         to do the ref_sink dance when signalling it. It is already owned by the bin
+         when signalled. Also, the code that handles generic session elements already
+         handle the ref_sink() calls since:
+         03dc22951bacb6fdc3868c8f801e6a52c33a745f
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/735>
+
+2020-09-18 16:09:20 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph264depay.h:
+       * gst/rtp/gstrtph265depay.c:
+       * gst/rtp/gstrtph265depay.h:
+       * tests/check/elements/rtph264.c:
+         rtph26*depay: drop FU's without a corresponding start bit
+         If we have not received a FU with a start bit set, any subsequent FU
+         data is not useful at all and would result in an invalid stream.
+         This case is constructed from multiple requirements in
+         RFC 3984 Section 5.8 and RFC 7798 Section 4.4.3.  Following are excerpts
+         from RFC 3984 but RFC 7798 contains similar language.
+         The FU in a single FU case is forbidden:
+         A fragmented NAL unit MUST NOT be transmitted in one FU; i.e., the
+         Start bit and End bit MUST NOT both be set to one in the same FU
+         header.
+         and dropping is possible:
+         If a fragmentation unit is lost, the receiver SHOULD discard all
+         following fragmentation units in transmission order corresponding to
+         the same fragmented NAL unit.
+         The jump in seqnum case is supported by this from the specification
+         instead of implementing the forbidden_zero_bit mangling:
+         If a fragmentation unit is lost, the receiver SHOULD discard all
+         following fragmentation units in transmission order corresponding to
+         the same fragmented NAL unit.
+         A receiver in an endpoint or in a MANE MAY aggregate the first n-1
+         fragments of a NAL unit to an (incomplete) NAL unit, even if fragment
+         n of that NAL unit is not received.  In this case, the
+         forbidden_zero_bit of the NAL unit MUST be set to one to indicate a
+         syntax violation.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/730>
+
+2020-09-20 21:06:19 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: Response caps query from srcpad
+         ... and chain up to default query handler for unhandled query types.
+         Unhandled query shouldn't be returned with FALSE if there's no special needs.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/731>
+
+2020-09-16 12:15:09 +1000  Matthew Waters <matthew@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/isomp4/gstqtmux-doc.c:
+       * gst/isomp4/gstqtmux-doc.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: make documentation happy
+         introduce a base qtmux class that we can install documentation snippets
+         on instead of duplicating across alll the isomp4 elements
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/643>
+
+2020-05-28 19:40:24 +1000  Matthew Waters <matthew@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+       * gst/isomp4/gstqtmuxmap.c:
+       * tests/check/elements/qtmux.c:
+         isomp4/mux: add a fragment mode for initial moov with data
+         Used by some proprietary software for their fragmented files.
+         Adds some support for multi-stream fragmented files
+         Flow is as follows.
+         1. The first 'fragment' is written as a self-contained fragmented
+         mdat+moov complete with an edit list and durations, tags, etc.
+         2. Subsequent fragments are written with a mdat+moof and each stream is
+         interleaved as data arrives (currently ignoring the interleave-*
+         properties).  data-offsets in both the traf and the trun ensure
+         data is read from the correct place on demuxing.  Data/chunk offsets
+         are also kept for writing out the final moov.
+         3. On finalisation, the initial moov is invalidated to a hoov and the
+         size of the first mdat is extended to cover the entire file contents.
+         Then a moov is written as regularly would in moov-at-end mode (the
+         default).
+         This results in a file that is playable throughout while leaving a
+         finalised file on completion for players that do not understand
+         fragmented mp4.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/643>
+
+2020-06-25 16:37:56 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: increase some logging on streams and sample parsing
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/643>
+
+2020-06-25 16:35:45 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: bail out when encountering an atom with a size of 0
+         A size 0 atom means the atom extends to the end of the file.  No further
+         valid atoms will ever follow.  Avoids a subsequent scan for an atom from
+         one byte earlier after encountering a size 0 atom.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/643>
+
+2020-06-25 16:33:04 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix subsequent moof parsing after moov with valid samples
+         reset the moof_offset back to its original value like is done in the
+         error case just before.
+         Fixes subsequent parsing of a moof following a moov that contains valid
+         samples in a non-streaming fragmented mp4.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/643>
+
+2020-06-25 16:30:28 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: extend edit list when fragmented
+         When we are fragmented, the edit list may only refer to the portion of
+         the media that is in the moov.  Extend the edit list stop time when we
+         if there is only one qt segment and we are reading a fragmented file.
+         Fixes playback of some fragmented mp4 files generated by proprietary
+         programs.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/643>
+
+2020-09-15 14:22:13 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * meson_options.txt:
+         meson: Allow overriding qt5 feature
+         This will allow controlling that feature from gst-build
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/729>
+
+2015-11-17 19:14:01 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Implement segment query
+         Fixes #239
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/713>
+
+2020-09-14 10:15:35 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtp/gstrtpmp4gdepay.c:
+         rtpmp4gdepay: Allow lower-case "aac-hbr" instead of correct "AAC-hbr"
+         Various live555 based products are using the wrong "mode" string or
+         seem to assume case-insensitive matching, which is wrong.
+         Examples for this are the Yuan SC6C0N1 mini and the Kiloview E2.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/727>
+
+2020-05-02 02:21:00 +0200  Stefan Brüns <stefan.bruens@rwth-aachen.de>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Add support for AAX encrypted audio streams
+         This is modelled after the DASH Common Encryption scheme, but is somewhat
+         simpler as more parts are fixed, i.e. just one encryption scheme.
+         The output caps are fixed to 'application/x-aavd'. All information
+         required for decryption are part of the 'adrm' atom, which is passed
+         on as a property. The property is attached to the buffer.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/577>
+
+2020-05-02 02:20:44 +0200  Stefan Brüns <stefan.bruens@rwth-aachen.de>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux_types.c:
+         qtdemux: Add 'aavd' and related fourcc codes for AAX encrypted audio
+         The 'aavd' box is contained in the 'stsd' sample description. The 'aavd'
+         box follows the layout of an 'mp4a' entry, i.e. it contains a single
+         standard 'esds' extension box, and the two proprietary 'adrm' and 'aabd'
+         extension boxes.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/577>
+
+2014-06-23 08:46:37 +0200  Haakon Sporsheim <haakon@pexip.com>
+
+       * ext/vpx/gstvp8dec.c:
+       * ext/vpx/gstvp9dec.c:
+       * ext/vpx/gstvpxdec.c:
+       * ext/vpx/gstvpxdec.h:
+         vpxdec: request a sync point on decoder errors
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/725>
+
+2020-09-13 18:31:57 +0200  Camilo Celis Guzman <camilo@pexip.com>
+
+       * gst/rtp/gstrtpvrawpay.c:
+         rtp/vrawpay: use alloc_output_buffer from base class
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/726>
+
+2020-09-07 23:20:58 +0800  Ricky Tang <ricky@deepsentinel.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix push-backchannel-buffer parameter mismatch
+         When using python, signal parameter must match with function.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/724>
+
+2020-09-10 11:24:32 +0200  Jérôme Laheurte <jlaheurte@quividi.net>
+
+       * ext/jpeg/gstjpegdec.c:
+         jpegdec: check buffer size before dereferencing. Fixes #541
+         Some cameras (Panacast) have buggy drivers/firmware which send
+         invalid JPEG frames, containing no data, which makes jpegdec
+         crash because it assumes the frame is at least 2 bytes long.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/723>
+
+2020-09-10 11:11:00 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Improve logging of gst_flv_mux_buffer_to_tag_internal
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/722>
+
+2020-09-09 15:12:53 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Move stream skipping to GstAggregatorPadClass.skip_buffer
+         Besides looking like the correct place to put this, it allows us to drop
+         the entire aggregator queue. The old implementation only dropped at most
+         one buffer for each call of aggregate.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/722>
+
+2020-09-08 17:35:50 +0200  Havard Graff <havard@pexip.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: plug memory-leak
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/718>
+
+2020-08-28 18:09:15 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvp9enc.h:
+       * ext/vpx/meson.build:
+         vp9enc: expose row-mt property
+         With recent libvpx versions, multithreading can be enabled on
+         a per-tile basis, instead of on a per tile-column basis.
+         In combination with the new tile-rows property, this allows the
+         encoder to make much better use of the available CPU power.
+         Bump minimum libvpx version to 1.7.0
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/707>
+
+2020-08-28 17:45:48 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/vpx/gstvpxenc.c:
+         vpxenc: change default for deadline to good quality
+         Having the deadline set to best quality causes the encoder
+         to be absurdly slow, most real-life users will want the good
+         quality tradeoff instead.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/707>
+
+2020-08-28 17:39:47 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvp9enc.h:
+         vp9enc: expose tile-columns and tile-rows properties
+         Based on patch by Stian Selnes <stian@pexip.com>.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/707>
+
+2020-08-28 17:35:26 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * ext/vpx/gstvpxenc.c:
+       * ext/vpx/gstvpxenc.h:
+         vpxenc: add configure_encoder virtual method
+         For subclasses to expose format-specific properties
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/707>
+
+2020-09-08 20:57:33 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: fix sink pad release while PLAYING
+         - Release the split mux lock while removing the probes
+         - Flush the sinkpad to unblock other pads
+         - Turn check_completed_gop into a do while statement, when
+         waking up we want to recheck whether the current GOP is
+         ready for sending
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/719>
+
+2017-10-31 09:40:33 +0000  John-Mark Bell <jmb@pexip.com>
+
+       * tests/check/elements/vp8enc.c:
+         vp8enc: improve unit tests
+         - make test_encode_simple cope with libvpx built with
+         CONFIG_REALTIME_ONLY. Sadly, there's no way to detect this at
+         runtime beyond trying to set lag-in-frames to >0, pushing a
+         buffer and catching the GST_FLOW_NOT_NEGOTIATED return.
+         - fix bitrot in test_encode_simple_when_bitrate_set_to_zero.
+         - port test_encode_simple to GstHarness and introduce a separate
+         test for the lag-in-frames property.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/708>
+
+2020-08-21 16:03:09 +0200  Jakub Adam <jakub.adam@collabora.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: Update plugin cache
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/705>
+
+2020-03-24 19:35:07 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * ext/vpx/gstvp9dec.c:
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvpxenc.c:
+         vpx: Support GST_VIDEO_FORMAT_I422_10LE
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/705>
+
+2020-03-24 17:16:59 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * ext/vpx/gstvp9dec.c:
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvpxenc.c:
+         vpx: Support GST_VIDEO_FORMAT_I420_10LE
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/705>
+
+2020-03-23 21:44:30 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvpxenc.c:
+         vp9enc: support GST_VIDEO_FORMAT_Y444
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/705>
+
+2020-09-08 17:30:35 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * .gitlab-ci.yml:
+         ci: include template from gst-ci master branch again
+
+2020-09-08 16:58:37 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * meson.build:
+         Back to development
+
+=== release 1.18.0 ===
+
+2020-09-08 00:05:14 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * .gitlab-ci.yml:
+       * ChangeLog:
+       * NEWS:
+       * README:
+       * RELEASE:
+       * docs/gst_plugins_cache.json:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.18.0
+
+2020-09-07 22:39:02 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+       * scripts/dist-translations.py:
+       * scripts/meson.build:
+         meson: dist pot file in tarballs
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/716>
+
+2020-09-07 12:13:18 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/qtdemux.c:
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-mux.c:
+         gst: Update for gst_video_transfer_function_*() function renaming
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/715>
+
+2020-08-31 15:01:32 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Avoid crash when best pad gets flushed
+         The 'best' pad might receive a flush event between us picking it and us
+         popping the buffer. In this case, the buffer will be missing.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/711>
+
+2020-08-31 13:43:42 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Correct breaks in gst_flv_mux_find_best_pad
+         The code seems to use `continue` and `break` as if both refer to the
+         surrounding `while` loop. But because `break` breaks out of the
+         `switch`, they actually have the same effect.
+         This may have caused the loop not to terminate when it should. E.g. when
+         `skip_backwards_streams` drops a buffer we should abort the aggregation
+         and wait for all pads to be filled again. Instead, we might have just
+         selected a subsequent pad as our new "best".
+         Replace `break` with `done = TRUE; break`, and `continue` with `break`.
+         Then simplify the code a bit.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/710>
+
+2020-05-13 11:31:38 +0200  Dmitriy Purgin <dpurgin@gmail.com>
+
+       * ext/qt/README.md:
+       * ext/qt/qtplugin.pro:
+         gstqmlgl: build on Windows with qmake without pkgconfig; update instructions on building for Windows
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/591>
+
+2020-08-21 12:12:48 +0200  Philipp Zabel <philipp.zabel@gmail.com>
+
+       * meson.build:
+         meson: fix build failure if orc is enabled but none of its users are
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/778
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/704>
+
+2020-08-20 14:26:04 +0200  Zeid Bekli <zeidb@axis.com>
+
+       * gst/rtp/gstrtpL16depay.c:
+         rtpL16depay: unref buffer on error
+         gst_rtp_L16_depay_process to unref buffer on wrong payload size or
+         reorder failure.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/702>
+
+=== release 1.17.90 ===
+
+2020-08-20 16:11:58 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * docs/gst_plugins_cache.json:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.17.90
+
+2020-08-18 10:27:52 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtputils.c:
+         rtputils: Don't call NULL GstMeta transform function
+         It's optional and if it does not exist then no transformation is
+         possible.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/701>
+
+2020-08-13 15:27:25 -0400  Julian Bouzas <julian.bouzas@collabora.com>
+
+       * gst/rtp/gstrtp.c:
+         rtp: Do not register rtpreddec and rtpredenc twice
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/699>
+
+2020-08-12 12:21:43 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsource.c:
+         rtpmanager: Improve readability of "stats" docs by making the fields an actual list
+         Otherwise they end up all in the same line one after another.
+         Also add docs for the "avg-jitter" stats field of the jitterbuffer.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/698>
+
+2020-08-11 17:24:11 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2h264codec.c:
+         v4l2h264codec: Map newly defined profile/levels
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/697>
+
+2020-08-11 17:18:42 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/ext/types-compat.h:
+       * sys/v4l2/ext/v4l2-common.h:
+       * sys/v4l2/ext/v4l2-controls.h:
+       * sys/v4l2/ext/videodev2.h:
+         v4l2: Sync headers with kernel 5.9
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/697>
+
+2020-08-06 13:15:10 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+       * sys/v4l2/gstv4l2deviceprovider.c:
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2radio.c:
+       * sys/v4l2/gstv4l2sink.c:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: use GstV4l2Error in gst_v4l2_open()
+         gst_v4l2_open() is called by gst_v4l2_device_provider_probe_device(),
+         where the GstV4l2Object is created without an associated GstElement.
+         If gst_v4l2_open() fails, it raises a bus message, but without an
+         element, a precondition check fails on
+         gst_element_message_full_with_details() generating a crash if running
+         with fatal-warnings debug mode.
+         GstV4l2Error is a helper to raise error bus messages when it is
+         appropiated. This patch changes the direct bus messages to this
+         helper, and the elements will actually send the error message.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/694>
+
+2020-08-10 20:20:53 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Return NEED_DATA when we drop a buffer
+         When we are dropping a buffer in find_best_pad (e.g. waiting for a
+         keyframe, or skipping backwards timestamp), return
+         GST_AGGREGATOR_FLOW_NEED_DATA to make sure we have enough data at the
+         next run. Otherwise, a stream that accidentally fell behind (e.g.
+         relinking race, or just waiting for a keyframe) will never get the
+         opportunity to catch up to the other one, because the other one will
+         always keep advancing.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/696>
+
+2020-08-10 20:20:04 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Return NEED_DATA when no best pad is found
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/696>
+
+2020-08-10 20:17:38 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Fix possible crash on GST_ITERATOR_RESYNC
+         Wrong pointer type
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/696>
+
+2020-08-10 15:49:55 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtglrenderer.cc:
+         qmlgloverlay: fix multiple elements with Qt 5.15
+         With Qt 5.15 multiple qmlgloverlay elements would produce:
+         ASSERT: "!m_gl->property(QSG_RENDERCONTEXT_PROPERTY).isValid()" in file /path/to/qt5/qtdeclarative/src/quick/scenegraph/qsgdefaultrendercontext.cpp, line 121
+         Workaround by setting the (seeminigly unused) property before
+         initialization.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/695>
+
+2020-08-05 10:41:33 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+       * tests/check/elements/rtp-payloading.c:
+       * tests/check/elements/rtph264.c:
+       * tests/check/elements/rtph265.c:
+         rtph26[45]pay: Change default aggregate-mode to "none" for backwards compatibility
+         We didn't aggregate at all in previous versions and there are apparently
+         various RTP implementations that don't handle aggregation well at all.
+         As part of this also document that for RTSP it is recommended to keep it
+         set to "none" while for WebRTC it should be set to "zero-latency".
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/749
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/692>
+
+2020-07-24 16:58:34 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/meson.build:
+       * ext/qt/meson.build:
+       * meson.build:
+       * tests/examples/gtk/meson.build:
+         build: update for gl pkg-config file split
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/680>
+
+2020-07-31 13:50:13 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Make sure flushing doesn't block
+         * Trying to disconnect a stream from a running splitmuxsink by flushing
+         it results in the FLUSH_START blocking in the stream queue's
+         gst_pad_pause_task because the flush did not unblock
+         complete_or_wait_on_out, so add a check for ctx->flushing there.
+         * Add a GST_SPLITMUX_BROADCAST_INPUT so check_completed_gop notices
+         flushing changed and the incoming push is unblocked.
+         * Pass the FLUSH_STOP along to the muxer without waiting.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/687>
+
+2020-08-04 15:49:43 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: Wait until we have a clock
+         Otherwise it can happen that it tries to get the clock in PAUSED state
+         in live mode, which does not exist.
+         Thanks to Sebastian Dröge for helping debugging.
+         Fixes #775
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/691>
+
+2020-07-31 11:05:02 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: extract bit depth from codec data for ALAC
+         The info in the sound sample description might not be
+         accurate if it's an older version atom.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/771
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/686>
+
+2020-07-28 18:46:30 +0300  Jordan Petridis <jordan@centricular.com>
+
+       * gst/auparse/gstauparse.c:
+         auparse: fix compiler warnings
+         GCC 10 was complaining like following. It really is complaining about default cases returning
+         with potentially unitialized *desval, but those cases in the switch should never be hit.
+         ```
+         ../subprojects/gst-plugins-good/gst/auparse/gstauparse.c: In function 'gst_au_parse_chain':
+         ../subprojects/gst-plugins-good/gst/auparse/gstauparse.c:481:37: error: 'timestamp' may be used uninitialized in this function [-Werror=maybe-uninitialized]
+         481 |       GST_BUFFER_TIMESTAMP (outbuf) = timestamp;
+         ../subprojects/gst-plugins-good/gst/auparse/gstauparse.c:482:36: error: 'duration' may be used uninitialized in this function [-Werror=maybe-uninitialized]
+         482 |       GST_BUFFER_DURATION (outbuf) = duration;
+         ../subprojects/gst-plugins-good/gst/auparse/gstauparse.c:480:34: error: 'offset' may be used uninitialized in this function [-Werror=maybe-uninitialized]
+         480 |       GST_BUFFER_OFFSET (outbuf) = offset;
+         cc1: all warnings being treated as errors
+         ```
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/671>
+
+2020-07-29 14:06:55 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: drop stream-start message posted by the internal udp sink(s)
+         See #1368
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/685>
+
+2020-07-22 16:24:15 +0900  Hosang Lee <hosang10.lee@lge.com>
+
+       * tests/check/elements/qtdemux.c:
+         tests: qtdemux: test correct pad names are created
+         Test correct pad names are created in accordance to their media type
+         in mss mode.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/628>
+
+2020-06-16 17:23:44 +0900  Hosang Lee <hosang10.lee@lge.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: create correct pad names in encrypted streams
+         Refer to "original-media-type" when setting stream's subtype
+         for encrypted streams in mss mode.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/628>
+
+2020-07-22 14:31:13 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Do caps renegotiation when it only adds fields
+         Matroskamux can accept caps renegotiation if the new caps is a
+         superset of the old one, meaning upstream added new info to
+         the caps.
+         Same logic as a5f22f03aa25b04726f78ae619f40b3b648f7d48 in qtmux.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/678>
+
+2020-07-24 14:02:26 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtpmanager/gstrtpfunnel.c:
+         rtpfunnel: protect internal srccaps with lock
+         These are modified from sink pad event handlers, so
+         could be accessed from multiple threads at the same
+         time.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/681>
+
+2020-02-23 23:44:16 +0100  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpfunnel.c:
+         rtpfunnel: copy caps before sending them in a caps-event
+         Reason being we don't want downstream to own a ref to our
+         internal caps.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/681>
+
+2020-07-27 15:41:26 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsource.c:
+         rtpmanager: fix various documentation issues
+         Improper naming of properties, improper links, misc
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/684>
+
+2020-07-24 17:13:04 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: hypothetical fix for data pointer calculation
+         mmal buffer header docs say data is valid for length bytes
+         from offset. In practice offset always seems to be 0 so
+         far though.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/682>
+
+2020-07-24 16:35:43 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: mark buffers as header and keyframe/delta-unit
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/682>
+
+2020-07-24 16:14:00 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: fix nal alignment of output buffers
+         We claim output buffers are nal-aligned, but that wasn't
+         actually true: We would push out a partial nal in case
+         the nal doesn't fit into the max encoder-selected output
+         buffer size, and then the next buffer would not start
+         with a sync marker. That's not right and makes h264parse
+         unhappy.
+         Instead accumulate buffers until we have a full frame
+         (we can't rely on the NAL_END flag, it's always set).
+         Fixes #768
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/682>
+
+2020-07-13 23:43:48 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/meson.build:
+         rpicamsrc: fix "Could not find component vc.ril.camera" on recent raspios
+         Make extra sure all the required mmal libs such as libmmal_vc_client.so
+         actually get linked and stay linked. Otherwise the above error happens
+         it seems.
+         buster (10.4) with meson 0.55 and pi ref 2020-05-27
+         pi-gen, 825107f04027269db77426046f5085475b1ea22f, stage5
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/682>
+
+2020-07-13 17:01:42 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * po/POTFILES:
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.c:
+         rpicamsrc: deviceprovider: hook up i18n properly
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/682>
+
+2020-07-13 16:55:48 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.c:
+         rpicamsrc: deviceprovider: advertise (M)JPEG as well
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/682>
+
+2020-07-13 16:50:58 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.c:
+         rpicamsrc: deviceprovider: also advertise constrained-baseline profile
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/682>
+
+2020-07-23 16:58:00 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * meson.build:
+         meson: add a plugin summary
+         This summary displays a list of plugins which
+         have been enabled.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/679>
+
+2020-07-22 09:46:47 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: enhance v4l2 control interface to support string type CID
+         add string type cid support for v4l2 implementation
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/676>
+
+2020-07-01 15:17:47 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux_types.c:
+         qtdemux: add  Dolby Vision fourcc
+         This identifiers are registered in the MPEG-RA and defined
+         to be used by the Dolby Vision AVC/HEVC streams.
+         This is a first step to present the stream to the decoder.
+         Additional box parsing of DOVIConfigurationBox is necessary
+         to complete the media presentation with proper Dolby Vision
+         enhancements.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/658>
+
+2020-05-17 15:51:09 +1000  Luke Yelavich <themuso@themuso.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: Copy GstCapsFeatures to caps for source pad
+         Allows using imagefreeze with buffers in GLMemory. The following pipeline
+         works.
+         gst-launch-1.0 filesrc location=image.jpg ! jpegdec ! glupload ! \
+         imagefreeze ! glcolorconvert ! glimagesinkelement
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/594>
+
+2020-07-20 18:20:59 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtpmanager/rtptwcc.h:
+         rtpmanager: fix "redefinition of typedef RTPTWCCManager" compiler warning
+         G_DECLARE_FINAL_TYPE includes this typedef as well.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/675>
+
+2020-07-17 16:39:25 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtpac3pay.c:
+       * gst/rtp/gstrtpamrpay.c:
+       * gst/rtp/gstrtpceltpay.c:
+       * gst/rtp/gstrtpg723pay.c:
+       * gst/rtp/gstrtpg729pay.c:
+       * gst/rtp/gstrtpgsmpay.c:
+       * gst/rtp/gstrtpgstpay.c:
+       * gst/rtp/gstrtpmp2tpay.c:
+       * gst/rtp/gstrtpmp4apay.c:
+       * gst/rtp/gstrtpmp4gpay.c:
+       * gst/rtp/gstrtpmpapay.c:
+       * gst/rtp/gstrtpsbcpay.c:
+       * gst/rtp/gstrtpspeexpay.c:
+       * gst/rtp/gstrtpvorbispay.c:
+         rtp*pay: Allocate using the base class for audio codecs
+         This is required to add RTP header extensions from the
+         meta automatically.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/674>
+
+2020-07-14 13:14:09 +0200  Ognyan Tonchev <ognyan@axis.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix segfault with illegal free
+         set_get_param_q is not a pointer so it is illegal to call g_queue_free_full().
+         Freeing the requests by popping them from the queue instead.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/669>
+
+2020-07-15 14:40:42 +0300  Raul Tambre <raul@tambre.ee>
+
+       * ext/qt/qtitem.cc:
+         QtGLVideoItem: Use QSharedPointer::data() for better compatibility
+         Older Qt versions didn't have QSharedPointer::get(), which is just a modern alias for QSharedPointer::data().
+         FAILED: ext/qt/libgstqmlgl.so.p/qtitem.cc.o
+         c++ -Iext/qt/libgstqmlgl.so.p -Iext/qt -I../ext/qt -I. -I.. -I../gst-libs -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/gstreamer-1.0 -I/usr/include/orc-0.4 -I/usr/lib/aarch64-linux-gnu/gstreamer-1.0/include -I/usr/include/aarch64-linux-gnu/qt5/QtCore -I/usr/include/aarch64-linux-gnu/qt5 -I/usr/include/aarch64-linux-gnu/qt5/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtQml -I/usr/include/aarch64-linux-gnu/qt5/QtNetwork -I/usr/include/aarch64-linux-gnu/qt5/QtQuick -I/usr/include/aarch64-linux-gnu/qt5/QtX11Extras -I/usr/include/libdrm -flto -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=c++11 -Wmissing-declarations -Wredundant-decls -Wwrite-strings -Winit-self -Wmissing-include-dirs -Wno-multichar -Wvla -Wpointer-arith -g -fdebug-prefix-map=/opt/good/src=. -Wformat -Werror=format-security -O3 -march=native -Wno-error -Wdate-time -fPIC -pthread -DHAVE_CONFIG_H -DHAVE_QT_X11 -DHAVE_QT_EGLFS -MD -MQ ext/qt/libgstqmlgl.so.p/qtitem.cc.o -MF ext/qt/libgstqmlgl.so.p/qtitem.cc.o.d -o ext/qt/libgstqmlgl.so.p/qtitem.cc.o -c ../ext/qt/qtitem.cc
+         In file included from /usr/include/gstreamer-1.0/gst/gst.h:55:0,
+         from /usr/include/gstreamer-1.0/gst/video/video.h:23,
+         from ../ext/qt/qtitem.cc:27:
+         ../ext/qt/qtitem.cc: In destructor ‘virtual QtGLVideoItem::~QtGLVideoItem()’:
+         ../ext/qt/qtitem.cc:138:86: error: ‘class QSharedPointer<QtGLVideoItemInterface>’ has no member named ‘get’
+         GST_INFO ("%p Destroying QtGLVideoItem and invalidating the proxy %p", this, proxy.get());
+         ^
+         /usr/include/gstreamer-1.0/gst/gstinfo.h:682:31: note: in definition of macro ‘GST_CAT_LEVEL_LOG’
+         (GObject *) (object), __VA_ARGS__);    \
+         ^~~~~~~~~~~
+         ../ext/qt/qtitem.cc:138:3: note: in expansion of macro ‘GST_INFO’
+         GST_INFO ("%p Destroying QtGLVideoItem and invalidating the proxy %p", this, proxy.get());
+         ^
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/673>
+
+2020-07-14 14:24:20 +0100  Justin Chadwell <justin.chadwell@pexip.com>
+
+       * gst/isomp4/qtdemux.c:
+       * tests/check/elements/qtdemux.c:
+         qtdemux: fix allocation explosion with stsd entries
+         Previously, the user input for stsd entries is trusted completely, and
+         so a maliciously crafted file could choose the length of the stsd
+         entries arbitrarily and cause qtdemux to try to allocate up to 2GB of
+         memory (half of a 32 bit max int).
+         This patch fixes this by sanity checking the stsd input against the
+         size of the entire stsd atom.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/670>
+
+2020-07-13 10:37:19 +0100  Justin Chadwell <justin.chadwell@pexip.com>
+
+       * gst/isomp4/qtdemux.c:
+       * tests/check/elements/qtdemux.c:
+         qtdemux: fix crashes when input stream contained no stsd entries
+         During trak parsing, we need to check for the existence of stsd_entries,
+         otherwise, we end up with a NULL pointer to them. It is entirely
+         possible for the stsd to exist, but for it to have no entries, which the
+         previous checks did not take into account.
+         This patch adds a simply check to ensure that all files that do not
+         contain a stsd entry are deemed corrupt, and adds a test case to prevent
+         a regression.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/670>
+
+2020-07-15 12:40:17 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: update for new pixel formats
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/753
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/754
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/672>
+
+2020-07-10 21:43:14 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/meson.build:
+         rpicamsrc: fix build with older meson versions
+         assert() used to require two arguments.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/668>
+
+2020-07-10 13:08:55 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/meson.build:
+       * tests/examples/rpicamsrc/meson.build:
+       * tests/examples/rpicamsrc/test_color_balance.c:
+       * tests/examples/rpicamsrc/test_orientation.c:
+         examples: hook up rpicamsrc examples
+         webrtc one should probably go into gst-examples.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/667>
+
+2020-07-10 00:42:13 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/rpicamsrc/test_color_balance.c:
+       * tests/examples/rpicamsrc/test_orientation.c:
+       * tests/examples/rpicamsrc/webrtc-unidirectional-h264.c:
+         examples: fix indentation of rpicamsrc examples
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/667>
+
+2020-07-09 19:08:34 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * docs/meson.build:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: flesh out docs and add to plugin docs cache
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/667>
+
+2020-07-09 18:04:10 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: enable video orientation/direction unconditionally
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/667>
+
+2020-07-09 17:37:01 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstrpicam-enums-template.c:
+       * sys/rpicamsrc/gstrpicam-enums-template.h:
+         rpicamsrc: remove mkenums template files which are no longer needed
+         They were still being used by the autotools build, but that's gone.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/667>
+
+2020-07-09 17:35:15 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/RaspiCLI.c:
+       * sys/rpicamsrc/RaspiCamControl.c:
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiPreview.c:
+       * sys/rpicamsrc/RaspiStill.c:
+       * sys/rpicamsrc/RaspiStillYUV.c:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.c:
+         rpicamsrc: fix indentation
+         Not touching the Raspi* files.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/667>
+
+2020-07-09 17:31:49 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/meson.build:
+         rpicamsrc: fix and silence some compiler warnings
+         Some are in system headers, and in Raspi files we want
+         to keep modifications to a minimum.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/667>
+
+2020-07-09 16:07:30 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson_options.txt:
+       * sys/meson.build:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.c:
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.h:
+       * sys/rpicamsrc/meson.build:
+         rpicamsrc: hook up to build
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/667>
+
+2020-07-09 11:46:30 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+         Merge branch 'plugin-move-rpicamsrc'
+         Move rpicamsrc from https://github.com/thaytan/gst-rpicamsrc/
+         It's a useful little element and works well, so might as well
+         make sure it's widely available so people can stop piping
+         raspivid output into fdsrc.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/667>
+
+2020-05-02 19:27:20 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstrpicam-enums-template.c:
+       * sys/rpicamsrc/gstrpicam-enums-template.h:
+         rpicamsrc: sync autotools with glib-mkenum usage in meson build
+
+2020-05-02 18:28:10 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/meson.build:
+         rpicamsrc: meson: use gnome.glib_mkenums_simple() and fix build as Meson subproject
+         While at it also fix up the type defines, e.g.
+         GST_RPI_CAM_TYPE_RPI_CAM_SRC_EXPOSURE_MODE -> GST_RPI_CAM_SRC_TYPE_EXPOSURE_MODE
+
+2020-05-03 11:09:47 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstplugin.map:
+       * sys/rpicamsrc/meson.build:
+         rpicamsrc: meson: drop map file and fix plugin symbol export with newer gstreamer versions
+         Use -fvisibility instead of a map file for symbol export, so that
+         the right symbols get exported with newer gstreamer versions. Older
+         GStreamer versions also still work of course.
+         Fixes blacklisting/plugin-loading issues with GStreamer >= 1.14
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/984,
+         closes https://github.com/thaytan/gst-rpicamsrc/issues/94
+         and https://github.com/thaytan/gst-rpicamsrc/issues/67
+
+2018-07-16 19:49:21 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Attempt to workaround MMAL timeout bug
+         mmal_queue_timedwait() might spuriously return immediately
+         if called at exactly the wrong instant due to an internal
+         off-by-one bug. Attempt to work around that and just retry.
+
+2018-07-16 19:30:26 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Improve timeout error
+         Propagate timeout errors so they're not reported
+         generically
+
+2018-06-21 22:50:28 +1000  Jan Schmidt <jan@centricular.com>
+
+       * tests/examples/rpicamsrc/webrtc-unidirectional-h264.c:
+         rpicamsrc: webrtc example: Add a STUN server to the configuration
+         To let the webrtc example work through NAT firewalls
+
+2018-06-21 22:44:25 +1000  Jan Schmidt <jan@centricular.com>
+
+       * tests/examples/rpicamsrc/webrtc-unidirectional-h264.c:
+         rpicamsrc: webrtc example: Modify HTML to support other ports than 57778
+
+2018-06-21 21:45:32 +1000  Jan Schmidt <jan@centricular.com>
+
+       * tests/examples/rpicamsrc/webrtc-unidirectional-h264.c:
+         rpicamsrc: webrtc example: Remove external fmtp insertion
+         GStreamer 1.14.2 should contain the backport of gst-plugins-bad
+         commit 5c450c5 adding FEC and RTX support, and incidentally
+         the fmtp field in the SDP
+
+2018-06-21 20:33:03 +1000  Jan Schmidt <jan@centricular.com>
+
+       * tests/examples/rpicamsrc/webrtc-unidirectional-h264.c:
+         rpicamsrc: webrtc example: Set the locale
+         Make the date format in the overlay respect the current
+         locale
+
+2018-06-20 15:36:42 +0000  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Don't destroy the camera component on startup error
+         Just disable the camera component when it fails to start. The
+         most common reason is that the camera device is already in use,
+         and if we just disable the mmal component correct cleanup
+         will happen later
+
+2018-05-12 21:13:52 +0000  Jan Schmidt <jan@centricular.com>
+
+       * tests/examples/rpicamsrc/webrtc-unidirectional-h264.c:
+         rpicamsrc: Add webrtc streaming example
+         Add an example for testing webrtc streaming from the rpi
+         camera, based on the code from
+         https://bugzilla.gnome.org/show_bug.cgi?id=795404
+         Requires GStreamer 1.14.1 or git master
+
+2018-05-12 19:57:43 +0000  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Expose constrained-baseline profile
+         constrained-baseline is a useful profile for streaming to iOS
+         devices, and seems to work in the firmware, so let's publish it
+
+2018-03-28 22:00:10 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.c:
+         rpicamsrc: Add define and increase reported maximum FPS from 90 to 1000
+
+2017-11-14 15:01:21 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Expand frame timeout from 100ms to 500ms
+         rpicamsrc on a normal rpi camera doesn't start up fast enough,
+         and always fails the new 100ms timeout. A better solution
+         might be to have a longer timeout for the first frame, but
+         shorter once frames are running - but this quick fix will at
+         least make rpicamsrc work again.
+
+2017-11-08 09:14:35 +0000  Georgii Staroselskii <georgii.staroselskii@emlid.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: RaspiCapture: use mmal_queue_timedwait() for buffer queueing
+         If an external camera was disconnected, there were no feedback in an
+         application. It seems reasonable to wait on mmal_queue no longer than
+         100ms. If it's stuck we just return a FLOW_ERROR and let the application
+         decide what to do later.
+
+2017-11-07 15:14:06 +0000  Georgii Staroselskii <georgii.staroselskii@emlid.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: RaspiCapture: handle MMAL_EVENT_ERROR
+
+2017-07-01 00:51:13 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Implement use-stc property to disable STC timestamps
+         If use-stc=false, then rpicamsrc won't apply
+         the camera timestamping to outgoing buffers, instead
+         relying on real-time timestamping by the
+         GStreamer clock. It means slightly less accuracy
+         and more jitter in timestamps, but might help on some
+         CSI inputs with broken timestamping.
+
+2017-05-19 20:55:35 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Fix the descriptions of text annotation colour properties
+         The text annotation colour properties take an integer value
+         corresponding to a VUY colour, not a text string like
+         the copy-pasted description from raspivid suggests.
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/59
+
+2017-01-27 12:58:29 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Implement dynamic bitrate update
+         Use mmal_port_set_parameter_uint32 to update the encoder
+         bitrate.
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/60
+
+2016-10-08 11:12:09 +0000  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: Set outgoing buffer durations based on negotiated framerate.
+         make sure outgoing buffers have at least some duration set,
+         otherwise it leads to strange situations, like qtmux writing
+         out a file that doesn't include the final frame inside the
+         playable segment, because no-duration = 0 duration there.
+
+2016-10-08 11:10:30 +0000  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Destroy mmal pool on shutdown always.
+         Avoid hangs on the next run because we didn't clean up the mmal pool
+         last time we shutdown.
+
+2016-10-03 15:29:49 +0000  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Switch back to MJPEG codec for image/jpeg
+         The JPEG codec hangs, not sure why yet. The MJPEG
+         codec doesn't provide a quality setting, and sometimes
+         freezes on shutdown, but otherwise seems more
+         reliable
+
+2016-10-03 14:00:54 +0000  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Don't try and set H264 params with JPEG codec
+
+2016-10-03 02:34:50 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: First attempt at implementing MJPEG and raw video support
+
+2016-09-19 12:06:05 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstplugin.map:
+       * sys/rpicamsrc/meson.build:
+         rpicamsrc: Add experimental build using the Meson build system
+         Builds in about 10 seconds vs. 77 seconds with autotools.
+
+2016-08-30 17:00:41 +0200  Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: Implement GstVideoDirection interface
+         Instead of implementing a custom property, we implement that interface.
+
+2016-07-21 02:29:57 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: MMAL gives buffers with nal alignment, not AU
+         Fix the output caps, our buffers are not AU aligned, since
+         the SPS / PPS are given in separate packets at the start.
+
+2016-07-08 15:32:21 +0200  Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: Create orientation property
+         Its behavior and choices are analog to the ones present in [gl]videoflip
+         for the method property.
+
+2016-01-03 08:26:23 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: basesrc event handlers should not unref
+         Don't unref the passed event when handling events via
+         the GstBaseSrc src pad event handler - basesrc does
+         the unref. That breaks handling of upstream
+         force-key-unit events by unreffing twice.
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/43
+
+2015-12-17 14:16:10 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Add property getters for preview window position.
+         Add the lines in get_property() for the preview-x/y/w/h properties
+         so the values can be retrieved without causing critical warnings.
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/42
+
+2015-12-02 01:20:10 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Add preview-x/y/w/h properties
+         Expose properties for setting the position of the preview
+         window on the screen
+
+2015-10-21 21:11:36 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Add properties for configuring annotation text size and colour.
+         Map the raspivid setting for annotation text size and colours
+         to properties.
+
+2015-10-08 10:32:32 +0200  ibauer <iljabauer@gmail.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Changed awb-gain-blue use the correct enum PROP_AWB_GAIN_BLUE and not PROP_AWB_GAIN_RED
+
+2015-07-19 01:48:35 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Fix buffer PTS calculation
+         Timestamps from MMAL are in microseconds,
+         so make sure to convert to nanoseconds before
+         using them to adjust the GStreamer buffer time
+
+2015-05-11 11:16:52 +0200  Philippe Normand <philn@igalia.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * tests/examples/rpicamsrc/test_orientation.c:
+         rpicamsrc: Basic orientation interface support
+         The (h,v)flip attributes are now supported through this interface.
+         It should also be possible to support (h,v)center attributes using the
+         ROI properties.
+
+2015-05-11 21:29:58 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Describe awb-mode=off in lowercase
+         Change the descriptions for the awb-gain-blue and awb-gain-red
+         properties to say 'awb-mode=off' instead of 'awb-mode=OFF'
+         See https://github.com/thaytan/gst-rpicamsrc/issues/26
+
+2015-05-11 10:17:18 +0200  Philippe Normand <philn@igalia.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: colorbalance: protect with config_lock mutex
+
+2015-05-05 19:03:43 +0200  Philippe Normand <philn@igalia.com>
+
+       * tests/examples/rpicamsrc/test_color_balance.c:
+         rpicamsrc: add test-color-balance example
+         This small test will display a live video preview of the rpicam with
+         the balance controls being updated once a second. The controls to
+         update can be disabled in the source by setting the CONTROL_* macros
+         values to 0.
+
+2015-04-29 16:36:18 +0200  Philippe Normand <philn@igalia.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: Implement GstColorBalance interface
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/24
+
+2015-04-27 22:56:32 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Fix initial config setting.
+         Make sure to update the captsure config before starting
+         capture. Since the capture component now keeps a local
+         copy of the config, it's not updated automatically.
+
+2015-04-27 04:05:42 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Disable bitrate, quantisation and intra-refresh dynamic changes
+         The firmware rejects dynamic changes of those encoder params.
+
+2015-04-27 04:05:04 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.h:
+         rpicamsrc: Send vcos_log_warn via GStreamer debug messages
+
+2015-04-27 02:43:14 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * tests/examples/rpicamsrc/dynamicprops.py:
+         rpicamsrc: Add dynamic properties example
+         Python example of adjusting saturation on the fly
+
+2015-04-27 00:54:54 +1000  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: Update properties dynamically where possible
+         Update camera and encoder properties at runtime
+         where possible
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/19
+         and https://github.com/thaytan/gst-rpicamsrc/issues/23
+
+2015-04-27 00:40:23 +1000  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/RaspiPreview.c:
+       * sys/rpicamsrc/RaspiPreview.h:
+         rpicamsrc: split preview config and state
+
+2015-04-21 02:45:59 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Clear intra-refresh MMAL param struct.
+         Use memset on the stack allocated MMAL_PARAMETER_VIDEO_INTRA_REFRESH_T
+         struct. Apparently mmal_port_parameter_get() doesn't retrieve all
+         parameters, causing random failures when we set the intra-refresh
+         param on the encoder.
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/22 for me.
+
+2015-04-21 01:17:55 +1000  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/RaspiCamControl.c:
+       * sys/rpicamsrc/RaspiCamControl.h:
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Merge changes from userland repo
+         Current to b69f807ce59189457662c2144a8e7e12dc776988
+         No integration of stereoscopic support as yet
+
+2015-04-21 00:02:27 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicam_types.h:
+         rpicamsrc: Map intra-refresh cyclic-rows to the correct MMAL param.
+
+2015-03-10 00:22:40 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Use MMAL PTS and STC to calculate GStreamer timestamps
+         Don't apply timestamps based on output time from the encoder,
+         but use the MMAL STC and capture PTS to generate a GStreamer
+         timestamp that more accurately resembles the input (and would
+         preserve reordering should the encoder ever add B-frames).
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/16
+
+2015-03-07 02:11:25 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+         rpicamsrc: Defer encoder creation until after caps are negotiated
+         This ensures the encoder is created with the profile
+         negotiated with downstream
+
+2015-03-07 01:17:30 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Read and set H.264 profile from negotiated caps
+
+2015-03-06 03:43:07 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicam_types.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Add intra-refresh-type property, and set default keyframe spacing to -1 (auto)
+         This plus other recent commits mostly fix
+         bug https://github.com/thaytan/gst-rpicamsrc/issues/16
+
+2015-03-06 03:05:24 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicam_types.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: Add annotation-mode and annotation-text properties
+
+2015-03-06 02:42:00 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: implement sensor-mode property
+
+2015-03-06 01:27:44 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+         rpicamsrc: More conversion to GStreamer logging
+
+2015-03-06 01:15:48 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicam_types.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Implement drc property
+
+2015-03-06 01:09:16 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: add awb-gain-red and awb-gain-blue properties
+
+2015-03-06 00:52:37 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Add camera-number property
+
+2015-03-06 00:45:05 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: add inline-headers and shutter-speed properties
+
+2015-03-06 00:21:31 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Add quantisation-parameter property, support variable bitrate
+         Allow birate=0 and implement the quantisation-parameter property
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/21
+
+2015-03-05 17:01:33 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/rpicamsrc/RaspiCLI.c:
+       * sys/rpicamsrc/RaspiCLI.h:
+       * sys/rpicamsrc/RaspiCamControl.c:
+       * sys/rpicamsrc/RaspiCamControl.h:
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/RaspiPreview.c:
+       * sys/rpicamsrc/RaspiPreview.h:
+         rpicamsrc: Incorporate raspivid changes from upstream
+         Merge all changes for new features from upstream
+         raspberrypi userland, up to commit 0de0b2
+
+2015-01-05 02:21:16 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Add keyframe-interval property to the element
+
+2014-10-30 00:45:18 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/RaspiCamControl.c:
+       * sys/rpicamsrc/RaspiCamControl.h:
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.c:
+         rpicamsrc: deviceprovider: check if camera is detected and supported
+
+2014-10-29 00:43:51 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.c:
+       * sys/rpicamsrc/gstrpicamsrcdeviceprovider.h:
+         rpicamsrc: Add GstDeviceProvider for rpi camera module
+
+2014-09-27 14:31:10 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: avoid single-element lists in template caps
+
+2014-10-09 20:38:41 +0000  Vivia Nikolaidou <n.vivia@gmail.com>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Add force-key-unit event support
+
+2014-03-13 00:16:18 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCamControl.c:
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/RaspiPreview.c:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Move all debug output to go via GStreamer logs
+         Fixes https://github.com/thaytan/gst-rpicamsrc/issues/9
+
+2013-10-19 18:52:25 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Update maximum framerate to 90 fps
+
+2013-10-14 02:39:00 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCamControl.c:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Enable image effects
+
+2013-10-13 18:01:00 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Re-flow element source code with gst-indent
+
+2013-10-13 17:46:07 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicam-enums-template.c:
+       * sys/rpicamsrc/gstrpicam-enums-template.h:
+       * sys/rpicamsrc/gstrpicam_types.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Implement a bunch of the raspivid command-line params
+         Add properties for controlling various parts of the capture
+
+2013-10-13 01:29:08 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: Tell basesrc to timestamp buffers for us, for now.
+
+2013-10-13 01:20:51 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCamControl.c:
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: Initial caps nego and properties.
+         Support caps negotiation for H.264 frame size and framerate.
+         Add bitrate, saturation, brightness, contrast, sharpness properties.
+
+2013-10-12 19:23:03 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+         rpicamsrc: First version which generates buffers on the src pad
+         Fixed to 1920x1080 h264 regardless of caps.
+
+2013-10-12 12:42:07 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCamControl.c:
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/RaspiStill.c:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: Checkpoint. Version which writes directly to test.out
+         Switch to plain basesrc for parent class
+
+2013-10-11 19:17:05 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/RaspiCamControl.c:
+       * sys/rpicamsrc/RaspiCamControl.h:
+       * sys/rpicamsrc/RaspiCapture.c:
+       * sys/rpicamsrc/RaspiCapture.h:
+       * sys/rpicamsrc/RaspiPreview.c:
+       * sys/rpicamsrc/RaspiPreview.h:
+       * sys/rpicamsrc/RaspiStill.c:
+       * sys/rpicamsrc/RaspiStillYUV.c:
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: checkpoint
+
+2013-10-10 23:47:38 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * sys/rpicamsrc/gstrpicamsrc.c:
+       * sys/rpicamsrc/gstrpicamsrc.h:
+         rpicamsrc: Initial commit
+         Simple modified gst-template to use BaseCameraSrc
+         Incorporate Broadcom mmal headers
+
+2018-04-19 13:57:26 +0200  Michael Olbrich <m.olbrich@pengutronix.de>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: don't fail when seeking past the end of the content
+         Range errors are already turned into EOS when the size is not known.
+         Do the same thing if the request as outside the known content size.
+         This can be triggered by seeking in a queue2:
+         - Ensure that the range containing the end of the file is available.
+         - Seek into this range from a different range.
+         - queue2 creates a seek event with start=<file-size>
+         - this results in a "Requested Range Not Satisfiable" error
+         Fixes #452
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/385>
+
+2019-11-10 21:19:09 +0100  Michael Olbrich <m.olbrich@pengutronix.de>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: don't update the size on error
+         Any data corresponding length in the message is not part of the requested
+         file.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/385>
+
+2020-06-18 19:12:46 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtglrenderer.cc:
+         qt/gloverlay: fix using OpenGL after destroying Qml
+         Qml somewhat unhelpfully seems to uncurrent our OpenGL context on its
+         destruction.  Work around that by uncurrenting and recurrenting again.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/632>
+
+2020-07-08 17:02:34 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+       * scripts/extract-release-date-from-doap-file.py:
+         meson: set release date from .doap file for releases
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/664>
+
+2020-07-07 12:36:01 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Don't lock object lock twice in prefill mode
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/762
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/663>
+
+2020-07-04 01:02:02 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/audiofx/meson.build:
+       * gst/deinterlace/meson.build:
+       * gst/videobox/meson.build:
+       * gst/videomixer/meson.build:
+       * meson.build:
+       * scripts/update-orc-dist-files.py:
+         meson: add update-orc-dist target
+         Add target to update backup orc -dist.[ch] files.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/662>
+
+2020-05-26 10:27:35 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2: Do not renegotiate if only framerate changed
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/602>
+
+2020-07-02 09:15:08 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/flac/gstflacenc.c:
+         flacenc: Pass audio info from set_format() to query_total_samples() explicitly
+         This fixes writing of the seek table header.
+         gst_audio_encoder_get_audio_info() will still return old/unset audio
+         info until set_format() has actually returned, which then results in
+         query_total_samples() to always return 0.
+         Thanks to Jacob Kauffmann for debugging this and finding the main cause.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/756
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/661>
+
+2020-07-03 02:03:33 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * meson.build:
+         Back to development
+
+=== release 1.17.2 ===
+
+2020-07-03 00:27:47 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * docs/gst_plugins_cache.json:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.17.2
+
+2020-07-02 07:53:14 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/deinterlace/meson.build:
+       * meson.build:
+         deinterlace: Disable nasm support on x32
+         The assembly assumes pointers are 64-bit, so just disable it.
+         Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/757
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/660>
+
+2020-07-01 18:19:09 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/deinterlace/meson.build:
+         deinterlace: Fix build on x32
+         Need to pass `-f elfx32` to nasm in that case.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/757
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/657>
+
+2020-07-01 16:17:19 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroska-mux: Wait for caps on sparse streams
+         Don't set sparse streams to non-waiting at the collectpads
+         level until after capa arrive, as we need caps on all
+         pads before the file headers get written, or else the
+         subtitle track will be silently absent in the final file.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/724
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/656>
+
+2020-07-01 16:13:27 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroska-mux: Warn on late caps arrival
+         As well as warning when caps change after the headers
+         were already written, make sure to warn if the *first* caos
+         arrive late too.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/656>
+
+2020-06-30 18:37:06 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: Return TRUE from the LATENCY query handling
+         We always answer it successfully no matter what.
+         The default return value in the function is FALSE even if the code below
+         sets it again to FALSE.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/654>
+
+2020-06-29 11:53:39 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/check/elements/imagefreeze.c:
+         imagefreeze: Add test for new live mode
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/653>
+
+2020-06-29 10:10:09 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/imagefreeze/gstimagefreeze.c:
+       * gst/imagefreeze/gstimagefreeze.h:
+         imagefreeze: Add a live mode
+         Previously imagefreeze would always operate as non-live element and
+         output frames as fast as possible according to the configured segment
+         (via SEEK events) and the negotiated framerate from start to stop or the
+         other way around.
+         With the new live mode (enabled via the is-live property) it would only
+         output frames in PLAYING. Frames would be output according to the
+         negotiated framerate unless it would be too late, in which case it would
+         jump ahead and skip over the requirement amount of frames.
+         This makes it possible to actually use imagefreeze in live pipelines
+         without having to manually ensure somehow that it would start outputting
+         at the current running time and without still risking to fall behind
+         without recovery.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/653>
+
+2020-06-28 22:26:23 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: Correctly answer the LATENCY query
+         We never run as a live element, even if upstream is live, and never
+         output any buffers with latency but immediately generate buffers as
+         fast as we can according to the negotiated framerate.
+         Passing the query upstream would proxy whatever mode of operation
+         upstream has, which has nothing to do with how we produce buffers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/653>
+
+2020-06-25 14:15:51 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2: Fix threading issues in orphaning mechanism
+         The pool orphaning function was colling internal _stop() virtual function
+         implementation. This is not thread safe, as a private lock inside the buffer
+         pool is supposed to be held. Fix this by keeping delayed _stop() and orphaning
+         the GstV4L2Allocator instead (REQBUFS(0)).
+         Then, protect the orphaned boolean with the object lock for the case a buffer
+         is being released after we have orphaned the buffer. That would otherwise
+         cause a QBUF to happen while the queue is no longer owned by the buffer pool.
+         This boolean is otherwise used and set from the streaming lock, or after
+         threads have been stopped (final cleanup).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/648>
+
+2020-06-26 16:43:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpoool: Fix requeueue after seek when importing
+         When the buffer pool is importing buffer, it will requeue num_allocated on
+         streamon. As this value was not set for DMABuf import and USERPTR, no buffer
+         was queued  back.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/651>
+
+2020-06-26 16:39:42 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         Revert "v4l2bufferpool: request the maximum number of buffers for USERPTR"
+         This reverts commit 6bf9f4bd77a4c6cce8786893feea7d601a6e6030.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/651>
+
+2020-06-26 16:37:06 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         Revert "v4l2bufferpool: request the maximum number of buffers for DMABUF"
+         This reverts commit 94e323c10f2d7fa85bf63f357d203ca5305800c6.
+         Fixes #754
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/651>
+
+2020-06-26 14:48:14 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Only resurrect the right amount of buffers
+         On streamon, we need to resurrect (queue back) some buffers, as during
+         flushign seek we'd endup with an empty queued. We initially started with
+         resurrecting as many as we could without blocking, but that miss-behaved with
+         dynamic CREATE_BUFS, causing the pool to grow dramatically. This was limited
+         by the number of allocated buffers, but this still tried to resurrect too many
+         buffers for the first run, as activating the pool will queued buffers.
+         In this patch, we calculte the missing detal in the queue and only try and
+         resurrect that amount of buffers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/651>
+
+2020-06-26 13:11:04 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Only offer inactive pools and if needed
+         Avoid offering a pool if it's not needed or if it's still active.
+         This works around the fact the we only have one pool in V4L2.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/651>
+
+2020-06-24 21:58:07 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+       * ext/qt/meson.build:
+         qt: Rework how we find the Qt QPA header
+         Instead of querying the Qt include path from the dependency or from
+         qmake, rely on the qt5qml_dep to set the include path to QtGui
+         correctly, and look for the header inside the private includedir.
+         Then we can use that path to include the header directly.
+         Reported in https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/780#note_548092
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/640>
+
+2020-06-24 22:04:55 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+         qt: Only check for moc-qt5/moc in PATH if not cross-compiling
+         This is an extra check that's only needed for working around Linux
+         distribution packaging. `moc` is not required in the cross file.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/640>
+
+2020-06-26 13:10:00 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+         v4l2allocator: Don't do REQBUFS(0) on inactive allocator
+         If the allocator is no longer active, it means the memory has already
+         been freed, calling REQBUF(0) would make no sense.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/649>
+
+2020-06-26 11:05:25 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Avoid set_flushing warning
+         The gst_buffer_pool_set_flushing() warns when that function is called
+         on an inactive pool. Avoid the warning by checking the state, this is
+         similar to what we do in gst_v4l2_object_unlock().
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/649>
+
+2020-06-26 09:53:13 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+         v4l2allocator: Fix data offset / bytesused size validation
+         The check was too strict causing spurious warning. Now check for <= so that 0
+         sized buffer do not cause a warning.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/649>
+
+2020-06-25 16:46:23 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Fix negotiation caps leak
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/649>
+
+2020-06-26 19:28:31 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: flesh out docs for format-location* signals
+         Make explicit that the returned strings need to be g_free()-able.
+         Fixes #753
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/652>
+
+2020-06-25 16:47:42 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Skip negotiation of profiles/level if no codec
+         The codec structure is optional and not used for fwht test codec. This
+         was leading to a crash dereferencing NULL pointer.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/650>
+
+2020-05-03 13:17:46 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/rtpstats.c:
+         rtpstats: guard against division by zero
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/646>
+
+2020-06-17 23:23:58 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+         rtptwcc: fix pruning of ack'ed twcc-packets
+         Fixes #750
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/645>
+
+2020-06-24 21:15:47 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * tests/examples/qt/qmloverlay/meson.build:
+       * tests/examples/qt/qmlsink-dynamically-added/meson.build:
+       * tests/examples/qt/qmlsink/meson.build:
+       * tests/examples/qt/qmlsrc/meson.build:
+         meson: Build Qt5 tests with -std=c++11
+         We already do this for the plugin.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/780#note_548179
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/642>
+
+2020-06-25 12:58:48 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Add new properties for setting muxer/sink presets
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/644>
+
+2020-06-24 17:04:51 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/autodetect/gstautodetect.c:
+         autodetect: mark filter-caps property as DOC_SHOW_DEFAULT
+         When generating the cache we inspect the base class through
+         an instance of one of its subclasses. We don't want potential
+         assignments in subclasses initialization to leak into the
+         base class documentation
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/641>
+
+2020-06-24 16:45:27 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/vpx/gstvpxenc.c:
+         vpxenc: mark all properties as GST_DOC_SHOW_DEFAULT
+         When generating the cache we inspect the base class through
+         an instance of one of its subclasses. We don't want potential
+         assignments in subclasses initialization to leak into the
+         base class documentation
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/641>
+
+2020-06-23 19:04:03 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/equalizer/gstiirequalizer.c:
+         docs: mark GstIirEqualizer as plugin API
+
+2020-06-23 12:47:44 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * ext/vpx/gstvp8enc.c:
+       * ext/vpx/gstvp9enc.c:
+         vpx: Fix links to baseclass properties
+
+2020-06-23 02:50:35 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * sys/v4l2/tuner.c:
+       * sys/v4l2/tunerchannel.c:
+         docs: mark more types as plugin API
+
+2020-06-23 00:02:34 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         plugins_cache: add base classes
+
+2020-06-23 00:02:21 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/meson.build:
+         meson: mark plugins cache target as always stale
+
+2020-06-21 01:34:43 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+       * ext/vpx/gstvpxdec.c:
+       * ext/vpx/gstvpxenc.c:
+       * gst/audiofx/audiofxbasefirfilter.c:
+       * gst/audiofx/audiofxbaseiirfilter.c:
+       * gst/autodetect/gstautodetect.c:
+         docs: mark more types as plugin API
+
+2020-06-19 22:54:38 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+         doc: Stop documenting properties from parents
+
+2020-06-21 20:11:06 +0800  He Junyan <junyan.he@hotmail.com>
+
+       * gst/deinterlace/yadif.c:
+         deinterlace: Add the missing ORC_RESTRICT define.
+         ORC_RESTRICT may not be defined in yadif.c and cause build error.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/637>
+
+2019-06-06 09:41:13 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtpsession: make tests more stable
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/410>
+
+2020-06-20 20:42:37 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: update plugin cache for new version
+         Some default values include our version string, like
+         user agent strings.
+
+2020-06-20 00:28:11 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         Back to development
+
+=== release 1.17.1 ===
+
+2020-06-19 19:18:59 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * docs/gst_plugins_cache.json:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.17.1
+
+2020-06-19 20:24:12 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/deinterlace/meson.build:
+         meson: deinterlace: Check host cpu type for asm build
+         Add host cpu type check as we would enable asm only for x86_64
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/636>
+
+2020-06-19 19:54:08 +0900  Seungha Yang <seungha@centricular.com>
+
+       * meson.build:
+         meson: Fix build error with MSVC caused by ARCH_X86_64 define
+         ARCH_X86_64 define will enable GCC specific code path in dv_types.h
+         while building dv plugin.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/636>
+
+2020-06-19 10:32:45 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+       * ext/shout2/gstshout2.c:
+         shout2: advertise documentation caps properly
+         shout2send caps depend on what the libshout2
+         version in question supports, but the
+         documentation caps should always be the same.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/635>
+
+2019-05-26 20:20:03 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/meson.build:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+       * gst/isomp4/qtdemux_tags.c:
+       * gst/isomp4/qtdemux_tags.h:
+         qtdemux: Split tag reading functions out
+         Move some code out of the enormous qtdemux.c into a separate
+         qtdemux_tags helper, and make some structs available via qtdemux.h
+         to accommodate that.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/634>
+
+2019-05-26 05:05:06 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/meson.build:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux_tree.c:
+       * gst/isomp4/qtdemux_tree.h:
+         qtdemux: Move some tree parsing files out to a separate file.
+         Reduce a tiny bit of the bulk of qtdemux.c by moving some
+         agnostic helper functions out.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/634>
+
+2019-05-26 01:24:54 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Factor out svmi parsing. Fix bounds checking.
+         Move the SVMI stereoscopic atom parsing out to a helper
+         function to shrink qtdemux_parse_trak a bit.
+         Add a bounds check that the received atom is large enough
+         before parsing it.
+         Add a note to the atom parser that svmi comes from the
+         MPEG-A spec 23000-11.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/634>
+
+2020-06-15 13:05:49 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * ext/pulse/pulsedeviceprovider.c:
+         pulse: fix discovery of newly added devices
+         Fix regression introduced in 7bc5e28d85992b03e5852879b8d4d96043496caf
+         preventing the device provider to send the device-added message for new
+         devices.
+         By early returning the patch was discarding add/remove events.
+         Fix #735
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/626>
+
+2020-06-18 10:47:28 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/qt/qmlsink-dynamically-added/meson.build:
+       * tests/examples/qt/qmlsink-dynamically-added/play.pro:
+       * tests/examples/qt/qmlsink-dynamically-added/qmlsink-dyn-added.qrc:
+         examples: qmlsink: rename qrc file to avoid naming conflicts with older meson versions
+         Would get "Tried to create target "qt5-qmlsink_qrc", but a
+         target of that name already exists." with older meson versions.
+         Work around that by renaming the qrc file.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/633>
+
+2020-06-17 16:42:16 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * meson.build:
+         meson: Check the nasm version with run_command
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/751
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/631>
+
+2020-06-16 19:34:01 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Don't return TRUE for unhandled query
+         Expected return value for unhandled query is FALSE
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/629>
+
+2020-06-16 11:52:38 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/deinterlace/meson.build:
+       * gst/deinterlace/x86/x86inc.asm:
+       * gst/deinterlace/x86/yadif.asm:
+       * gst/deinterlace/yadif.c:
+       * gst/deinterlace/yadif.h:
+       * meson.build:
+       * meson_options.txt:
+         deinterlace: Add yadif ASM optimisations
+         Measured to be about 3.4x faster than C
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/621>
+
+2020-06-12 13:21:02 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/deinterlace/yadif.c:
+         deinterlace: Fix invalid read in yadif
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/621>
+
+2020-06-12 12:18:11 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtglrenderer.cc:
+         qt/gloverlay: reset OpenGL state after Qt drawing
+         Reset to the original OpenGL state as required by the GStreamer OpenGL
+         API contract.  Fixes output with a glimagesink element downstream.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/623>
+
+2020-06-12 12:16:49 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtglrenderer.cc:
+         qt/gloverlay: reset current OpenGL context after Qt
+         Qt may replace the drawable with its own which breaks output if Qt is
+         not displaying the resulting video as used with e.g. glimagesink.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/623>
+
+2020-06-12 09:52:56 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Change a GST_ERROR_OBJECT() back to GST_DEBUG_OBJECT()
+         It was accidentally changed in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/436
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/624>
+
+2020-06-11 20:39:33 +0300  Jordan Petridis <jpetridis@gnome.org>
+
+       * gst/isomp4/gstqtmux.c:
+       * sys/v4l2/gstv4l2videodec.c:
+         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 the 2 elements
+         here 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-good/-/merge_requests/622>
+
+2020-06-10 13:56:22 +0000  Sebastian Dröge <slomo@coaxion.net>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         Revert "rtpjitterbuffer: Avoid deadlock on flush"
+         This reverts commit 54810bf44f27d9c180730f58f16f6e172c7b0bc8
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/620>
+
+2020-06-09 15:12:13 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: Update plugins cache
+
+2020-06-09 13:09:20 -0700  U. Artie Eoff <ullysses.a.eoff@intel.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: g_queue_clear_full introduced in glib 2.60
+         Define g_queue_clear_full if glib < 2.60.
+         Fixes #747
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/619>
+
+2020-06-08 11:33:16 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: Make internal-ssrc as show default for doc
+
+2020-06-08 10:56:02 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: Update plugins cache
+
+2020-06-09 15:21:25 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/meson.build:
+         tests: don't pull in all -bad plugin, only allow the one we need
+         Set up our plugin include list for tests in such a way that
+         we don't pull in *all* plugins from -bad but only the one
+         used in the splitmuxsink unit test, i.e. the timecode plugin,
+         so we don't accidentally use other encoders/decoders such as
+         nvenc/dec for example.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/617>
+
+2020-06-08 17:41:13 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtptimerqueue.c:
+         rtptimerqueue: Fix leak on timer collision
+         While the caller should make sure this does not happen, make sure timer
+         collision are not silently ignored and leaked.
+         Fixes #726
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/616>
+
+2020-03-27 15:48:32 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Keep JBUF lock while processing timers
+         Until now, do_expected_timeout() was shortly dropping the JBUF_LOCK in order
+         to push RTX event event without causing deadlock. As a side effect, some
+         CPU hung would happen as the timerqueue would get filled while looping over
+         the due timers. To mitigate this, we were processing the lost timer first and
+         placing into a queue the remainign to be processed later.
+         In the gap caused by an unlock, we could endup receiving one of the seqnum
+         present in the pending timers. In that case, the timer would not be found and
+         a new one was created. When we then update the expected timer, the seqnum
+         would already exist and the updated timer would be lost.
+         In this patch we remove the unlock from do_expected_timeout() and place all
+         pending RTX event into a queue (instead of pending timer). Then, as soon as
+         we have selected a timer to wait (or if there is no timer to wait for) we send
+         all the upstream RTX events. As we no longer unlock, we no longer need to pop
+         more then one timer from the queue, and we do so with the lock held, which
+         blocks any new colliding timers from being created.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/616>
+
+2020-06-08 09:33:10 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * tests/check/elements/vp9enc.c:
+         tests: vp9enc: enforce I420 format
+         Test was not enforcing a video format on videotestsrc. I420 was picked
+         as it was the first format in GST_VIDEO_FORMATS_ALL which will no longer
+         be true (gst-plugins-base!689).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/615>
+
+2020-05-30 08:55:19 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Avoid deadlock on flush
+         When a GST_EVENT_FLUSH_START reaches the jitterbuffer, there is a chance that
+         our task is currently blocking waiting for a timer.
+         There was two problems:
+         * That wait wasn't checking for flushing situations
+         * The flushing handling wasn't waking up that conditional (to check whether it
+         should abort)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/608>
+
+2020-06-06 00:42:25 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * ext/aalib/gstaasink.c:
+       * ext/aalib/gstaatv.c:
+       * ext/dv/gstdvdec.c:
+       * ext/flac/gstflacenc.c:
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
+       * ext/jack/gstjackaudiosink.c:
+       * ext/jpeg/gstjpegdec.c:
+       * ext/lame/gstlamemp3enc.c:
+       * ext/libcaca/gstcacasink.c:
+       * ext/libcaca/gstcacatv.c:
+       * ext/shout2/gstshout2.c:
+       * ext/speex/gstspeexenc.c:
+       * ext/twolame/gsttwolamemp2enc.c:
+       * ext/vpx/gstvpxdec.c:
+       * ext/vpx/gstvpxenc.c:
+       * ext/wavpack/gstwavpackenc.c:
+       * gst/alpha/gstalpha.c:
+       * gst/audiofx/audioamplify.c:
+       * gst/audiofx/audiochebband.c:
+       * gst/audiofx/audiocheblimit.c:
+       * gst/audiofx/audiodynamic.c:
+       * gst/audiofx/audiopanorama.c:
+       * gst/audiofx/audiowsincband.c:
+       * gst/audiofx/audiowsinclimit.c:
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/effectv/gstop.c:
+       * gst/effectv/gstradioac.c:
+       * gst/effectv/gstripple.c:
+       * gst/flv/gstflvmux.c:
+       * gst/isomp4/gstqtmux.c:
+       * gst/multifile/gstmultifilesink.c:
+       * gst/rtp/gstrtpdvpay.c:
+       * gst/rtp/gstrtph263ppay.c:
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/gstrtpilbcdepay.c:
+       * gst/rtp/gstrtpvp8pay.c:
+       * gst/rtp/gstrtpvp9pay.c:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/smpte/gstsmpte.c:
+       * gst/smpte/gstsmptealpha.c:
+       * gst/videobox/gstvideobox.c:
+       * gst/videofilter/gstvideoflip.c:
+       * gst/videofilter/gstvideomedian.c:
+       * gst/videomixer/videomixer2.c:
+       * sys/v4l2/gstv4l2object.c:
+         plugins: uddate gst_type_mark_as_plugin_api() calls
+
+2020-06-05 11:49:17 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Initialize uninitialized variable correctly
+         `last_out` would be used uninitialized if the element has no `set-active`
+         signal. Initialize it to -1 as that's what the "default" value is
+         further below.
+         CID 1455443
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/727
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/613>
+
+2015-11-26 17:52:29 +0100  Mikhail Fludkov <misha@pexip.com>
+
+       * ext/vpx/gstvp9enc.c:
+       * ext/vpx/gstvpxenc.c:
+       * ext/vpx/gstvpxenc.h:
+       * tests/check/elements/vp8enc.c:
+       * tests/check/elements/vp9enc.c:
+         vpxenc: Add new bit-per-pixel property to select a better "default" bitrate
+         As part of this also change the default bitrate value to 0. The default
+         value was 256000 previously. In reality, if the property was not set the
+         bitrate value would be scaled according to the resolution which is not
+         very intuitive behavior. It is better to use 0 for this purpose. Now
+         together with newly introduced property "bits-per-pixel" 0 means to
+         assign the bitrate according to resolution/framerate.
+         The default bitrates are now
+         - 1.2Mbps for VP8 720p@30fps
+         - 0.8Mbps for VP9 720p@30fps
+         and scaled accordingly for different resolutions/framerates.
+         Previously the default bitrate was also not scaled according to the
+         framerate but only took the resolution into account.
+         This also fixes the side effect of setting bitrate to 0. Previously
+         encoder would not produce any data at all.
+         Addition from Sebastian Dröge <sebastian@centricular.com> to assume
+         30fps if no framerate is given in the caps instead of not calculating
+         any bitrate at all.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/611>
+
+2020-06-03 18:35:58 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/meson.build:
+         doc: Require hotdoc >= 0.11.0
+
+2020-06-02 14:58:47 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         doc: Fix wrong link to GString in rtpjitterbuffer
+
+2020-05-27 16:01:22 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: Update gst_plugins_cache.json
+
+2020-05-30 01:29:03 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * ext/aalib/gstaasink.c:
+       * ext/aalib/gstaatv.c:
+       * ext/dv/gstdvdec.c:
+       * ext/flac/gstflacenc.c:
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
+       * ext/jack/gstjackaudiosink.c:
+       * ext/jpeg/gstjpegdec.c:
+       * ext/lame/gstlamemp3enc.c:
+       * ext/libcaca/gstcacasink.c:
+       * ext/libcaca/gstcacatv.c:
+       * ext/shout2/gstshout2.c:
+       * ext/speex/gstspeexenc.c:
+       * ext/twolame/gsttwolamemp2enc.c:
+       * ext/vpx/gstvpxdec.c:
+       * ext/vpx/gstvpxenc.c:
+       * ext/wavpack/gstwavpackenc.c:
+       * gst/alpha/gstalpha.c:
+       * gst/audiofx/audioamplify.c:
+       * gst/audiofx/audiochebband.c:
+       * gst/audiofx/audiocheblimit.c:
+       * gst/audiofx/audiodynamic.c:
+       * gst/audiofx/audiopanorama.c:
+       * gst/audiofx/audiowsincband.c:
+       * gst/audiofx/audiowsinclimit.c:
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/effectv/gstop.c:
+       * gst/effectv/gstradioac.c:
+       * gst/effectv/gstripple.c:
+       * gst/flv/gstflvmux.c:
+       * gst/isomp4/gstqtmux.c:
+       * gst/multifile/gstmultifilesink.c:
+       * gst/rtp/gstrtpdvpay.c:
+       * gst/rtp/gstrtph263ppay.c:
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/gstrtpilbcdepay.c:
+       * gst/rtp/gstrtpvp8pay.c:
+       * gst/rtp/gstrtpvp9pay.c:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/smpte/gstsmpte.c:
+       * gst/smpte/gstsmptealpha.c:
+       * gst/videobox/gstvideobox.c:
+       * gst/videofilter/gstvideoflip.c:
+       * gst/videofilter/gstvideomedian.c:
+       * gst/videomixer/videomixer2.c:
+       * sys/v4l2/gstv4l2object.c:
+         plugins: Use gst_type_mark_as_plugin_api() for all non-element plugin types
+
+2018-02-28 15:46:51 +0100  Stian Selnes <stian@pexip.com>
+
+       * ext/vpx/gstvpxdec.c:
+       * tests/check/elements/vp8dec.c:
+         vpxdec: Check that output width and height != 0
+         For VP8 it's possible to signal width or height to be 0, but it does
+         not make sense to do so. For VP9 it's impossible. Hence, we most
+         likely have a corrupt stream. Trying to negotiate caps downstream with
+         either width or height as 0 will fail with something like
+         gst_video_decoder_negotiate_default: assertion 'GST_VIDEO_INFO_WIDTH (&state->info) != 0' failed
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/610>
+
+2020-05-29 00:45:03 +0900  Seungha Yang <seungha@centricular.com>
+
+       * ext/speex/gstspeexdec.c:
+       * ext/speex/gstspeexenc.c:
+         speex: Fix crash on Windows caused by cross-CRT issue
+         Use speex_header_free() to free memory which was allocated by
+         library. Cross-CRT issue should not happen on 1.17 Cerbero build
+         but might happen custom build or so.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/606>
+
+2020-05-27 22:33:31 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: Use the correct type for storing the max-rtcp-rtp-time-diff property
+         It's an integer property and rtpbin also expects an integer. Passing it
+         as a GstClockTime (guint64) to g_object_set() will cause problems, and
+         on big endian MIPS apparently causes crashes.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/737
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/605>
+
+2020-05-27 12:42:38 +0100  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-good/-/merge_requests/603>
+
+2020-05-25 20:11:31 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Error out when failling to receive message response
+         And let it rety twice.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/717
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/601>
+
+2020-05-21 17:12:55 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2: videodec: Fix broken template caps
+         The profiles and levels were applied to the common caps instead of the copy.
+         That had the side effect of setting profiles/level from one CODEC onto
+         another. Leaving to encoder not being registered or not-negotiated errors.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/599>
+
+2020-05-21 17:09:39 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2codec.c:
+       * sys/v4l2/gstv4l2codec.h:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2: codec: Fix GValue leak
+         The levels and profiles probe function returned a dynamically allocated GValue
+         that was leaked. Simplify this by using a stack allocated GValue and a boolean
+         return value.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/599>
+
+2020-05-21 16:39:53 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2codec.c:
+         v4l2codec: Remove uneeded factorisation
+         There is only one user of that function and the split only increase
+         complexicity.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/599>
+
+2020-05-20 17:30:59 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Ignore non-increasing sequence number
+         With older kernel, older driver or just broken drivers, the sequence number
+         may not be increasing. This simply ignore the sequence in this case. This
+         would otherwise miss-leading large amount of lost frame being reported.
+         Fixes #729
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/598>
+
+2020-05-18 13:17:14 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtoverlay.cc:
+       * ext/qt/gstqtoverlay.h:
+       * tests/examples/qt/qmloverlay/main.cpp:
+         qtoverlay: add the root item as a property
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/595>
+
+2020-05-20 13:17:13 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Send gap events if one of the streams falls behind the other by more than 3s
+         Same mechanism and threshold as in other demuxers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/597>
+
+2020-05-20 12:53:56 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/flv/gstflvdemux.h:
+         flvdemux: Remove unused audio_linked/video_linked booleans
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/597>
+
+2020-05-20 10:46:45 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/flv/gstflvdemux.c:
+       * gst/flv/gstflvdemux.h:
+         flvdemux: Answer bitrate queries from upstream
+         If upstream (such as queue2 in urisourcebin) asks for our bitrate, check if we
+         have stored audio/video bitrates, and use them.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/596>
+
+2020-05-20 10:45:16 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Handle empty metadata strings
+         g_utf8_validate() errors out on empty string. But empty strings are valid,
+         so only check if they're not
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/596>
+
+2020-05-20 10:44:19 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Set ACCEPT_TEMPLATE flag on sinkpad
+         A demuxer can accept any caps matching its sinkpad template caps
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/596>
+
+2020-05-15 19:20:45 +0300  Raul Tambre <raul@tambre.ee>
+
+       * ext/qt/qtglrenderer.cc:
+         qtglrenderer.cc: Fix compiling
+         46bfb7d247aef880c15300dad63eb2bbf6dc4928 fixed a format warning without checking if it actually compiled.
+         toUtf8() returns QByteArray so we need to assign it to a temporary variable to be able to get the raw string data from it.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/593>
+
+2020-05-15 06:07:25 +0000  Raul Tambre <raul@tambre.ee>
+
+       * ext/qt/qtglrenderer.cc:
+         qtglrenderer.cc: Fix -Wformat-security warning
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/592>
+
+2020-05-12 04:35:37 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+       * ext/taglib/meson.build:
+       * meson.build:
+       * sys/osxvideo/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 break older versions so it should be ok.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/589>
+
+2020-05-12 04:33:43 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+       * ext/taglib/meson.build:
+       * meson.build:
+         meson: Make C++ compiler detection not be automagic
+         It is now controlled by the qt5 and/or taglib options. We won't
+         silently fail to build taglib now.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/587>
+
+2020-05-12 04:32:01 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/gtk/meson.build:
+       * ext/qt/meson.build:
+       * meson.build:
+       * tests/examples/gtk/meson.build:
+         meson: Fix gstgl checks for qt and gtk
+         Also rename from build_ to have_, which is more accurate.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/587>
+
+2020-05-12 04:30:13 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+       * tests/examples/qt/meson.build:
+       * tests/examples/qt/qmloverlay/meson.build:
+       * tests/examples/qt/qmlsink-dynamically-added/meson.build:
+       * tests/examples/qt/qmlsink/meson.build:
+       * tests/examples/qt/qmlsrc/meson.build:
+         meson: Revamp qt5qml plugin and example build code
+         Stricter and simpler. For example, now we properly error out when
+         gstreamer-gl-1.0 was not found when the qt5 plugin is enabled or when
+         a C++ compiler is not enabled.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/587>
+
+2020-05-09 03:09:03 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/deinterlace/yadif.c:
+         deinterlace: Split out NULL checks in yadif
+         Separate out explicit NULL checks for fields we depend on so
+         that coverity can hopefully verify dependencies better.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/585>
+
+2020-05-09 03:07:33 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/deinterlace/tvtime/greedy.c:
+         deinterlace: Handle NV12/NV21 for the greedyl mode.
+         Don't fall back on the default interpolate_scanline function, which
+         blindly tries to copy from the next field, which can be NULL in
+         mixed progressive/interlaced streams
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/585>
+
+2020-05-05 16:59:56 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/deinterlace/yadif.c:
+         deinterlace: Support packed formats for YADIF
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/444>
+
+2020-05-06 11:04:18 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/deinterlace/gstdeinterlacemethod.c:
+         deinterlace: Call the planar functions for the Y plane of nv12/nv21
+         In some algorithms (like yadif), the Y plane has to be handled different
+         than the UV plane. Therefore, the planar_y functions are now called for
+         the Y plane, and the nv12/nv21 functions are handling only the UV/VU
+         planes respectively.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/444>
+
+2020-01-03 02:34:59 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/deinterlace/gstdeinterlace.h:
+       * gst/deinterlace/meson.build:
+       * gst/deinterlace/yadif.c:
+       * gst/deinterlace/yadif.h:
+         deinterlace: Add C implementation of YADIF
+         Import the YADIF deinterlacer from ffmpeg and modify
+         it to match the simple deinterlace scanlines structure.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/444>
+
+2020-01-03 02:33:25 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/deinterlace/gstdeinterlacemethod.c:
+       * gst/deinterlace/gstdeinterlacemethod.h:
+         deinterlace: Allow for 5 fields for interpolation
+         Add an extra field to the simple deinterlace implementation,
+         so that methods can potentially use 5 fields - the current
+         field, and 2 before and 2 after.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/444>
+
+2020-05-07 01:17:25 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: Force renegotiation when changing mode
+         Switching the deinterlacing mode on-the-fly from disabled to
+         auto used to work, but was broken by commit #1f21747c some
+         years ago.
+         Force re-negotiation with downstream when the mode or
+         fields properties are changed, otherwise deinterlace
+         never switches out of the passthrough mode.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/584>
+
+2020-04-23 15:32:58 +0800  nian.yan <nian.yan@transwarp.io>
+
+       * ext/jpeg/gstjpegenc.c:
+         jpegenc: remove meta copy in jpegenc
+         GstVideoEncoder takes care of the Meta copy, so there is no need in
+         jpegenc
+         Fixes http://gstreamer-devel.966125.n4.nabble.com/jpegenc-copy-GstMeta-twice-tt4693981.html
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/576>
+
+2020-05-05 17:47:28 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+       * gst/imagefreeze/gstimagefreeze.h:
+         imagefreeze: Handle flushing correctly
+         First of all get rid of the atomic seeking boolean, which was only ever
+         set and never read. Replace it with a flushing boolean that is used in
+         the loop function to distinguish no buffer because of flushing and no
+         buffer because of an error as otherwise we could end up in a
+         GST_FLOW_ERROR case during flushing.
+         Also only reset the state of imagefreeze in flush-stop when all
+         processing is stopped instead of doing it as part of flush-start.
+         And last, get a reference to the imagefreeze buffer in the loop function
+         in the very beginning and work from that as otherwise it could in theory
+         be replaced or set to NULL in the meantime as we release and re-take the
+         mutex a couple of times during the loop function.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/580>
+
+2020-05-06 06:48:24 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/videobox/gstvideobox.c:
+         videbox: Use MIN instead of CLAMP for uint
+         an unsigned int is always positive.
+         CID #206207
+         CID #206208
+         CID #206209
+         CID #206210
+         CID #206211
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/583>
+
+2020-05-06 06:35:27 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/avi/gstavidemux.c:
+         avidemux: Avoid potential double-free
+         stream->name was being freed (without being NULL-ed) before we were certain it
+         would be set again.
+         CID #1456071
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/582>
+
+2020-05-05 17:30:48 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: Don't leak frame in error case
+         CID #1455494
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/581>
+
+2020-05-05 15:19:49 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         slitmuxsrc: Properly stop the loop if not part reader is present
+         Previously this would end up in a refcounting loop of hell.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/578>
+
+2020-03-31 14:32:19 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/flv/gstflvmux.c:
+       * gst/flv/gstflvmux.h:
+         flvmux: Add skip-backwards-streams property
+         Backwards timestamps confuse librtmp, even if they're only backwards
+         relative to the other stream. If the timestamp of a stream is going
+         backwards related to the other stream, this property allows the muxer to
+         skip a few buffers until it reaches the timestamp of the other stream.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/572>
+
+2020-03-31 14:10:35 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Allow requesting streamable pads after header is written
+         Allows us to request pads after writing header for streamable flv's.
+         For non-streamable it doesn't make sense to request a new pad after
+         writing the header, because the headers have been written already and we
+         can't add the new stream. But for streamable, any clients that connect
+         after the new pad has been added will be able to see both streams.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/572>
+
+2020-04-27 18:11:32 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qt/x11: also pass the window for gstgl -> qt context
+         Removes this warning from Qt:
+         QGLXContext: Multiple configs for FBConfig ID -1
+         QSGContext::initialize: depth buffer support missing, expect rendering errors
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/575>
+
+2020-04-27 15:34:15 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtglrenderer.cc:
+       * ext/qt/qtglrenderer.h:
+         qt: perform surface creation in the main thread
+         As is required when creating a QWindow instance set out in the Qt
+         documentation.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/575>
+
+2020-04-22 15:32:31 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Add 'mp3 ' fourcc that VLC seems to produce now
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/574>
+
+2020-04-22 14:09:37 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.h:
+         rtpjitterbuffer: Properly free internal packets queue in finalize()
+         As we override the GLib item with our own structure, we cannot use any
+         function from GList or GQueue that would try to free the RTPJitterBufferItem.
+         In this patch, we move away from g_queue_new() which forces using
+         g_queue_free(). This this function could use g_slice_free() if there is any items
+         left in the queue. Passing the wrong size to GSLice may cause data corruption
+         and crash.
+         A better approach would be to use a proper intrusive linked list
+         implementation but that's left as an exercise for the next person
+         running into crashes caused by this.
+         Be ware that this regression was introduced 6 years ago in the following
+         commit [0], the call to flush() looked useless, as there was a g_queue_free()
+         afterward.
+         Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
+         [0] https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/commit/479c7642fd953edf1291a0ed4a3d53618418019c
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/573>
+
+2020-04-20 19:43:57 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tests/check/elements/splitmuxsink.c:
+       * tests/check/elements/splitmuxsinktimecode.c:
+       * tests/check/meson.build:
+         tests: splitmuxsink: Add more timecode based split test
+         ... and split test cases to run tests in parallel
+
+2020-04-10 23:52:45 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Enhancement for timecode based split
+         The calculated threshold for timecode might be varying depending on
+         "max-size-timecode" and framerate.
+         For instance, with framerate 29.97 (30000/1001) and
+         "max-size-timecode=00:02:00;02", every fragment will have identical
+         number of frames 3598. However, when "max-size-timecode=00:02:00;00",
+         calculated next keyframe via gst_video_time_code_add_interval()
+         can be different per fragment, but this is the nature of timecode.
+         To compensate such timecode drift, we should keep track of expected
+         timecode of next fragment based on observed timecode.
+
+2020-04-11 00:35:16 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Post error when requested timecode interval is invalid
+         In case we cannot rely on max-size-timecode for split decision,
+         post error instead of crashing
+
+2020-04-16 16:47:50 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: don't use RTX packets in rate-calc and reset-logic
+         The problem was this:
+         Due to the highly irregular arrival of RTX-packet the max-misorder variable
+         could be pushed very low. (-10).
+         If you then at some point get a big in the sequence-numbers (62 in the
+         test) you end up sending RTX-requests for some of those packets, and then
+         if the sender answers those requests, you are going to get a bunch of
+         RTX-packets arriving. (-13 and then 5 more packets in the test)
+         Now, if max-misorder is pushed very low at this point, these RTX-packets
+         will trigger the handle_big_gap_buffer() logic, and because they arriving
+         so neatly in order, (as they would, since they have been requested like
+         that), the gst_rtp_jitter_buffer_reset() will be called, and two things
+         will happen:
+         1. priv->next_seqnum will be set to the first RTX packet
+         2. the 5 RTX-packet will be pushed into the chain() function
+         However, at this point, these RTX-packets are no longer valid, the
+         jitterbuffer has already pushed lost-events for these, so they will now
+         be dropped on the floor, and never make it to the waiting loop-function.
+         And, since we now have a priv->next_seqnum that will never arrive
+         in the loop-function, the jitterbuffer is now stalled forever, and will
+         not push out another buffer.
+         The proposed fixes:
+         1. Don't use RTX in calculation of the packet-rate.
+         2. Don't use RTX in large-gap logic, as they are likely to be dropped.
+
+2020-04-15 12:36:29 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Increase internal bitstream pool size
+         This patch will now set the maximum of buffers to 32, allowing to grow the
+         pool for drivers that supports that and will respect the minimum buffers
+         reported by the driver. This was made to fix a stall with the virtio CODEC
+         driver.
+         Fixes #672
+
+2020-04-15 17:50:31 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Do split-at-running-time splitting based on the time of the start of the GOP
+         If the start of the GOP is >= the requested running time, put it into a
+         new fragment. That is, split-at-running-time would always ensure that a
+         split happens as early as possible after the given running time.
+         Previously it was comparing against the current incoming timestamp,
+         which does not tell us what we actually want to know as it has no direct
+         relation to the GOP start/end.
+
+2020-04-15 13:21:05 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Fix off-by-one in running time comparison for split-at-running-time
+         If we get a keyframe exactly at the requested running time we would only
+         split on the next keyframe afterwards due to wrong usage of > vs. >=.
+
+2020-04-09 12:23:44 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: Properly set segments seqnums after seeks
+
+2020-04-08 19:49:00 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Don't write an empty string as a tag
+         To stop warnings like:
+         GStreamer-WARNING **: 19:47:48.186: Trying to set empty string on
+         taglist field 'encoder'. Please file a bug.
+
+2020-04-08 12:34:40 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: request the maximum number of buffers for USERPTR
+         This is to match what we now do for DMABuf importation.
+
+2019-11-20 15:32:29 +0100  Michael Olbrich <m.olbrich@pengutronix.de>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: request the maximum number of buffers for DMABUF
+         There are often only two buffers queued in the kernel so no new buffers are
+         requested.
+         With every qbuf, the kernel receives a new DMABUF for the specified index.
+         This most likely differs from the last DMABUF and the old cached entry is
+         released. This results in a lot of map/unmap overhead if the kernel driver
+         needs a mapping for the buffer.
+         With a larger queue, it's quite likely, that both old and new DMABUFs are
+         also mapped for another index. So the map/unmap is skipped, because the
+         mapping is reference counted.
+         The corresponding allocated buffers don't contain any actual memory, so
+         allocating them is quite cheep. So the log message is updated to clarify
+         this.
+
+2020-04-08 09:45:17 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Avoid stack overflow recursing waiting for response
+         Instead of recursing, simply implement a loop with gotos, the same
+         way it was done before 812175288769d647ed6388755aed386378d9210c
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/710
+
+2020-04-06 16:25:59 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Add property for enforcing the creation of chunks in single-stream files
+         This is disabled by default as it unnecessarily creates bigger headers
+         but it is something that is required by some applications and most
+         notably the Apple ProRes spec.
+
+2020-04-03 00:16:10 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Fix invalid padlist accesses.
+         Request pads can released at any time, so make sure to hold
+         the object lock when iterating the element sinkpads list where
+         that's safe, or to use other safe pad iteration patterns in
+         other places.
+         When choosing a best pad, return a reference to the pad to make sure it
+         stays alive for output in the aggregator srcpad task.
+         Should fix a spurious valgrind error in the CI flvmux tests and some
+         other potential problems if the request sink pads are released while
+         the element is running..
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/714
+
+2018-10-22 15:41:56 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Add option to create a timecode trak in non-mov flavors
+         Even if timecode trak is officially unsupported in non-mov flavors,
+         some software still supports it, e.g. Final Cut Pro X:
+         https://developer.apple.com/library/archive/technotes/tn2174/_index.html
+         The user might still expect to see the timecode information in the
+         non-mov file despite it being officially unsupported , because other
+         software e.g. QuickTime will create a timecode trak even in mp4 files.
+         Furthermore, software that supports timecode trak in non-mov flavors
+         will also display the file duration in "timecode units" instead of real
+         clock time, which is not necessarily the same for 29.97 fps and friends.
+         This might confuse users, who see a different duration for the same
+         framerate and amount of frames depending on whether the container is mp4
+         or mov.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/512
+
+2020-01-16 09:30:39 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpL16depay.c:
+       * gst/rtp/gstrtpL24depay.c:
+       * gst/rtp/gstrtpL8depay.c:
+         rtpLXXdepay: Set the UNPOSITIONED flag on the audio-info when configuring an unpositioned layout
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/688
+
+2020-04-01 13:19:46 +0200  Kristofer Björkström <kristofb@axis.com>
+
+       * gst/rtp/gstrtpjpegpay.c:
+       * tests/check/elements/rtpjpeg.c:
+       * tests/check/meson.build:
+         rtpjpeg: Use gst_memory_map() instead of gst_buffer_map()
+         gst_buffer_map () results in memcopying when a GstBuffer contains
+         more than one GstMemory.
+         This has quite an impact on performance on systems with limited amount
+         of resources. With this patch the whole GstBuffer will not be mapped at
+         once, instead each individual GstMemory will be iterated and mapped
+         separately.
+
+2020-04-01 13:17:03 +0200  Kristofer Björkström <kristofb@axis.com>
+
+       * gst/rtp/gstbuffermemory.c:
+       * gst/rtp/gstbuffermemory.h:
+         buffermemory: keep track of buffer size and current offset
+         Added the possibility to get current offset and the total size of the
+         buffer.
+
+2020-04-03 10:29:18 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtp/gstrtpopuspay.c:
+       * tests/check/elements/rtpopus.c:
+       * tests/check/meson.build:
+         rtpopuspay: make depay ! pay work
+         There is a use-case for a server to re-payload opus going through it.
+         Problem was that the payloader requires channels in the caps, but
+         this is not something the depayloader can parse out of the stream, meaning
+         caps-negotiation would fail.
+         Removing the requirement of channels in the template-caps fixes this.
+
+2020-04-03 16:49:25 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tests/check/elements/splitmuxsink.c:
+       * tests/check/elements/splitmuxsrc.c:
+       * tests/check/meson.build:
+         tests: Split splitmux test case
+         Since we are adding more and more tests into splitmux,
+         we need to split it to avoid CI timeout.
+
+2020-04-03 13:45:56 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+       * tests/check/elements/splitmux.c:
+         splitmuxsink: Don't send too many force key unit event
+         splitmuxsink should requst keyframe depending on configured
+         threshold and previously requested time in order to avoid too many
+         keyframe request.
+
+2020-03-20 21:32:36 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroska: Check the return value of gst_segment_do_seek()
+         gst_segment_do_seek() can fail.
+
+2018-06-08 13:12:01 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Send instant-rate-change event if requested in the SEEK event
+         Handle an instant rate change seek immediately by reflecting
+         it downstream as an instant-rate-change event, and do no
+         further seek handling.
+
+2018-05-15 18:26:16 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroska-demux: Send instant-rate-change event if requested in the SEEK event
+         Short-circuit instant rate change events by generating
+         a downstream instant-rate-change event and doing no further
+         seek processing.
+
+2020-03-10 23:16:00 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-mux.c:
+         matroska: Update for video-hdr struct change
+         See the change of -base https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/594
+
+2020-03-31 15:51:27 -0400  Aaron Boxer <boxerab@gmail.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: make warning messages more meaningful
+
+2020-03-27 19:24:03 +0100  Nicolas Pernas Maradei <nicopernas@gmail.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+         rtpsession: rename RTCP thread
+         RTP session starts a new thread for RTCP and names it
+         "rtpsession-rtcp-thread" which happens to be longer than the maximum 16B
+         allowed by pthread_setname_np and causes the naming to fail.
+         See docs for more details.
+         This commit simply shortens the thread's name so it can actually be set.
+
+2020-03-30 22:26:33 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.h:
+         rtpjitterbuffer: create specific API for appending buffers, events etc
+         To avoid specifying a bunch of mystic variables.
+
+2020-02-10 17:33:54 +0100  Havard Graff <havard@pexip.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: various test-improvements
+         Mainly generalize all the latest tests that have found various stalls
+         in the jitterbuffer, so that they only consist of a series of packets
+         with various seqnum/rtptime/rtx combinations, arriving at a specific time.
+         This means future tests can be more easily written to prove certain
+         behavior does not cause stalls.
+         Also fix the warning on windows:
+         warning C4244: 'initializing': conversion from 'double' to 'gint', possible loss of data
+
+2020-03-27 14:07:04 +0100  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: fix waiting timer/queue code
+         Changing the types from boolean to guint due to the ++ operand used on
+         them, and only call JBUF_SIGNAL_QUEUE after settling down,
+         or else you end up signaling the waiting code in chain() for every buffer
+         pushed out.
+
+2020-03-23 19:55:37 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Error out instead of crashing if reserved-max-duration is 0 or no samples could be created in prefill mode
+
+2020-03-12 15:16:44 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
+         gdkpixbufoverlay: Use GST_VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS for the supported formats
+         We don't do any blending by ourselves since a while now.
+         Note that this is a regression in "supported" formats: previously
+         ARGB64 was supported, for example, but in practice it caused blending to
+         not take place at all.
+
+2020-03-24 00:23:24 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxpartreader.c:
+       * gst/multifile/gstsplitmuxpartreader.h:
+       * gst/multifile/gstsplitmuxsrc.c:
+       * gst/multifile/gstsplitmuxsrc.h:
+         splitmuxsrc: Fix some deadlock conditions and a crash
+         When switching the splitmuxsrc state back to NULL quickly, it
+         can encounter deadlocks shutting down the part readers that
+         are still starting up, or encounter a crash if the splitmuxsrc
+         cleaned up the parts before the async callback could run.
+         Taking the state lock to post async-start / async-done messages can
+         deadlock if the state change function is trying to shut down the
+         element, so use some finer grained locks for that.
+
+2020-03-24 00:18:54 +1100  Jan Schmidt <jan@centricular.com>
+
+       * tests/check/elements/splitmux.c:
+         splitmux: Make the unit test faster
+         The playback test is considerably faster if it runs with the
+         appsink set to sync=false
+
+2020-03-25 22:14:36 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tests/check/elements/splitmux.c:
+       * tests/check/meson.build:
+         tests: splitmux: Add test for timecode based split
+
+2020-03-25 21:20:07 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Split fragment only if queued time is larger than threshold
+         The queued time includes the duration of the last queued frame
+         (i.e., new keyframe) so the condition check should not be inclusive.
+         Note that the new fragment will be cut excluding the last frame
+         and therefore if the condition is inclusive way,
+         the fragment might have one frame shorter duration for all keyframe
+         stream such as jpeg or all-inter video streams.
+
+2020-03-25 21:01:00 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Don't need to trace next timecode for split decision
+         Since the commit 94bb76b6b9c48981d3ad42a8c4370b9658db4229, splitmuxsink
+         will split fragments based on queued time and the threshold of that.
+         So don't need to store the next timecode for split decision.
+
+2018-08-08 09:27:19 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/gstv4l2src.h:
+         v4l2: add alternate interlace mode
+         When using this mode each frame is split in two fields, each one being
+         transferred using its own buffer.
+         This is implemented with the V4L2_FIELD_ALTERNATE field format in v4l2.
+         This mode is enabled using a caps filter such as
+         "v4l2src ! video/x-raw\(format:Interlaced\)"
+         Here are the main changes related to this feature:
+         - use the INTERLACED caps feature with this mode.
+         - in this mode both fields of a given frame have the same sequence/offset
+         so adjust the algorithm checking for lost field/frame accordingly.
+         - double pool's min number of buffers as each frame requires 2 buffers.
+         Fix #504
+         Co-authored-by: Zeeshan Ali <zeenix@collabora.co.uk>
+
+2020-02-05 13:03:51 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: display field when setting or trying format
+         Ease debugging interlacing pipelines.
+
+2020-01-30 12:35:02 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2: pass v4l2object to GST_V4L2_MIN_BUFFERS()
+         Will be used to double the number of buffers in alternate interlace
+         mode.
+
+2020-01-30 12:09:12 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: use GST_VIDEO_INFO_FIELD_HEIGHT()
+         Use GST_VIDEO_INFO_FIELD_HEIGHT() instead of GST_VIDEO_INFO_HEIGHT()
+         when we actually want the field height rather than the frame height.
+         So far both are equals but that won't longer be the case when
+         implementing alternate interlace mode.
+
+2020-03-24 22:08:27 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Mark some split decision related properties as MUTABLE_READY
+         The change of various criteria for split decision while muxing is on progress
+         wouldn't work well as expected.
+
+2020-03-24 13:45:00 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Take account queued time and max-size-timecode for split decision
+         Not only the requested keyframe time, the queued size should be
+         a criterion for the split decision of timecode based mode
+         (same as max-size-time based split case).
+
+2020-03-24 12:55:27 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtoverlay.cc:
+         qmlgloverlay: fix usage without an qmlglsink in the pipeline
+         Without a qmlglsink, we need to retrieve the window system display
+         ourselves rather than relying solely on qmlglsink to have priority on
+         the choice of display.
+
+2020-03-23 21:32:04 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * gst/rtpmanager/rtptwcc.c:
+       * gst/videocrop/gstvideocrop.c:
+       * tests/check/elements/rtpbin.c:
+       * tests/check/elements/rtpsession.c:
+         Fix usage of C99
+         It's 2020, way too early for that, let's stick to C89 for now.
+
+2020-03-23 16:34:46 +0900  Seungha Yang <seungha@centricular.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2object.h:
+         v4l2bufferpool: Use unique name for v4l2bufferpool object
+         Assign unique sequence number to an object name for better debugging
+
+2020-03-23 14:02:22 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtglrenderer.cc:
+         qmlgloverlay: don't leak resources freed on a different GL thread
+         deleting a QOpenGLFrameBufferObject needs to occur on the same thread it
+         was created on in order to actually free the relevant resources
+         immediately.  Otherwise, they will be queued for deletion and not freed
+         until the associated QOpenGLContext is destroyed.
+
+2020-03-20 09:14:01 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qt: reorganize include defines
+
+2020-03-19 23:17:21 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtptimerqueue.c:
+       * gst/rtpmanager/rtptimerqueue.h:
+       * tests/check/elements/rtptimerqueue.c:
+         rtptimerqueue: remove ->num from the timer
+         This concept was only used by the "multi"-lost timer, and since that
+         one is not around any longer, the "num" concept is superfluous.
+
+2020-03-19 23:37:26 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: remove the concept of "already-lost"
+         This is a concept that only applies when a buffer arrives in the chain
+         function, and it has already been scheduled as part of a "multi"-lost
+         timer.
+         However, "multi"-lost timers are now a thing of the past, making this
+         whole concept superflous, and this buffer is now simply counted as "late",
+         having already been pushed out (albeit as a lost-event).
+
+2020-03-19 23:12:04 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: immediately insert a lost-event on multiple lost packets
+         There is a problem with the code today, where a single timer will
+         be scheduled for a series of lost packets, and then if the first packet
+         in that series arrives, it will cause a rescheduling of that timer, going
+         from a "multi"-timer to a single-timer, causing a lot of the packets
+         in that timer to be unaccounted for, and creating a situation in where
+         the jitterbuffer will never again push out another packet.
+         This patch solves the problem by instead of scheduling those lost packets
+         as another timer, it instead asks to have that lost-event pushed straight
+         out.
+         This very much goes with the intent of the code here: These packets are
+         so desperately late that no cure exists, and we might as well get the
+         lost-event out of the way and get on with it.
+         This change has some interesting knock-on effect being presented in
+         later commits. It completely removes the concept of "already-lost", so
+         that is why that test has been disabled in this commit, to be
+         removed later.
+
+2020-03-19 23:03:50 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: rework large-gap tests
+         Make sure to set the time the buffer is supposed to arrive at, so
+         as not to trigger an artificial situation.
+
+2020-03-19 12:17:22 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: refactor lost_timeout code
+         Split it up in code related to the timer, (do_lost_timeout) and code
+         to insert a lost-item/event and update private jitterbuffer-variables.
+
+2019-10-18 17:43:36 +0200  Havard Graff <havard@pexip.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+       * tests/check/elements/rtptimerqueue.c:
+       * tests/check/meson.build:
+         test/check: split out rtptimerqueue-tests in a separate file
+
+2020-02-05 09:56:23 +0100  Dmitriy Purgin <dmitriy.purgin@sequality.at>
+
+       * ext/qt/qtplugin.pro:
+         gstqmlgl: Link to opengl32.lib on MinGW
+
+2020-03-19 23:51:47 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Fix build warning
+         gstqtmux.c(644): warning C4133: '=':
+         incompatible types - from 'gboolean (__cdecl *)(GstAggregator *,GstAggregatorPad *,GstEvent *)'
+         to 'GstFlowReturn (__cdecl *)(GstAggregator *,GstAggregatorPad *,GstEvent *)'
+
+2020-03-19 23:05:49 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Reset cleanly for reuse
+         Reset the splitmuxsink completely when changing states so that
+         it can be reused.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1241
+
+2020-02-17 22:37:10 -0600  Zebediah Figura <z.figura12@gmail.com>
+
+       * gst/audioparsers/gstmpegaudioparse.c:
+       * gst/audioparsers/gstmpegaudioparse.h:
+         mpegaudioparse: Use a constant bit rate to convert between time and bytes if possible.
+         This should result in no worse accuracy than the base parse element, and may
+         result in better accuracy. In particular, the number of bytes processed at any
+         given point, as accumulated by baseparse, can be only accurate to
+         (1 / # of frames) bytes per second, and if we try to seek immediately after
+         pausing the pipeline to a large offset, this small inaccuracy can propagate to
+         something noticeable.
+         The use case that prompted this patch is a 45-minute MPEG-1 layer 3 file, which
+         has a constant bit rate but no seek tables. Trying to seek the pipeline
+         immediately after pauisng it, without the ACCURATE flag, to a location 41
+         minutes in, yields a location that is, even with <https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/374>,
+         still audibly incorrect. This patch yields a much closer position, no longer
+         audibly incorrect, and likely within a frame of the most correct position.
+
+2020-03-04 22:10:40 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: fix renegotiation check
+         By the time sink_event is called, the pad's current caps have
+         already been updated. To address this, implement sink_event_pre_queue,
+         and check if the pad can be renegotiated there.
+         Fixes #707
+
+2020-03-12 20:34:47 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+       * tests/check/elements/splitmux.c:
+         splitmuxsink: Decouple keyframe request and the decision for fragmentation
+         Split the decision for keyframe request and fragmentation in order to
+         ensure periodic keyframe request.
+
+2020-02-26 18:29:06 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+       * ext/qt/gstqtoverlay.cc:
+       * ext/qt/qtglrenderer.cc:
+       * ext/qt/qtglrenderer.h:
+       * ext/qt/qtitem.cc:
+       * tests/examples/qt/qmloverlay/main.cpp:
+       * tests/examples/qt/qmloverlay/overlay2.qml:
+       * tests/examples/qt/qmloverlay/qmloverlay.qrc:
+         qt: add a qml overlay filter element [part 2]
+         It takes a qml scene description and renders it using a possible input
+         stream.
+         Currently supported on GLX and WGL.
+         Follow up to (as that MR had an old version of the commit):
+         - https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/475
+         - 4778d7166a02caf793df4f845dc35b6933d87c81: qt: add a qml overlay filter element
+
+2020-02-26 18:29:06 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstplugin.cc:
+       * ext/qt/gstqtglutility.cc:
+       * ext/qt/gstqtglutility.h:
+       * ext/qt/gstqtoverlay.cc:
+       * ext/qt/gstqtoverlay.h:
+       * ext/qt/meson.build:
+       * ext/qt/qtglrenderer.cc:
+       * ext/qt/qtglrenderer.h:
+       * tests/examples/qt/meson.build:
+       * tests/examples/qt/qmloverlay/main.cpp:
+       * tests/examples/qt/qmloverlay/main.qml:
+       * tests/examples/qt/qmloverlay/meson.build:
+       * tests/examples/qt/qmloverlay/overlay.qml:
+       * tests/examples/qt/qmloverlay/qmloverlay.qrc:
+         qt: add a qml overlay filter element
+         It takes a qml scene description and renders it using a possible input
+         stream.
+         Currently supported on GLX and WGL.
+
+2020-02-25 21:47:14 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqsgtexture.cc:
+       * ext/qt/qtitem.cc:
+         qt: don't always activate/deactivate our GstGLContext
+         Techincally it is enough to activate at the beginning and then forget.
+
+2020-02-04 19:43:52 +1100  Matthew Waters <matthew@centricular.com>
+
+       * tests/examples/qt/meson.build:
+       * tests/examples/qt/qmlsink-dynamically-added/.gitignore:
+       * tests/examples/qt/qmlsink-dynamically-added/main.cpp:
+       * tests/examples/qt/qmlsink-dynamically-added/main.qml:
+       * tests/examples/qt/qmlsink-dynamically-added/meson.build:
+       * tests/examples/qt/qmlsink-dynamically-added/play.pro:
+       * tests/examples/qt/qmlsink-dynamically-added/qmlsink.qrc:
+         test/qml: add an dynamically adding qmlglsink element
+         The example shows how to add qmlglsink to an already running pipeline
+         with pre-existing OpenGL elements.
+
+2020-02-04 19:40:45 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtsink.cc:
+         qmlglsink: propagate the context up the the application
+         Allows the application to be notified of the OpenGL context creation.
+
+2020-02-03 15:59:34 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         qtitem: fix leak of caps
+
+2020-03-15 19:28:18 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/wavpack/gstwavpackdec.h:
+       * ext/wavpack/gstwavpackenc.h:
+         wavpack: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 19:26:18 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/vpx/gstvp8dec.h:
+       * ext/vpx/gstvp8enc.h:
+       * ext/vpx/gstvp9dec.h:
+       * ext/vpx/gstvp9enc.h:
+       * ext/vpx/gstvpxdec.h:
+       * ext/vpx/gstvpxenc.h:
+         vpx: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 19:22:00 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/twolame/gsttwolamemp2enc.h:
+         twolame: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 19:20:49 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/taglib/gstapev2mux.h:
+       * ext/taglib/gstid3v2mux.h:
+         taglib: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 19:18:39 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/speex/gstspeexdec.h:
+       * ext/speex/gstspeexenc.h:
+         speex: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 19:16:22 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/soup/gstsouphttpclientsink.h:
+         soup: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 19:14:17 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/shout2/gstshout2.c:
+       * ext/shout2/gstshout2.h:
+         shout2: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 19:11:52 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/raw1394/gst1394clock.h:
+       * ext/raw1394/gstdv1394src.c:
+       * ext/raw1394/gstdv1394src.h:
+       * ext/raw1394/gsthdv1394src.h:
+         raw1394: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 19:06:50 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/qt/gstqtsink.h:
+       * ext/qt/gstqtsrc.h:
+         qt: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 19:00:18 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/pulse/pulsedeviceprovider.h:
+       * ext/pulse/pulsesink.h:
+       * ext/pulse/pulsesrc.h:
+         pulse: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 18:54:33 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/mpg123/gstmpg123audiodec.h:
+         mpg123: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 18:52:57 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/libpng/gstpng.h:
+       * ext/libpng/gstpngdec.h:
+       * ext/libpng/gstpngenc.h:
+         libpng: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 18:49:53 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/libcaca/gstcacasink.h:
+       * ext/libcaca/gstcacatv.h:
+         libcaca: Use G_DECLARE_FINAL_TYPE
+
+2020-03-15 18:40:28 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/lame/gstlamemp3enc.h:
+         lame: Use G_DECLARE_FINAL_TYPE
+
+2020-03-14 17:52:38 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/jack/gstjackaudiosink.h:
+       * ext/jack/gstjackaudiosrc.h:
+         jack: Use G_DECLARE_FINAL_TYPE
+
+2020-03-14 17:43:50 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/gtk/gstgtkbasesink.h:
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gstgtksink.h:
+         gtk: Use G_DECLARE_FINAL_TYPE
+
+2020-03-13 18:47:49 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/gdk_pixbuf/gstgdkpixbufdec.h:
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.h:
+       * ext/gdk_pixbuf/gstgdkpixbufsink.h:
+         gdk_pixbuf: Use G_DECLARE_FINAL_TYPE
+
+2020-03-13 18:42:38 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/flac/gstflacdec.h:
+       * ext/flac/gstflacenc.h:
+       * ext/flac/gstflactag.h:
+         flax: Use G_DECLARE_FINAL_TYPE
+
+2020-03-13 18:39:38 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/dv/gstdvdec.h:
+       * ext/dv/gstdvdemux.h:
+         dv: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 19:24:57 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/cairo/gstcairooverlay.h:
+         cairo: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 19:20:42 +0100  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/aalib/gstaasink.h:
+       * ext/aalib/gstaatv.h:
+         aalib: Use G_DECLARE_FINAL_TYPE
+
+2020-03-12 16:55:44 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/rtp-payloading.c:
+         tests: rtp-payloading: add minimal vp8/vp9 rtp payloading/depayloading test
+
+2018-10-19 16:17:17 +0200  Stian Selnes <stian@pexip.com>
+
+       * gst/rtp/gstrtpvp8pay.c:
+       * gst/rtp/gstrtpvp9pay.c:
+         rtpvp8pay, rtpvp9pay: fix caps leak in set_caps()
+
+2020-03-12 11:22:56 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/videomixer/videomixer2.c:
+         videomixer: Don't leak peer caps
+
+2020-02-11 16:19:15 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+       * gst/multifile/gstimagesequencesrc.c:
+       * gst/multifile/gstimagesequencesrc.h:
+       * gst/multifile/gstmultifile.c:
+       * gst/multifile/meson.build:
+         imagesequencesrc: Cleanup and add some features
+         * Implement the GstURIHandlerInterface
+         * Rework the locking
+         * Implement backward seeking handling
+         * Generate documentation
+
+2016-04-10 02:25:32 +0000  Fabian Orccon <fabian.orccon@pucp.pe>
+
+       * gst/multifile/gstimagesequencesrc.c:
+       * gst/multifile/gstimagesequencesrc.h:
+         Add an imagesequencesrc element to stream sequence of images
+         See: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/121
+
+2020-03-05 08:55:44 -0800  Gordon Hart <gordon.hart2@gmail.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: decrease gst_v4l2src_create log verbosity
+         Lower the verbosity of the 'sync' log message emitted
+         each buffer from gst_v4l2src_create down to LOG(6)
+         from INFO(4). This brings the logging behavior of
+         v4l2src closer to the GStreamer guidelines, which
+         recommend the INFO level be reserved for rare or
+         one-off messages.
+
+2020-03-10 17:19:46 +0800  yychao <yychao@gmail.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Add support for AC4
+         The caps received from qtdemux for AC-4 content are audio/x-gst-fourcc-ac_4
+         Based on patch by: Savinderjit Kaur
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/413
+
+2020-03-10 21:07:12 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+       * gst/imagefreeze/gstimagefreeze.h:
+         imagefreeze: handle reconfigure events on the srcpad
+
+2020-03-05 22:47:16 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: properly ignore setting caps failures
+         Ignore the return value of gst_pad_set_caps() so that setcaps will set a
+         framerate that is usable.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/705
+
+2020-03-05 22:45:32 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: don't fail sending sticky events downstream
+         They will be repropagated anyway.
+
+2020-03-09 23:31:09 +0100  Markus Ebner <info@ebner-markus.de>
+
+       * gst/videocrop/gstvideocrop.c:
+         videocrop: Add support for Y41B and Y42B
+
+2020-03-09 23:25:03 +0100  Markus Ebner <info@ebner-markus.de>
+
+       * gst/videocrop/gstvideocrop.c:
+       * gst/videocrop/gstvideocrop.h:
+         videocrop: Add support for Y444
+         - Refactored the planar transform method to support all video formats
+         that are stored planar, independent of the used subsampling
+         - Added support for Y444
+
+2020-03-09 23:23:50 +0100  Markus Ebner <info@ebner-markus.de>
+
+       * gst/videocrop/gstvideocrop.c:
+         videocrop: Use G_VALUE_INIT to initialize GValues
+
+2020-02-28 19:35:34 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/jpeg/gstjpegdec.c:
+         jpegdec: Configure JPEG chroma-siting for YUV formats
+
+2020-02-06 09:23:24 +0100  Ognyan Tonchev <ognyan@axis.com>
+
+       * gst/rtp/gstbuffermemory.c:
+       * gst/rtp/gstbuffermemory.h:
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/meson.build:
+       * tests/check/elements/rtph264.c:
+         rtph26x: Use gst_memory_map() instead of gst_buffer_map() in avc mode
+         gst_buffer_map () results in memcopying when a GstBuffer contains
+         more than one GstMemory and when AVC (length-prefixed) alignment is used.
+         This has quite an impact on performance on systems with limited amount of
+         resources. With this patch the whole GstBuffer will not be mapped at once,
+         instead each individual GstMemory will be iterated and mapped separately.
+
+2019-11-26 15:08:20 +0100  Milian Wolff <milian.wolff@kdab.com>
+
+       * ext/qt/gstqtgl.h:
+         qmlgl: ensure Qt defines GLsync to fix compile on some platforms
+         By explictly including QtGui/qopengl.h we force the code path that
+         defines GLsync in the Qt-specific way. Without that, some platforms
+         failed to compile the qmlgl plugin, since neither Qt nor gstreamer
+         defined GLsync then, leading to e.g.:
+         ```
+         make[4]: Entering directory '/.../gst-plugins-good-1.16.1/ext/qt'
+         CXX      libgstqmlgl_la-qtitem.lo
+         In file included from gstqtgl.h:32,
+         from qtitem.h:27,
+         from qtitem.cc:28:
+         /.../usr/include/gstreamer-1.0/
+         gst/gl/gstglfuncs.h:93:17: error: expected identifier before ‘*’ token
+         ret (GSTGLAPI *name) args;
+         ^
+         /.../usr/include/gstreamer-1.0/
+         gst/gl/glprototypes/sync.h:27:1: note: in expansion of macro
+         ‘GST_GL_EXT_FUNCTION’
+         GST_GL_EXT_FUNCTION (GLsync, FenceSync,
+         ^~~~~~~~~~~~~~~~~~~
+         ```
+
+2020-03-02 13:50:55 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtptwcc.c:
+       * gst/rtpmanager/rtptwcc.h:
+         rtptwcc: make RTPTWCCManager a GObject
+
+2020-03-04 11:17:16 +0100  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: fix stalling when resetting timers
+         When calling gst_rtp_jitter_buffer_reset you pass in a seqnum.
+         This is considered the starting-point for a new stream.
+         However, the old behavior would unref this buffer, basically lying to
+         the thread that is pushing out buffers saying that it can expect
+         this buffer, when it would never arrive. The resulting effect being no
+         more buffer pushed out of the jitterbuffer, and it would buffer
+         incoming data indefinitely.
+         By instead inserting the buffer in the gap_packets queue, the _reset()
+         function will take responsibility for using that as the first buffer
+         of the new stream.
+         Fixes #703
+
+2020-02-21 02:14:11 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxpartreader.c:
+       * gst/multifile/gstsplitmuxpartreader.h:
+       * gst/multifile/gstsplitmuxsrc.c:
+       * tests/check/elements/splitmux.c:
+         splitmux: Avoid negative DTS
+         In order to concatenate fragments, splitmuxsrc offsets
+         the start of each fragment PTS to 0 to align it with the
+         previous file. This means that DTS can go negative for
+         the first fragment, with really bad results.
+         Add a fixed offset to outgoing timestamp ranges to
+         avoid that.
+
+2020-03-04 03:43:51 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Remove warning in the log for mono video
+         Vanilla mono video was generating a spurious warning into the debug log
+         that's just misleading. Handle mono caps explicitly to avoid the warning.
+
+2020-01-27 12:29:18 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/deinterlace/gstdeinterlacemethod.c:
+         deinterlace: add alternate support
+         In this mode each field is carried using its own buffer.
+         Allow deinterlace to negotiate caps with the Interlaced feature and
+         adjust the algorithm fetching lines.
+         Fix #620
+
+2020-02-03 13:08:39 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/deinterlace/gstdeinterlacemethod.c:
+         deinterlace: add wrapper to get field lines from history
+         No semantic change so far, will be used to implement alternate support.
+
+2020-02-04 16:48:21 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/deinterlace/gstdeinterlacemethod.c:
+         deinterlace: stop checking line index boundaries
+         The LINE2() macro already prevents out of bound indexes using CLAMP_HI()
+         and CLAMP_LOW().
+
+2020-01-20 12:30:12 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/deinterlace/gstdeinterlace.h:
+         deinterlace: fix video info on output frames
+         Output frames used to have their interlace mode set to the same one as
+         the input. This breaks their field and comp heights when deinterlacing
+         an alternate stream.
+
+2020-01-14 14:51:07 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: use output caps to compute buffer size
+         In interlace-mode=alternate the input buffers have half the size of the
+         output ones as each field has its own buffer.
+
+2020-02-29 08:10:56 -0500  Jennifer Berringer <berringerjennifer@gmail.com>
+
+       * gst/audioparsers/gstflacparse.c:
+         flacparse: fix broken reordering of flac metadata
+         Each FLAC metadata block starts with a flag denoting whether it is the
+         last metadata block. The existing flacparse code moves any existing
+         VORBISCOMMENT block to immediately follow the STREAMINFO block without
+         changing any block's last-metadata-block flag. If no VORBISCOMMENT block
+         exists, it created one with the last-metadata-block flag set to true.
+         This results in gstflacdec sometimes giving bad headers to libflac when
+         trying to play perfectly valid FLAC files depending on the file's
+         metadata ordering. Depending on the contents of the other metadata
+         blocks, current versions of libflac may or may not return
+         FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER when given this broken
+         metadata. This is most noticeable with files that have a large cover art
+         image attached where VORBISCOMMENT is the very last metadata block with
+         no PADDING afterwards.
+         This patch changes that behavior so that:
+         1. For FLAC files that already have a VORBISCOMMENT block, the metadata
+         order is preserved.
+         2. For FLAC files that do not have a VORBISCOMMENT block, the generated
+         dummy VORBISCOMMENT is placed immediately after STREAMINFO and
+         inherits the last-metadata-block flag from STREAMINFO.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/484
+
+2020-02-27 14:50:51 +0900  Yeongjin Jeong <yeongjin.jeong@navercorp.com>
+
+       * tests/check/elements/flvmux.c:
+         tests: flvmux: Instead of using the testclock, just send eos event for drain
+         When using the testclock for determining clock in test, it is sometimes observed
+         that the clock entry is not registered in time by the aggregator. So deadlock occurs
+         between the aggregator and the test thread.
+
+2020-02-28 14:23:51 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Try to infer useful header values for raw audio if the sound sample descriptions contain zero values
+
+2020-02-28 14:00:51 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Also use the enda atom for determining endianess of in32, fl32 and fl64 formats
+         Previously it was only used for in24.
+
+2020-02-28 13:59:42 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix up header information for various fixed-format raw audio formats
+         Sometimes the headers contain useless, wrong or zero values for e.g. the
+         sample size with these formats. There's only a single valid value for
+         them so let's set these instead.
+
+2020-02-28 13:59:06 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't print "unhandled type" warnings for various other raw audio fourccs
+
+2020-02-28 13:57:37 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Add some more raw audio fourccs to the header instead of duplicating them
+
+2020-02-25 21:14:54 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Don't use glib format modifiers with sscanf
+         We do not have a way to know the format modifiers to use with string
+         functions provided by the system. G_GUINT64_FORMAT and other string
+         modifiers only work for glib string formatting functions. We cannot
+         use them for string functions provided by the stdlib. See:
+         https://developer.gnome.org/glib/stable/glib-Basic-Types.html#glib-Basic-Types.description
+         ```
+         ../gst/rtpmanager/gstrtpjitterbuffer.c: In function 'gst_jitter_buffer_sink_parse_caps':
+         ../gst/rtpmanager/gstrtpjitterbuffer.c:1523:32: error: unknown conversion type character 'l' in format [-Werror=format=]
+         || sscanf (mediaclk, "direct=%" G_GUINT64_FORMAT, &clock_offset) != 1)
+         ^~~~~~~~~~
+         In file included from /home/nirbheek/cerbero/build/dist/windows_x86/include/glib-2.0/glib/gtypes.h:32,
+         from /home/nirbheek/cerbero/build/dist/windows_x86/include/glib-2.0/glib/galloca.h:32,
+         from /home/nirbheek/cerbero/build/dist/windows_x86/include/glib-2.0/glib.h:30,
+         from /home/nirbheek/cerbero/build/dist/windows_x86/include/gstreamer-1.0/gst/gst.h:27,
+         from /home/nirbheek/cerbero/build/dist/windows_x86/include/gstreamer-1.0/gst/rtp/gstrtpbuffer.h:27,
+         from ../gst/rtpmanager/gstrtpjitterbuffer.c:108:
+         /home/nirbheek/cerbero/build/dist/windows_x86/lib/glib-2.0/include/glibconfig.h:69:28: note: format string is defined here
+         #define G_GUINT64_FORMAT "llu"
+         ^
+         ../gst/rtpmanager/gstrtpjitterbuffer.c:1523:32: error: too many arguments for format [-Werror=format-extra-args]
+         || sscanf (mediaclk, "direct=%" G_GUINT64_FORMAT, &clock_offset) != 1)
+         ^~~~~~~~~~
+         ```
+         See also: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/379
+
+2020-02-24 15:25:07 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Add support for 8k resolutions in prefill mode with ProRes
+
+2020-02-25 11:06:43 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/rtptimerqueue.c:
+         rtpjitterbuffer: Include string.h for memcpy() / memset()
+         Usually something else is pulling it in somehow already, but not on
+         Windows.
+
+2020-02-24 13:06:27 +0000  Håvard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: fix crash when no extension-header present for twcc
+
+2020-02-21 09:34:30 +0100  Johan Bjäreholt <johanbj@axis.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroska-mux: Fix incorrect rounding of timestamps
+         Previously we saved the buffer_timestamp straight into
+         mux->cluster_time. Since the cluster time saved into the file does not
+         have as high precision as GstClockTime depending on the timecodescale
+         the rounding of relative_timestamp was invalid as mux->cluster_time
+         which it was calculated relative to was not equal to the cluster time
+         written to the matroska file.
+         Example of "mkvinfo -v" of how it looks before and after this change in
+         an scenario where previously timestamps got out of order because of this
+         issue.
+         Notice the timestamp of the SimpleBlock right before and right after the
+         Cluster now being in order. The consequence of this however is that the
+         cluster timestamp is not necessarily the same as the timestamp of the
+         first buffer in the cluster however (in case it's rounded up).
+         Before
+         | + SimpleBlock (track number 1, 1 frame(s), timecode 126.922s = 00:02:06.922)
+         |  + Frame with size 432
+         | + SimpleBlock (track number 2, 1 frame(s), timecode 126.933s = 00:02:06.933)
+         |  + Frame with size 329
+         | + SimpleBlock (track number 2, 1 frame(s), timecode 126.955s = 00:02:06.955)
+         |  + Frame with size 333
+         |+ Cluster
+         | + Cluster timecode: 126.954s
+         | + Cluster previous size: 97344
+         | + SimpleBlock (key, track number 1, 1 frame(s), timecode 126.954s = 00:02:06.954)
+         |  + Frame with size 61239
+         | + SimpleBlock (track number 2, 1 frame(s), timecode 126.975s = 00:02:06.975)
+         |  + Frame with size 338
+         After
+         | + SimpleBlock (track number 1, 1 frame(s), timecode 135.456s = 00:02:15.456)
+         |  + Frame with size 2260
+         | + SimpleBlock (track number 2, 1 frame(s), timecode 135.468s = 00:02:15.468)
+         |  + Frame with size 332
+         | + SimpleBlock (track number 2, 1 frame(s), timecode 135.490s = 00:02:15.490)
+         |  + Frame with size 335
+         |+ Cluster
+         | + Cluster timecode: 135.489s
+         | + Cluster previous size: 158758
+         | + SimpleBlock (key, track number 1, 1 frame(s), timecode 135.490s = 00:02:15.490)
+         |  + Frame with size 88070
+         | + SimpleBlock (track number 2, 1 frame(s), timecode 135.511s = 00:02:15.511)
+         |  + Frame with size 336
+
+2020-02-19 15:59:19 +1100  Jake Barnes <jake@vivi.io>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Fix cookies property
+         Disable session sharing and cookie jar when cookies property is set.
+         The cookie jar actually replaces or removes any existing Cookie header
+         set on the message, so the cookies property was effectively being
+         ignored. There doesn't appear to be a way to inject the cookies into the
+         jar without having to specify matching domains etc., so it's not
+         possible to simulate the old behaviour of unconditionally sending the
+         cookies with all messages, besides simply disabling the cookie jar.
+
+2020-02-20 09:06:10 +0100  Stefano Buora <sbuora@marchnetworks.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: remove useless function calls
+         Comparing gst_rtspsrc_loop_interleaved and gst_rtspsrc_loop_udp, and investigating on timeout issues, it sounds like a piece of code has been originally copied from udp to the interleaved one. The timeout variable is never used inside the interleaved one. No side effect has been seen in the removed function calls.
+         The debug message removed is pointless as the timeout used is "src->tcp_timeout" that is fixed.
+         The presence of the two timeout drove my team in investigating if the reference to the tcp_timeout was correct (it is). Hence we removed the misleading reference to the local timeout variable.
+
+2020-02-20 13:43:13 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: fix typo setting max-dropout/misorder-time
+         we were setting the max-dropout-time to the value of the
+         max-misorder-time which by default has a factor of 30 difference in
+         value.
+
+2020-02-19 20:27:54 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Parse VP Codec Configuration Box
+         The VP Codec Configuration Box (vpcC) contains vp9 profile and
+         colorimetry information. Especially the profile information might
+         be useful for downstream to select capable decoder element.
+
+2020-02-18 18:36:36 +0900  Yeongjin Jeong <yeongjin.jeong@navercorp.com>
+
+       * tests/check/elements/flvmux.c:
+         tests: flvmux: Add test for rollover timestamp
+         The timestamps that exceed uint32 maximum value should be handled to rollover.
+
+2020-02-18 14:58:00 +0900  Yeongjin Jeong <yeongjin.jeong@navercorp.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Support rollover in timestamp
+         For live streams, if we keep the stream for a long time, the timestamp
+         will be larger than max_uint32. In that case, timestamp should be handled
+         as a rollover timestamp rather than a backward timestamp.
+
+2020-02-17 15:03:28 +0100  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: don't use the timer-object after JBUF_UNLOCK
+         It could have been freed (rtp_timer_free) in the meantime.
+
+2019-06-29 18:06:11 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/meson.build:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtpmanager/rtpstats.c:
+       * gst/rtpmanager/rtpstats.h:
+       * gst/rtpmanager/rtptwcc.c:
+       * gst/rtpmanager/rtptwcc.h:
+       * tests/check/elements/rtpsession.c:
+         rtpmanager: Google Transport-Wide Congestion Control RTP Extension
+         Generating and parsing the RTCP-messages described in:
+         https://tools.ietf.org/html/draft-holmer-rmcat-transport-wide-cc-extensions-01
+
+2020-02-14 10:08:05 +0000  Håvard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpfunnel.c:
+       * tests/check/elements/rtpfunnel.c:
+         rtpfunnel: various cleanups
+         * Organize GstRtpFunnelPad and GstRtpFunnel separately
+         * Use G_GNUC_UNUSED instead of (void) casts
+         * Don't call an event "caps"
+         * Use semicolons after GST_END_TEST (helps gst-indent)
+
+2020-01-29 23:51:45 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Merge sample tables for raw audio streams with one container sample per audio sample
+         Instead of having chunks with one sample per raw audio sample, have
+         chunks with a single sample that contains lots of raw audio samples. If
+         necessary these are still split again later when reading the stream.
+         With this we are allocating a lot less memory for the parsed sample
+         tables and can play files that previously triggered our limit of 200MB
+         for the sample table. For example, one file here would previously
+         allocate 3.5GB for the sample table and now only allocates 70KB.
+
+2020-01-13 11:55:42 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Add a minimum buffer size for raw audio to not output one buffer per frame
+         Outputting 48000 buffers per second is not a good idea performance-wise.
+         If a container sample is less than 1024 raw audio frames, combine
+         multiple samples to get at least 1024 raw audio samples as long as
+         they're stored contiguous in the file.
+         For the other direction, if a container sample contains more than 4096
+         samples there is already code for splitting them up.
+         Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692750
+
+2020-02-11 21:52:41 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: fix requested range
+         When the server replies with a range "now-", it is presumed to
+         be a "live" stream and we should request a similar range.
+         This was the case prior to my refactoring to make use of
+         gst_rtsp_range_to_string in 5f1a732bc7b76a6f1b8aa5f26b6e76fbca0261c7,
+         this commit restores the behaviour for that case.
+
+2017-07-13 13:49:07 +0200  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtpmanager/gstrtpptdemux.c:
+       * tests/check/elements/rtpptdemux.c:
+       * tests/check/meson.build:
+         rtpptdemux: set payload to caps inside gst_rtp_pt_demux_get_caps
+         Refactoring to remove duplicate code and add test
+
+2017-03-16 20:57:54 +0100  Stian Selnes <stian@pexip.com>
+
+       * gst/rtpmanager/gstrtpptdemux.c:
+         rtpptdemux: Fix debug to use GST_DEBUG_OBJECT
+
+2016-09-14 16:49:26 +0200  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: use max-streams on rtpssrcdemux
+         The proper way of capping on max-streams is to do it in rtpssrcdemux.
+         This patch uses the newly introduced property on rtpssrcdemux. Previous
+         behavior would not prevent rtpssrcdemux spawning new pads for every new
+         ssrc and potentialy causing performance trouble during teardown.
+
+2017-01-18 14:32:03 +0000  John Bassett <john.bassett@pexip.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * tests/check/elements/rtpssrcdemux.c:
+         rtpssrcdemux: Handle RTCP APP packets
+         Fix crash when processing RTCP APP packets.
+
+2017-01-12 16:05:59 +0000  John Bassett <john.bassett@pexip.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * tests/check/elements/rtpssrcdemux.c:
+         rtpssrcdemux: Bad RTP/RTCP packet is not fatal
+         When used for processing bundled media streams within rtpbin the rtpssrcdemux element may
+         receive bad RTP and RTCP packets, these should not be treated as a fatal error.
+
+2016-09-14 16:41:02 +0200  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * gst/rtpmanager/gstrtpssrcdemux.h:
+       * tests/check/elements/rtpssrcdemux.c:
+         rtpssrcdemux: introduce max-streams property
+         The property is useful against atacks when the sender changes SSRC for
+         every RTP packet. The property with the same name introduced in rtpbin
+         was not enough, because we still can end up with thousands of pads
+         allocated in rtpssrcdemux.
+
+2020-02-10 14:22:47 +0100  Havard Graff <havard@pexip.com>
+
+       * tests/check/elements/rtpssrcdemux.c:
+         rtpssrcdemux: fix test warnings
+
+2020-02-07 10:03:49 +0100  Alexander Lapajne <alexander.lapajne@axis.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix for segmentation fault when handling set/get_parameter requests
+         gstrtspsrc uses a queue, set_get_param_q, to store set param and get
+         param requests. The requests are put on the queue by calling
+         get_parameters() and set_parameter(). A thread which executs in
+         gst_rtspsrc_thread() then pops requests from the queue and processes
+         them. The crash occured because the queue became empty and a NULL
+         request object was then used. The reason that the queue became empty
+         is that it was popped even when the thread was NOT processing a get
+         parameter or set parameter command. The fix is to make sure that the
+         queue is ONLY popped when the command being processed is a set
+         parameter or get parameter command.
+
+2019-09-27 16:52:06 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/rtpsource.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Add test for packet rate maths
+
+2019-09-10 19:03:02 +0100  olivier.crete@collabora.com <Olivier Crête>
+
+       * gst/rtpmanager/rtpstats.c:
+         rtpstats: Base the packet rate average on the packet rate itself
+         Do this so that the average update speed is in time instead of varying
+         based on the actual packet arrival rate.
+
+2019-09-10 18:59:02 +0100  olivier.crete@collabora.com <Olivier Crête>
+
+       * gst/rtpmanager/rtpstats.c:
+         rtpstats: Don't save the ts & seqnum if the avg is not updated
+         This makes it update correctly when you have more than one packet per
+         frame.
+
+2020-02-05 12:48:45 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: map GST_VIDEO_FORMAT_BGR15
+         The GstVideoFormat to v4l2 conversion was missing for BGR15.
+
+2020-02-05 12:00:00 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: fix crash on invalid caps
+         gst_v4l2_object_set_format_full() was returning FALSE without setting
+         an error. Caller code (gst_v4l2src_fixate()) was then derefing a
+         NULL pointer when trying to handle the error.
+
+2020-01-27 16:00:30 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Include actual sink element in the fragment-opened/closed messages
+         If not configuring the sinks via the "location" property this can be
+         useful to know for which sink the fragment was actually opened/closed,
+         especially if finalization of the fragments is happening asynchronously.
+
+2020-01-29 12:05:07 +0100  Juergen Werner <pogojotz@gmx.net>
+
+       * gst/rtpmanager/rtpjitterbuffer.c:
+         rtpjitterbuffer: fix scaling from RTP-time to NTP-time
+         The scaling was inverse.
+
+2020-01-27 23:59:05 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtprtxsend.c:
+       * gst/rtpmanager/gstrtprtxsend.h:
+       * tests/check/elements/rtprtx.c:
+         rtprtxsend: allow generic input caps
+         When connected to an upstream rtpfunnel element, payload-type,
+         ssrc and clock-rate will not be present in the received caps.
+         rtprtxsend can already deal with only the clock rate being
+         present there, a new property is exposed to allow users to
+         provide a payload-type -> clock-rate map, this enables the
+         use of the max-size-time property for bundled streams.
+
+2020-01-27 15:17:27 -0800  Julien Isorce <jisorce@oblong.com>
+
+       * ext/vpx/gstvpxenc.c:
+         vp8enc/vp8enc: set 1 for the default value of VP8E_SET_STATIC_THRESHOLD
+         In Google webrtc, the setting VP8E_SET_STATIC_THRESHOLD is set to 1
+         (except when the content is known to be static very often in which
+         case it is set to 100, i.e. when sharing screen with Google Hangouts).
+         The cpu usage drops a lot when using 1 for above setting because it
+         allows the encoder to skip static/low content blocks. The current
+         0 default value uses too much cpu and confuses the user regarding
+         the cpu usage expectations. User expects vp8enc to use low cpu by
+         default.
+         Documentation of VP8E_SET_STATIC_THRESHOLD:
+         https://github.com/webmproject/libvpx/blob/master/vpx/vp8cx.h#L188
+         chromium/webrtc:
+         https://chromium.googlesource.com/external/webrtc/+/b484ec0082948ae086c2ba4142b4d2bf8bc4dd4b/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc#822
+         Closes #58
+
+2020-01-27 17:16:02 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/jpeg/gstjpegdec.c:
+         jpegdec: Check return value of gst_buffer_map()
+         Without this check, the element will crash instead of returning an
+         error.
+
+2020-01-27 15:52:42 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Check the correct sink class for the existence of the "location" property
+
+2020-01-13 11:58:12 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Always prefer information from v1/v2 sound sample description over sample description entry
+         ffmpeg is doing the same and various files in the wild have bogus
+         information in the sample description if the same information is also
+         duplicated afterwards in the v1/v2 sound sample desription.
+         Previously we only did this for non-raw audio due to
+         https://bugzilla.gnome.org/show_bug.cgi?id=374914
+         but this specific file is already worked around differently. It still
+         works after this change.
+         Also remove ad-hoc GST_READ_DOUBLE_BE re-implementation and move the
+         switch for legacy audio formats after reading all the sample
+         descriptions as we want to override the values from there.
+
+2020-01-13 20:02:58 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/avi/gstavimux.c:
+       * gst/avi/gstavimux.h:
+         avimux: Add support for >2 raw audio channels
+         For this case write a WAVEFORMATEXTENSIBLE header and also reorder the
+         raw audio channels to the AVI channel order if needed.
+
+2020-01-13 20:07:01 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/wavenc/gstwavenc.c:
+         wavenc: Fix writing of the channel mask with >2 channels
+         The channel position is an enum but the conversion code assumed it's a
+         mask. Convert accordingly.
+
+2020-01-10 16:30:33 +0100  Kristofer Björkström <kristofb@axis.com>
+
+       * gst/rtp/gstrtph265pay.c:
+       * tests/check/elements/rtph265.c:
+         rtph265pay: TID for NALU type 48 was always set to 7
+         A typo bug: | instead of & resulted in TID alwasy being set to 7
+         for the aggregated NALU of type 48
+
+2020-01-10 14:54:26 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+       * gst/imagefreeze/gstimagefreeze.h:
+         imagefreeze: Add support for replacing the output buffer
+         By default imagefreeze will still reject new buffers after the first one
+         and immediately return GST_FLOW_EOS but the new allow-replace property
+         allows to change this.
+         Whenever updating the buffer we now also keep track of the configured
+         caps of the buffer and from the source pad task negotiate correctly
+         based on the potentially updated caps.
+         Only the very first time negotiation of a framerate with downstream is
+         performed, afterwards only the caps themselves apart from the framerate
+         are updated.
+
+2020-01-09 18:43:02 +0000  Alicia Boya García <ntrrgc@gmail.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix race on pad reconnection
+         Elements emitting frames through several srcpads should use a
+         flow combiner to aggregate the chain returns and therefore only return
+         GST_FLOW_NOT_LINKED to upstream when all the downstream pads have
+         received GST_FLOW_NOT_LINKED.
+         In addition to that, in order to handle pads being relinked downstream,
+         the flow combiner should be reset in response to RECONFIGURE events.
+         This ensures that a both srcpads process a chain operation before a
+         GST_FLOW_NOT_LINKED can be propagated upstream (which would usually stop
+         the pipeline).
+         Otherwise, in a configuration with two srcpads, only one linked at a
+         time, after the relink the element could chain data through the now
+         unlinked pad and the flow combiner would resolve as GST_FLOW_NOT_LINKED
+         (stopping the pipeline) just because the now linked pad has not been
+         chained yet to update the flow combiner.
+         This patch adds handling of RECONFIGURE events to qtdemux. Also, since
+         this event handling causes the flow combiner to be used from a thread
+         other than the qtdemux streaming thread, usages of the flow combiner
+         has been guarded by the object lock.
+
+2020-01-07 01:20:24 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Fix assertion failure on set_property()
+         GValue might have null object.
+         (gst-inspect-1.0:10304): GStreamer-CRITICAL ...
+         gst_object_ref_sink: assertion 'object != NULL' failed
+
+2020-01-03 15:16:02 +0100  Daniel Molkentin <daniel@molkentin.de>
+
+       * gst/videocrop/gstvideocrop.c:
+         videocrop: allow properties to be animated by GstController
+
+2019-12-24 08:24:51 -0500  Aaron Boxer <aaron.boxer@collabora.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: improved handling of control concatenation with base
+         Also, `control_url` variable has been renamed to `control_path`,
+         as it is actually a path.
+
+2019-12-06 12:34:15 -0500  Aaron Boxer <aaron.boxer@collabora.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: append aggregate control string to base URL before query string
+         Appending control string to end of query changes meaning of query string
+         Fixes #650
+
+2019-12-28 23:01:19 +0000  Eric Marks <bigmarkslp@gmail.com>
+
+       * ext/aalib/gstaasink.c:
+       * ext/aalib/gstaatv.c:
+       * ext/aalib/gstaatv.h:
+       * ext/aalib/meson.build:
+       * ext/libcaca/gstcacasink.c:
+       * ext/libcaca/gstcacatv.c:
+       * ext/libcaca/gstcacatv.h:
+       * ext/libcaca/meson.build:
+         aasink & cacasink: add filter aatv & cacatv
+         Add transform filter capabilities to aasink and cacasink in the form of new elements aatv and cacatv.
+
+2019-06-06 11:03:34 +0200  Niels De Graef <niels.degraef@barco.com>
+
+       * gst/alpha/gstalpha.h:
+       * gst/alpha/gstalphacolor.h:
+         alpha: Cleanup using G_DECLARE_FINAL_TYPE
+         We started depending on GLib 2.44, so we can clean up all the GObject
+         boilerplate macros.
+
+2019-12-18 16:07:18 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/shout2/gstshout2.c:
+       * gst/multipart/multipartmux.c:
+       * sys/ximage/gstximagesrc.c:
+         good: use of g_value_dup_string
+         Use helper method to get string from GValue.
+
+2019-12-19 23:48:09 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * tests/check/elements/rtpbin.c:
+         rtpbin: fix shutdown crash in rtpbin
+         The key is to make sure the jitterbuffer is set to NULL *before* the
+         ptdemux.
+         The race that existed would basically happen when ptdemux had reached
+         READY, and the jitterbuffer would then push a buffer, triggering a new
+         pad with a new payloadtype being added and ghosted to the rtpbin itself.
+         However, the srcpad of the ptdemux would now be inactive, and all the
+         sticky-event pushed on it would be swallowed, not allowing any to reach
+         the ghost-pad. Then the buffer in-flight would come to the ghostpad,
+         and we would assert that a buffer arrived before the necessary
+         events.
+         By simply re-ordering the state-changes, we ensure that there will be
+         no buffer racing into the ptdemux while its state is being changed,
+         and the problem disappears completely.
+         Notice also that there is not point in disconnecting the signals on the
+         ptdemux before this point, since we need the push-thread to settle
+         down before we can do this in a non-racy way.
+
+2019-09-12 14:22:10 -0600  Aaron Boxer <aaron.boxer@collabora.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: avoid seek DISCONT when only rate changes in same direction
+         Not setting DISCONT avoids a noticable delay when seeking
+         with only rate changing, in the same direction as current
+         rate.
+
+2019-12-10 18:13:11 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: Remove deprecated GTimeVal
+         GTimeVal won't work past 2038
+
+2019-12-10 17:13:45 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * sys/osxaudio/gstosxcoreaudiohal.c:
+         osxaudio: Remove deprecated GTimeVal
+
+2019-12-18 12:19:27 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/avi/gstavimux.c:
+         avimux: Add support for S24LE and S32LE raw audio
+         avidemux already handles this correctly.
+
+2019-12-16 21:07:08 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/avi/gstavimux.c:
+         avimux: Allow muxing v210 video into AVI
+         avidemux already handles this.
+
+2019-12-16 18:43:44 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Don't replace video codec data when we receive a PAR
+         Receiving a pixel-aspect-ratio should trigger a caps change, but not
+         replace the existing video codec tag
+
+2019-12-12 20:20:35 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: protect access to GstElement.sinkpads
+
+2019-12-03 15:30:06 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+       * tests/check/elements/qtmux.c:
+         qtmux: port to GstAggregator
+
+2019-12-16 13:03:51 +0100  Joakim Johansson <joakimj@axis.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         gstrtspsrc: Add missing lock on free set_get_param_q
+         Otherwise is it possible to get a crash in gst_rtspsrc_set_parameter.
+
+2019-12-12 18:53:00 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Increment fragment_id even if no fragment location was provided
+         Applications might handle locations and generally configuration of the
+         sink by themselves instead of having splitmuxsink set the location on
+         the sink. Nonetheless it makes sense to increment the fragment_id that
+         is passed to the signal so that applications know which fragment is
+         requested.
+
+2019-12-12 10:59:35 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Use the last DTS for the metadata timestamp
+         This avoids creating a timestamp regression during a stream.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/429
+
+2019-12-11 17:30:50 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: send GAP events for lagging audio and video streams too
+         The logic is taken straight from matroskademux, see
+         77403d0afee635f2de6c2e53a23e1f50ad0d00fa
+
+2019-12-10 23:48:35 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/flv/gstflvmux.c:
+       * meson.build:
+         flvmux: Use thread-safe gmtime_r if available
+         gmtime on *nix is not thread-safe.
+
+2019-12-05 14:58:40 +0000  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: provides a start-index property
+         Allow to change the fragment-id start index.
+
+2019-12-03 11:36:07 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * ext/qt/meson.build:
+         qmlglsink: fix build on EGL platform without X11 headers
+         If Mesa is built without X11 headers, building against Mesa EGL headers
+         requires a dependency on egl.pc, to define MESA_EGL_NO_X11_HEADERS.
+         This fixes a build error when compiling ext/qt/gstqtglutility.cc:
+         In file included from /usr/include/EGL/egl.h:39,
+         from /usr/include/gstreamer-1.0/gst/gl/egl/gstegl.h:44,
+         from ../gst-plugins-good-1.16.1/ext/qt/gstqtglutility.cc:43:
+         /usr/include/EGL/eglplatform.h:124:10: fatal error: X11/Xlib.h: No such file or directory
+
+2019-12-04 01:03:49 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpjpegdepay.c:
+         rtpjpegdepay: outputs framed jpeg
+         Add parsed=true to output caps, as we always output
+         whole frames, timestamped and all. Means also that
+         the output can be decoded by avdec_mjpeg wihout
+         plugging an extra parser (which has no rank).
+
+2019-12-03 13:47:22 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Correct metadata handling in file and stream mode
+         In file mode, only push one onMetaData at the start of the stream.
+         In stream mode, always push complete onMetaData. They get replaced, not
+         merged.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/418
+
+2019-12-03 13:46:09 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Don't calculate duration in streamable mode
+         There's no header to rewrite, so the duration is left unused.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/418
+
+2016-11-30 15:55:01 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtp/gstrtpL16depay.c:
+         rtpL16depay: don't crash if data is not modulo channels*width
+
+2019-12-02 19:00:45 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+       * pkgconfig/gstreamer-plugins-good-uninstalled.pc.in:
+       * pkgconfig/meson.build:
+         pkgconfig: remove gst-plugins-good-1.0-uninstalled.pc
+         This was never installed and it was only used by the uninstalled
+         autotools dev environment to locate the -good plugins for use
+         in unit tests in gstreamer modules higher up the stack.
+         It is no longer needed now that we no longer have an autotools build.
+
+2017-10-10 15:45:28 +0200  Håvard Graff <havard.graff@gmail.com>
+
+       * pkgconfig/meson.build:
+         meson.build: use join_paths() on prefix
+         So that "/" are correct on Windows.
+
+2017-06-30 09:48:58 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtp/gstrtpopuspay.c:
+         rtpopuspay: use baseclass allocator for buffers
+         That way we get some of the meta -> rtp-extension goodies.
+
+2019-11-29 20:46:26 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * ext/vpx/gstvp9dec.c:
+         vp9dec: Fix broken 4:4:4 8bits decoding
+         VPX_IMG_FMT_I444 pixel format with sRGB colorspace means
+         GBR data.
+         Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/651
+
+2019-10-18 17:45:43 +0200  Havard Graff <havard@pexip.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtpsession: add test for requesting FIR after having requested PLI
+
+2019-11-26 15:00:18 +0100  Havard Graff <havard@pexip.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: make test more stable
+
+2019-11-29 14:23:49 +0100  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: add locking for clear-pt-map
+         ...or it will segfault from time to time...
+
+2018-05-31 10:29:43 +0200  Linus Svensson <linussn@axis.com>
+
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-mux.h:
+       * gst/matroska/matroska-read-common.c:
+         matroskamux: Add property to set DateUTC
+         Add a property that makes it possible for an application to set the
+         DateUTC header field in matroska files. This is useful for live feeds,
+         where the DateUTC header can be set to a UTC timestamp, matching the
+         beginning of the file.
+         Needs gstreamer!323
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/481
+
+2018-05-31 11:20:36 +0200  Linus Svensson <linussn@axis.com>
+
+       * gst/matroska/ebml-ids.h:
+       * gst/matroska/ebml-read.c:
+       * gst/matroska/ebml-write.c:
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Use nanosecond precision for DateUTC
+         DateUTC is specified with nanosecond precision in matroska, make use of
+         that.
+
+2018-10-17 02:28:13 +0000  Nicolas Dufresne <nicolas@ndufresne.ca>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2bufferpool.h:
+         v4l2bufferpool: Queue number of allocated buffers to capture
+         Before we do streamon, we queue all capture buffers by calling
+         resurrect. When the driver supports CREATE_BUFS, this would lead
+         to buffers being allocated till the maximum of 32 is reached.
+         Instead, we now save the number of allocated buffers and queue this
+         amount.
+
+2019-11-19 14:23:48 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Pass the right size to gst_collect_pads_add_pad
+         We were lucky that GstMatroskamuxPad is larger than GstMatroskaPad.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/393
+
+2019-11-18 13:27:42 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Workaround bad TRY_FMT colorimetry implementation
+         libv4l2 reset the colorpace to 0 and does not do any request to the
+         driver. This yields an invalid colorspace which currently cause a
+         negotiation failure. This workaround by ignoring bad values during the
+         TRY_FMT step.
+
+2019-11-04 17:18:30 +0800  aogun <gun.ao@magewell.com>
+
+       * gst/audioparsers/gstaacparse.c:
+         aacparse: fix wrong offset of adts channel
+
+2019-10-07 12:45:00 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Don't take lock during posting message
+         An application might try to access splitmuxsink from sync message handler
+         by g_object_{get,set} which takes lock also. In general, we don't
+         take lock around message handler.
+
+2019-09-12 15:21:24 -0400  Scott Kanowitz <skanowitz@echo360.com>
+
+       * ext/jpeg/gstjpegdec.c:
+         jpegdec: Fix incorrect logic in EOI tag detection
+         This change fixes the reversed logic in the EOI tag detection
+         code.
+
+2019-08-26 08:03:24 +0200  Niels De Graef <nielsdegraef@gmail.com>
+
+       * ext/cairo/gstcairooverlay.c:
+       * ext/raw1394/gstdv1394src.c:
+       * ext/shout2/gstshout2.c:
+       * gst/rtp/rtpstorage.c:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpptdemux.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtsp/gstrtpdec.c:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/udp/gstdynudpsink.c:
+       * gst/udp/gstmultiudpsink.c:
+       * sys/v4l2/tuner.c:
+       * sys/v4l2/tunerchannel.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-11-14 17:33:08 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Check the exit condition after executing timers
+         The do_expected_timeout() function may release the JBUF_LOCK, so we need
+         to check if nothing wanted the timer thread to exit after this call.
+         The side effect was that we may endup going back into waiting for a timer
+         which will cause arbitrary delay on tear down (or deadlock when test
+         clock is used).
+         Fixes #653
+
+2019-11-14 17:20:51 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Check exit condition immediately after JBUF_WAIT
+         JBUF_WAIT_QUEUE drops the JBUF_LOCK, which means the stop condition
+         for the chain function may have changed (change_state to NULL). Check
+         this immediately after the wait so that we don't delay shutting down.
+
+2019-11-12 17:28:22 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/videocrop/gstvideocrop.c:
+         videocrop: Also update the coordinate when in-place
+         This update is needed when the output caps is not changed (e.g. we are
+         moving a viewport around).
+         Fixes #669
+
+2019-11-11 13:19:08 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/videocrop/gstvideocrop.c:
+         videocrop: Don't always re-run the allocation query
+         When in-place, running an allocation is not useful since videocrop
+         is not implicated in the allocation. So only force the allocation
+         query for the case it was in passthrough. This is needed since the
+         change in the crop region will likely pull us out of this mode. For the
+         case we where neither in passthrough or in-place, the allocation query
+         is already ran by the baseclass, so nothing special is needed.
+         This fixes performance issues when changing the crop region per frame.
+         This was reproduced using videocrop2-test.
+
+2019-11-11 13:18:52 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/videocrop/gstvideocrop.c:
+         videocrop: Cleanup spurious assignment
+         These are just writing the same thing a second time.
+
+2018-11-07 09:00:02 +0100  Michael Olbrich <m.olbrich@pengutronix.de>
+
+       * ext/jpeg/gstjpegdec.c:
+       * ext/jpeg/gstjpegdec.h:
+         jpegdec: don't overwrite the last valid line
+         If the the height is not a multiple of the macro block size then the memory
+         of the last line is reused for all extra lines. This is no problem if the
+         last line is duplicated properly. However, if the extra lines are not
+         initialized properly during encoding, then the last visible line is
+         overwritten with undefined data.
+         Use a extra buffer to avoid this problem.
+
+2019-11-07 12:28:58 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: add fakesink support
+         fakesink does not support "location" property and was generating
+         a warning.
+
+2018-12-12 19:07:39 +0300  Sergey Nazaryev <sergey.nazaryev@cogentembedded.com>
+
+       * gst/udp/gstmultiudpsink.c:
+         multiudpsink: don't lose scope_id
+
+2019-11-05 21:41:55 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/vpx/meson.build:
+         vpx: Error out if enabled and no features found
+         Seee: https://gitlab.freedesktop.org/gstreamer/cerbero/issues/200
+
+2019-05-25 21:19:21 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: update match_buffer_layout() debug messages
+         It's no longer used only to try importing buffers.
+
+2019-05-23 10:49:39 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: try matching buffer layout from downstream
+         Ask v4l2 to produce buffers matching the buffer layout requested
+         downstream.
+
+2019-05-21 10:31:46 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: factor out gst_v4l2_object_match_buffer_layout()
+         No semantic change.
+
+2019-10-20 12:17:25 +0200  Havard Graff <havard@pexip.com>
+
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: make sure not to drop packets based on skew
+         One of the jitterbuffers functions is to try and make sense of weird
+         network behavior.
+         It is quite unhelpful for the jitterbuffer to start dropping packets
+         itself when what you are trying to achieve is better network resilience.
+         In the case of a skew, this could often mean the sender has restarted
+         in some fashion, and then dropping the very first buffer of this "new"
+         stream could often mean missing valuable information, like in the case
+         of video and I-frames.
+         This patch simply reverts back to the old behavior, prior to https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/commit/8d955fc32b552b2db933c67f3cfa31d987f36b81
+         and includes the simplest test I could write to demonstrate the behavior,
+         where a single packet arrives "perfectly", then a 50ms gap happens,
+         and then two more packets arrive in perfect order after that.
+         # Conflicts:
+         #     tests/check/elements/rtpjitterbuffer.c
+
+2019-04-17 12:40:22 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2transform.c:
+         v4l2transform: use alignments from upstream when importing on sink
+         Try configuring the v4l2 output with the alignments from upstream when
+         importing its buffers. This allows us to support importing with
+         non-standard strides and/or heights if supported by the driver.
+
+2019-04-17 12:25:14 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: add support for vertical padding when importing buffers
+         We were already supporting horizontal padding by setting bytesperline to
+         the buffer stride but not vertical one.
+         We are now updating the format height with the padded height and crop to
+         the actual video resolution if needed.
+
+2019-04-17 11:46:10 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: fix debug message if driver rejects stride
+         The 'want' and 'got' strides were inversed.
+
+2019-04-15 11:43:41 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: improve logs when importing buffers
+         Log strides and offsets from upstream.
+         Also fix a typo.
+
+2019-10-29 14:05:48 +0000  James Cowgill <james.cowgill@thinci.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: ensure pool exists before orphaning it
+         In commit e2ff87732d0b ("v4l2videodec: support orphaning") support for
+         orphaning the capture buffer pool was added when the format is
+         renegotiated. However, the commit forgot to check that a pool existed
+         before doing this. This is needed because it's possible for the format
+         to be renegotiated before a capture pool is allocated, which would
+         result in trying to orphan a NULL pool and lead to a NULL pointer
+         dereference.
+         Fix this by checking a pool exists first. If the pool doesn't exist,
+         there are no buffers to be reclaimed, so skip the allocation query in
+         that case.
+
+2019-10-25 22:03:18 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtwindow.cc:
+         qmlglsrc: read from the back buffer when use-default-fbo = TRUE
+         glReadBuffer(GL_COLOR_ATTACHMENT0) on the default framebuffer (0) is
+         invalid GL API usage and would result in a GL error being thrown.
+
+2019-10-25 21:47:01 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtsrc.cc:
+         qmlglsrc: fix vertical flip matrix
+         Some time ago libgstgl defined the majorness of matrices it uses.
+         The majorness used by qmlglsrc was incompatible with the libgstgl.
+
+2019-07-30 12:07:18 +0200  Patricia Muscalu <patricia@axis.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Fix memory leak while pushing fragmented data
+         The memory leak occurs in the case when the buffer has been
+         added to the fragment_buffers array of the current pad and
+         never been sent because of the push failure of the previous
+         buffers: moof or mdat header or fragmented buffer(s).
+
+2019-10-11 14:20:15 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/debugutils/cpureport.c:
+       * gst/debugutils/cpureport.h:
+       * gst/debugutils/progressreport.c:
+       * gst/debugutils/progressreport.h:
+       * gst/flv/gstflvmux.c:
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/qtdemux.c:
+       * gst/matroska/matroska-mux.c:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/udp/gstmultiudpsink.c:
+       * sys/v4l2/gstv4l2src.c:
+         good: Avoid usage of deprecated API
+         GTimeval and related functions are now deprecated in glib.
+         Replacement APIs have been present since 2.26
+
+2019-07-15 07:46:56 +0200  Javier Celaya <javier.celaya@flexvdi.com>
+
+       * sys/osxaudio/meson.build:
+         osxaudio: misspelled dependency
+         When building osxaudio, the required 'AudioToolbox' dependency is
+         misspelled as 'AudioToolBox', which crashes the build with error:
+         ld: framework not found AudioToolBox
+
+2019-06-09 00:43:00 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * .gitignore:
+       * .gitmodules:
+       * Makefile.am:
+       * README:
+       * autogen.sh:
+       * common:
+       * configure.ac:
+       * docs/.gitignore:
+       * ext/Makefile.am:
+       * ext/aalib/Makefile.am:
+       * ext/cairo/Makefile.am:
+       * ext/dv/Makefile.am:
+       * ext/flac/Makefile.am:
+       * ext/gdk_pixbuf/Makefile.am:
+       * ext/gtk/Makefile.am:
+       * ext/jack/.gitignore:
+       * ext/jack/Makefile.am:
+       * ext/jpeg/Makefile.am:
+       * ext/lame/Makefile.am:
+       * ext/libcaca/Makefile.am:
+       * ext/libpng/Makefile.am:
+       * ext/mpg123/Makefile.am:
+       * ext/pulse/Makefile.am:
+       * ext/qt/.gitignore:
+       * ext/qt/Makefile.am:
+       * ext/raw1394/.gitignore:
+       * ext/raw1394/Makefile.am:
+       * ext/shout2/Makefile.am:
+       * ext/soup/Makefile.am:
+       * ext/speex/Makefile.am:
+       * ext/taglib/.gitignore:
+       * ext/taglib/Makefile.am:
+       * ext/twolame/Makefile.am:
+       * ext/vpx/Makefile.am:
+       * ext/wavpack/Makefile.am:
+       * gst/Makefile.am:
+       * gst/alpha/Makefile.am:
+       * gst/apetag/Makefile.am:
+       * gst/audiofx/.gitignore:
+       * gst/audiofx/Makefile.am:
+       * gst/audioparsers/Makefile.am:
+       * gst/auparse/.gitignore:
+       * gst/auparse/Makefile.am:
+       * gst/autodetect/Makefile.am:
+       * gst/avi/.gitignore:
+       * gst/avi/Makefile.am:
+       * gst/cutter/Makefile.am:
+       * gst/debugutils/Makefile.am:
+       * gst/deinterlace/Makefile.am:
+       * gst/dtmf/Makefile.am:
+       * gst/effectv/Makefile.am:
+       * gst/equalizer/.gitignore:
+       * gst/equalizer/Makefile.am:
+       * gst/flv/Makefile.am:
+       * gst/flx/Makefile.am:
+       * gst/goom/.gitignore:
+       * gst/goom/Makefile.am:
+       * gst/goom2k1/.gitignore:
+       * gst/goom2k1/Makefile.am:
+       * gst/icydemux/Makefile.am:
+       * gst/id3demux/Makefile.am:
+       * gst/imagefreeze/Makefile.am:
+       * gst/interleave/Makefile.am:
+       * gst/isomp4/Makefile.am:
+       * gst/law/Makefile.am:
+       * gst/level/.gitignore:
+       * gst/level/Makefile.am:
+       * gst/matroska/Makefile.am:
+       * gst/monoscope/.gitignore:
+       * gst/monoscope/Makefile.am:
+       * gst/multifile/Makefile.am:
+       * gst/multipart/Makefile.am:
+       * gst/replaygain/Makefile.am:
+       * gst/rtp/Makefile.am:
+       * gst/rtpmanager/Makefile.am:
+       * gst/rtsp/.gitignore:
+       * gst/rtsp/Makefile.am:
+       * gst/shapewipe/Makefile.am:
+       * gst/smpte/Makefile.am:
+       * gst/spectrum/.gitignore:
+       * gst/spectrum/Makefile.am:
+       * gst/udp/Makefile.am:
+       * gst/videobox/Makefile.am:
+       * gst/videocrop/Makefile.am:
+       * gst/videofilter/.gitignore:
+       * gst/videofilter/Makefile.am:
+       * gst/videomixer/Makefile.am:
+       * gst/wavenc/Makefile.am:
+       * gst/wavparse/.gitignore:
+       * gst/wavparse/Makefile.am:
+       * gst/y4m/Makefile.am:
+       * m4/.gitignore:
+       * m4/Makefile.am:
+       * m4/README:
+       * m4/a52.m4:
+       * m4/aalib.m4:
+       * m4/as-ffmpeg.m4:
+       * m4/as-liblame.m4:
+       * m4/as-slurp-ffmpeg.m4:
+       * m4/check-libheader.m4:
+       * m4/freetype2.m4:
+       * m4/glib.m4:
+       * m4/gst-alsa.m4:
+       * m4/gst-artsc.m4:
+       * m4/gst-fionread.m4:
+       * m4/gst-ivorbis.m4:
+       * m4/gst-matroska.m4:
+       * m4/gst-sdl.m4:
+       * m4/gst-shout2.m4:
+       * m4/gst-sid.m4:
+       * m4/gtk.m4:
+       * m4/libfame.m4:
+       * m4/ogg.m4:
+       * m4/vorbis.m4:
+       * pkgconfig/.gitignore:
+       * pkgconfig/Makefile.am:
+       * po/.gitignore:
+       * po/Makevars:
+       * po/POTFILES:
+       * sys/Makefile.am:
+       * sys/directsound/Makefile.am:
+       * sys/oss/.gitignore:
+       * sys/oss/Makefile.am:
+       * sys/oss4/Makefile.am:
+       * sys/osxaudio/Makefile.am:
+       * sys/osxvideo/Makefile.am:
+       * sys/v4l2/Makefile.am:
+       * sys/waveform/Makefile.am:
+       * sys/ximage/Makefile.am:
+       * tests/Makefile.am:
+       * tests/check/.gitignore:
+       * tests/check/Makefile.am:
+       * tests/check/elements/.gitignore:
+       * tests/check/generic/.gitignore:
+       * tests/check/pipelines/.gitignore:
+       * tests/examples/Makefile.am:
+       * tests/examples/audiofx/.gitignore:
+       * tests/examples/audiofx/Makefile.am:
+       * tests/examples/cairo/.gitignore:
+       * tests/examples/cairo/Makefile.am:
+       * tests/examples/equalizer/.gitignore:
+       * tests/examples/equalizer/Makefile.am:
+       * tests/examples/gtk/.gitignore:
+       * tests/examples/gtk/Makefile.am:
+       * tests/examples/jack/Makefile.am:
+       * tests/examples/level/.gitignore:
+       * tests/examples/level/Makefile.am:
+       * tests/examples/qt/qmlsink/.gitignore:
+       * tests/examples/qt/qmlsrc/.gitignore:
+       * tests/examples/rtp/.gitignore:
+       * tests/examples/rtp/Makefile.am:
+       * tests/examples/rtsp/Makefile.am:
+       * tests/examples/shapewipe/.gitignore:
+       * tests/examples/shapewipe/Makefile.am:
+       * tests/examples/spectrum/.gitignore:
+       * tests/examples/spectrum/Makefile.am:
+       * tests/examples/v4l2/.gitignore:
+       * tests/examples/v4l2/Makefile.am:
+       * tests/files/Makefile.am:
+       * tests/icles/.gitignore:
+       * tests/icles/Makefile.am:
+         Remove autotools build system
+
+2019-10-13 12:46:58 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: fix wrong type cast
+         Follow-up to commit 1b752c0f !361
+
+2019-09-25 12:36:32 +0000  HuQian <huqian123hq@hotmail.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         is a typo here? gstv4l2object.c
+
+2019-10-11 12:27:12 +0000  Kevin Song <kevinbing.song@gmail.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Check stop in flush() to avoid race condition.
+         Backward playback will drain and flush every frame. Stop playback
+         when backward playback have race condition between exit thread and
+         streaming thread flush. Add one check to avoid it.
+         Fixes #639
+
+2019-10-11 10:33:20 +0800  Fuwei Tang <fuweix.tang@intel.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: fix type conversion errors
+
+2019-09-02 08:27:35 -0400  Aaron Boxer <aaron.boxer@collabora.com>
+
+       * NEWS:
+       * docs/gst_plugins_cache.json:
+       * ext/dv/gstdvdemux.c:
+       * ext/flac/gstflactag.c:
+       * ext/gdk_pixbuf/gstgdkpixbufdec.c:
+       * ext/gtk/gstgtkbasesink.c:
+       * ext/jack/gstjackaudioclient.c:
+       * ext/jpeg/Makefile.am:
+       * ext/pulse/pulsesink.c:
+       * ext/qt/qtwindow.cc:
+       * ext/raw1394/gstdv1394src.h:
+       * ext/taglib/gstid3v2mux.cc:
+       * ext/wavpack/gstwavpackenc.c:
+       * gst/audiofx/audiodynamic.c:
+       * gst/audiofx/audiofxbasefirfilter.c:
+       * gst/audiofx/audiofxbasefirfilter.h:
+       * gst/audiofx/gstscaletempo.c:
+       * gst/audiofx/gstscaletempoplugin.c:
+       * gst/autodetect/gstautodetect.c:
+       * gst/avi/gstavidemux.c:
+       * gst/avi/gstavimux.c:
+       * gst/debugutils/progressreport.c:
+       * gst/debugutils/rndbuffersize.c:
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/deinterlace/tvtime/sse.h:
+       * gst/deinterlace/tvtime/tomsmocomp/SearchLoopBottom.inc:
+       * gst/deinterlace/tvtime/tomsmocomp/StrangeBob.inc:
+       * gst/deinterlace/tvtime/tomsmocomp/WierdBob.inc:
+       * gst/deinterlace/tvtime/vfir.c:
+       * gst/dtmf/gstdtmfsrc.c:
+       * gst/dtmf/gstrtpdtmfdepay.c:
+       * gst/dtmf/gstrtpdtmfsrc.c:
+       * gst/effectv/gstedge.c:
+       * gst/effectv/gstquark.c:
+       * gst/flv/gstflvdemux.c:
+       * gst/flv/gstindex.c:
+       * gst/interleave/deinterleave.c:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux_lang.c:
+       * gst/level/gstlevel.c:
+       * gst/matroska/ebml-write.c:
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-parse.c:
+       * gst/matroska/matroska-read-common.c:
+       * gst/monoscope/monoscope.c:
+       * gst/multifile/gstmultifilesrc.c:
+       * gst/multifile/gstsplitmuxpartreader.c:
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsrc.c:
+       * gst/multifile/patternspec.c:
+       * gst/replaygain/replaygain.h:
+       * gst/rtp/README:
+       * gst/rtp/gstrtpdvdepay.c:
+       * gst/rtp/gstrtpg726pay.c:
+       * gst/rtp/gstrtpgstpay.c:
+       * gst/rtp/gstrtph261pay.c:
+       * gst/rtp/gstrtph263pay.c:
+       * gst/rtp/gstrtph263ppay.c:
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265depay.c:
+       * gst/rtp/gstrtpjpegdepay.c:
+       * gst/rtp/gstrtpjpegpay.c:
+       * gst/rtp/gstrtpmp4adepay.c:
+       * gst/rtp/gstrtpmp4gdepay.c:
+       * gst/rtp/gstrtpmp4gpay.c:
+       * gst/rtp/gstrtpmp4vpay.c:
+       * gst/rtp/gstrtpredenc.c:
+       * gst/rtp/gstrtptheoradepay.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+       * gst/rtp/gstrtpvorbisdepay.c:
+       * gst/rtp/gstrtpvrawdepay.c:
+       * gst/rtp/rtpstorage.c:
+       * gst/rtp/rtpulpfeccommon.c:
+       * gst/rtp/rtpulpfeccommon.h:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpptdemux.c:
+       * gst/rtpmanager/gstrtpptdemux.h:
+       * gst/rtpmanager/gstrtprtxreceive.c:
+       * gst/rtpmanager/gstrtprtxsend.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtsp/README:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/spectrum/gstspectrum.h:
+       * gst/udp/gstmultiudpsink.c:
+       * gst/udp/gstudpsrc.c:
+       * gst/videobox/gstvideobox.c:
+       * gst/videocrop/gstvideocrop.c:
+       * gst/videofilter/gstvideoflip.c:
+       * gst/videomixer/README:
+       * gst/videomixer/videomixer2.c:
+       * gst/wavenc/gstwavenc.c:
+       * gst/wavparse/gstwavparse.c:
+       * hooks/pre-commit.hook:
+       * m4/aalib.m4:
+       * m4/freetype2.m4:
+       * m4/glib.m4:
+       * m4/gst-fionread.m4:
+       * m4/gst-matroska.m4:
+       * m4/gst-sdl.m4:
+       * m4/gst-shout2.m4:
+       * m4/gtk.m4:
+       * m4/libfame.m4:
+       * m4/ogg.m4:
+       * m4/vorbis.m4:
+       * sys/oss4/oss4-audio.c:
+       * sys/oss4/oss4-soundcard.h:
+       * sys/osxaudio/gstosxcoreaudio.c:
+       * sys/osxvideo/osxvideosink.m:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2allocator.c:
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2bufferpool.h:
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/v4l2_calls.c:
+       * sys/waveform/gstwaveformsink.c:
+       * sys/ximage/gstximagesrc.c:
+       * sys/ximage/ximageutil.h:
+       * tests/check/elements/jpegdec.c:
+       * tests/check/elements/level.c:
+       * tests/check/elements/qtmux.c:
+       * tests/check/elements/rgvolume.c:
+       * tests/check/elements/rtp-payloading.c:
+       * tests/check/elements/rtpbin.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+       * tests/check/elements/rtpred.c:
+       * tests/check/elements/rtprtx.c:
+       * tests/check/elements/rtpsession.c:
+       * tests/check/elements/rtpstorage.c:
+       * tests/check/elements/splitmux.c:
+       * tests/check/pipelines/simple-launch-lines.c:
+       * tests/examples/cairo/cairo_overlay.c:
+       * tests/examples/gtk/glliveshader.c:
+       * tests/examples/rtp/client-rtpaux.c:
+       * tests/examples/v4l2/camctrl.c:
+         documentation: fix a number of typos
+
+2019-10-04 20:31:56 +0000  Simon Arnling Bååth <simon.baath@gmail.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         gstrtpjitterbuffer: Custom messages when dropping packets
+         This commit adds custom element messages for when gstrtpjitterbuffer
+         drops an incoming rtp packets due to for example arriving too late.
+         Applications can listen to these messages on the bus which enables
+         actions to be taken when packets are dropped due to for example high
+         network jitter.
+         Two properties has been added, one to enable posting drop messages and
+         one to set a minimum time between each message to enable throttling the
+         posting of messages as high drop rates.
+
+2019-09-03 16:46:30 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         qtdemux: Specify REDIRECT information in error message
+         There are in the wild (mp4) streams that basically contain no tracks
+         but do have a redirect info[0], in which case, we won't be able
+         to expose any pad (there are no tracks) so we 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
+         The approach here is to to add details to the ERROR message with a
+         `redirect-location` field which elements like playbin handle and use right
+         away.
+         [0]: http://movietrailers.apple.com/movies/paramount/terminator-dark-fate/terminator-dark-fate-trailer-2_480p.mov
+
+2019-09-26 18:39:48 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: Cancel timers instead of just unlocking loop thread
+         When the queue is full (and adding more packets would risk a seqnum
+         roll-over), the best approach is to just start pushing out packets
+         from the other side.  Just pushing out the packets results in the
+         timers being left hanging with old seqnums, so it's safer to just
+         execute them immediately in this case. It does limit the timer space
+         to the time it takes to receiver about 32k packets, but without
+         extended sequence number, this is the best RTP can do.
+         This also results in the test no longer needed to have timeouts or
+         timers as pushing packets in drives everything.
+         Fixes #619
+
+2019-09-27 14:04:28 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Optimize offset update
+         As we are applying the same offset over all timers, there timer
+         ordering won't change, so we can safely skip time-reordering.
+
+2019-09-27 16:21:22 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtptimerqueue.c:
+         rtptimerqueue: Optimize reschedule optations
+         This basically add ability to choose between inserting from head, tail
+         or in-place in order to try and minimize the distance to walk through in
+         the timer queue. This removes an overhead we had seen on high drop rate.
+
+2019-09-27 14:04:03 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Fix a typo in comment
+
+2019-07-02 15:52:25 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Don't use stats timer on the timers queue
+         The timer passed to update_timers may be from the stats timer. At the
+         moment, we could endup rescheduling (reusing) that timer onto the normal
+         timer queue, unschedul it as if it was from the normal timer queue or
+         duplicate it into the stats timer queue again. This was protected before
+         as the with the fact the stats timer didn't have a valid idx.
+
+2019-06-21 14:08:26 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Update timers on ts-offset changes
+         As the offset is already applied now, we need to update and reschedule
+         all timers each time the offset is changed. I'm not sure who expect this
+         to be retro-actively applied, but there was a unit test for it.
+
+2019-06-20 15:59:48 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: No need to wake the timer thread on head changes
+         If the jitterbuffer head change, there is no need to systematically
+         wakeup the timer thread. The timer thread will be waken up on if
+         an earlier timeout has been pushed. This prevent some more spurious
+         wakeup when the system is loaded. As a side effect, cranking the clock
+         may set the clock at an earlier position.
+
+2019-06-18 19:07:29 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtptimerqueue.h:
+         rtpjittterbuffer: Port timers array to RtpTimerQueue
+         In this patch we now make use of the new RtpTimerQueue instead of the
+         old GArray. This required a lot of changes all over the place, some of
+         the important changes are that `timer->timeout` is no longer a PTS but
+         the actual timeout. This was required to get the RtpTimerQueue sorting
+         right. The applied offset is saved as `timer->offset`, this allow
+         retreiving back the PTS when needed.
+         The clockid updates only happens once per incoming packet. If the
+         currently schedule timer is before the earliest timer in the queue, we
+         no longer wakeup the thread. This way, if other timers get setup in the
+         meantime, this will reduce the number of wakup.
+         The timer loop code has been mostly rewritten, though the behaviour of
+         running the lost timers first has been kept (even though there is no
+         test to show what would be the side effect of doing this differently).
+         Fixes #608
+
+2019-06-14 14:29:36 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjittterbuffer: Port from TimerQueue to RtpTimerQueue
+
+2019-06-13 17:08:31 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtptimerqueue.h:
+         rtpjitterbuffer: Port use the new RtpTimer structure
+         First iteration toward porting to the new timer queue.
+
+2019-06-12 09:59:31 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/Makefile.am:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/meson.build:
+       * gst/rtpmanager/rtptimerqueue.c:
+       * gst/rtpmanager/rtptimerqueue.h:
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtpjitterbuffer.c:
+       * tests/check/meson.build:
+         rtptimerqueue: Consolidate a data structure for timers
+         Implement a single timer queue for all timers. The goal is to always use
+         ordered queues for storing timers. This way, extracting timers for
+         execution becomes O(1). This also allow separating the clock wait
+         scheduling from the timer itself and ensure that we only wake up the
+         timer thread when strictly needed.
+         The knew data structure is still O(n) on insertions and reschedule,
+         but we now use proximity optimization so that normal cases should be
+         really fast. The GList structure is also embeded intot he RtpTimer
+         structure to reduce the number of allocations.
+
+2019-06-10 16:46:05 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         tests: jitterbuffer: Demacroify some helpers
+         There is no reason for these to be macros anymore. This makes the
+         test helper much more readable.
+
+2019-06-06 14:44:27 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.h:
+         rtpjitterbuffer: Move item structure outside of the element
+         This moves the RtpJitterBufferStructure type, alloc, free into
+         rtpjitterbuffer.c/h implementation. jitterbuffer.c strictly rely on
+         the fact this structure is compatible with GList, and so it make more
+         sense to keep encapsulate it. Also, anything that could possibly
+         reduce the amount of code in the element is a win.
+         In order to support that move, a function pointer to free the data
+         was added. This also allow making the free function option when
+         flushing the jitterbuffer.
+
+2019-06-06 13:09:29 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Constify timer pointers where possible
+         This helps understanding which function modify the Timerdata
+         and which one does not. This is not always obvious from thelper
+         name considering recalculate_timer() does not.
+
+2019-09-27 08:46:22 +0200  Philipp Zabel <philipp.zabel@gmail.com>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2mpeg2codec.c:
+       * sys/v4l2/gstv4l2mpeg2codec.h:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/meson.build:
+         v4l2: Add MPEG-2 profile and level support
+         Add support for V4L2 MPEG-2 decoders reporting supported profiles and
+         levels.
+
+2019-09-23 14:34:20 +0200  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: add support for ABGR, xBGR, RGBA, and RGBx formats
+         Map them to the new V4L2_PIX_FMT_{BGRA32,BGRX32,RGBA32,RGBX32} pixel
+         formats.
+
+2019-09-23 14:10:15 +0200  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/ext/v4l2-controls.h:
+       * sys/v4l2/ext/videodev2.h:
+         v4l2: update kernel headers to latest from media tree
+         Update to the latest installed headers (output of make headers_install)
+         from the media tree, keeping the slight modifications to the includes.
+         This includes typo fixes in enum v4l2_mpeg_video_multi_slice_mode,
+         MPEG-2 level and profile enums, new FWHT and H.264 Qp controls, new
+         RGB(A) formats, and new continuous bytestream and dynamic resolution
+         format flags.
+
+2017-12-19 18:23:16 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+         rtpbin: add request-jitterbuffer signal
+         This can be used to pass the threadsharing jitterbuffer from
+         gst-plugins-rs for example.
+
+2019-09-23 18:46:16 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         build: fix werror build with newer gcc
+         In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55,
+         from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/tag/tag.h:25,
+         from ../gst/isomp4/qtdemux.c:56:
+         In function ‘qtdemux_inspect_transformation_matrix’,
+         inlined from ‘qtdemux_parse_trak’ at ../gst/isomp4/qtdemux.c:10676:5,
+         inlined from ‘qtdemux_parse_tree’ at ../gst/isomp4/qtdemux.c:14210:5:
+         ../../../../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:1062:35: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’
+         1062 | #define GST_DEBUG_OBJECT(obj,...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_DEBUG,   obj,  __VA_ARGS__)
+         |                                   ^~~~~~~~~~~~~~~~~
+         ../gst/isomp4/qtdemux.c:10294:5: note: in expansion of macro ‘GST_DEBUG_OBJECT’
+         10294 |     GST_DEBUG_OBJECT (qtdemux, "Transformation matrix rotation %s",
+         |     ^~~~~~~~~~~~~~~~
+         ../gst/isomp4/qtdemux.c: In function ‘qtdemux_parse_tree’:
+         ../gst/isomp4/qtdemux.c:10294:64: note: format string is defined here
+         10294 |     GST_DEBUG_OBJECT (qtdemux, "Transformation matrix rotation %s",
+         |                                                                ^~
+
+2019-09-18 18:31:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+         qtmux: Use the new helper functions for mapping the colr atom values to colorimetry
+
+2019-09-18 18:29:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Use the new helper functions for mapping the colr atom values to colorimetry
+
+2019-09-10 22:44:20 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: update plugin cache
+
+2019-09-10 22:43:49 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/smpte/barboxwipes.c:
+         smpte: don't register transition types twice
+
+2019-09-08 20:43:17 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/alpha/gstalpha.c:
+         alpha: Fix one_over_kc calculation
+         On arm/aarch64, converting from float directly to unsigned int uses
+         a different opcode and negative numbers result in 0. Cast to
+         signed int first.
+
+2019-07-31 16:17:36 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+       * tests/check/elements/splitmux.c:
+         splitmux: Add muxer-pad-map property
+         Add a property which explicitly maps splitmuxsink pads to the
+         muxer pads they should connect to, overriding the implicit logic
+         that tries to match pads but yields arbitrary names.
+
+2019-07-26 02:21:59 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: In async mode, retain previous muxer pad names.
+         When running in async-finalize mode, request new pads from the muxer
+         using the same names as old pads, instead of letting the muxer assign
+         new ones based on the pad template name.
+
+2019-07-26 02:13:31 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Mark split-* signals as action signals. Doc fixes.
+         Add the G_SIGNAL_ACTION flag to the split-* signals on splitmuxsink,
+         and make some improvements to their docstrings
+
+2019-08-29 22:11:02 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Fix incompatible type warning with MSVC
+         gstqtmux.c(5582): warning C4133: 'function':
+         incompatible types - from 'GstVideoMultiviewFlags *' to 'guint *'
+
+2019-09-02 16:33:05 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: fix git diff indentation
+
+2019-08-30 22:42:58 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: normalize variable to boolean
+
+2019-08-29 21:29:34 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: clip output segment on accurate seeks
+         The output segment is only used in ONVIF mode.
+         The previous behaviour was to output a segment computed from
+         the Range response sent by the server.
+         In ONVIF mode, servers will start serving from the appropriate
+         synchronization point (keyframe), and the Range in response will
+         start at that position.
+         This means rtspsrc can now perform truly accurate seeks in that
+         mode, by clipping the output segment to the values requested in
+         the seek. The decoder will then discard out of segment buffers
+         and playback will start without artefacts at the exact requested
+         position, similar to the behaviour of a demuxer when an accurate
+         seek is requested.
+
+2019-08-30 14:00:26 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/vpx/gstvpxenc.c:
+         vpx: fix macos werror build
+         ../ext/vpx/gstvpxenc.c:1723:49: error: format specifies type 'long' but the argument has type 'vpx_codec_pts_t' (aka 'long long') [-Werror,-Wformat]
+         ", gst frame pts: %" G_GINT64_FORMAT, pkt->data.frame.pts, pts);
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
+         /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:1065:96: note: expanded from macro 'GST_TRACE_OBJECT'
+         #define GST_TRACE_OBJECT(obj,...)       GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_TRACE,   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/vpx/gstvpxenc.c:1723:70: error: format specifies type 'long' but the argument has type 'vpx_codec_pts_t' (aka 'long long') [-Werror,-Wformat]
+         ", gst frame pts: %" G_GINT64_FORMAT, pkt->data.frame.pts, pts);
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
+         /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:1065:96: note: expanded from macro 'GST_TRACE_OBJECT'
+         #define GST_TRACE_OBJECT(obj,...)       GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_TRACE,   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:37:59 +1000  Matthew Waters <matthew@centricular.com>
+
+       * sys/osxvideo/cocoawindow.m:
+         osxvideosink: call superclass in reshape
+         Fixes macos werror build
+         ../sys/osxvideo/cocoawindow.m:437:1: error: method possibly missing a [super reshape] call [-Werror,-Wobjc-missing-super-calls]
+         }
+         ^
+
+2019-08-23 18:56:01 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * ext/flac/gstflacdec.c:
+       * ext/flac/gstflacenc.c:
+       * ext/lame/gstlamemp3enc.c:
+       * ext/pulse/pulsesink.c:
+       * ext/pulse/pulsesrc.c:
+       * ext/speex/gstspeexdec.c:
+       * ext/speex/gstspeexenc.c:
+       * ext/vpx/gstvp8dec.c:
+       * ext/vpx/gstvp8enc.c:
+       * ext/vpx/gstvp9dec.c:
+       * ext/vpx/gstvp9enc.c:
+       * ext/wavpack/gstwavpackdec.c:
+       * ext/wavpack/gstwavpackenc.c:
+       * gst/audiofx/audiofirfilter.c:
+       * gst/audiofx/audioiirfilter.c:
+       * gst/isomp4/gstqtmux-doc.c:
+       * gst/isomp4/gstqtmux.c:
+       * gst/shapewipe/gstshapewipe.c:
+         docstrings: port ulinks to markdown links
+
+2019-08-10 12:33:46 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/replaygain/gstrganalysis.c:
+       * gst/replaygain/gstrglimiter.c:
+       * gst/replaygain/gstrgvolume.c:
+         replaygain: fix up doc links to defunct replaygain.org website
+         Fixes #624
+
+2019-08-22 00:18:51 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Fix incompatible type build warning
+         gstsouphttpsrc.c(2191): warning C4133:
+         '=': incompatible types - from 'guint (__cdecl *)(GType)' to 'GstURIType (__cdecl *)(GType)'
+
+2019-08-19 11:07:56 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/vpx/gstvpxdec.c:
+       * ext/vpx/meson.build:
+         vpx: bump libvpx requirement to 1.5.0
+         Was released in Nov 2015.
+
+2019-08-19 11:03:00 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/vpx/meson.build:
+         vpx: avoid confusing meson configure output when checking for vpx versions
+         Used to print:
+         |Run-time dependency vpx found: YES 1.7.0
+         |Message: libvpx provides VP8 encoder interface (vpx_codec_vp8_cx_algo)
+         |Message: libvpx provides VP8 decoder interface (vpx_codec_vp8_dx_algo)
+         |Message: libvpx provides VP9 encoder interface (vpx_codec_vp9_cx_algo)
+         |Message: libvpx provides VP9 decoder interface (vpx_codec_vp9_dx_algo)
+         |Dependency vpx found: YES (cached)
+         |Dependency vpx found: NO found '1.7.0' but need: '>=1.8.0'
+         |Run-time dependency vpx found: NO (tried pkgconfig and cmake)
+         We can check the version of the found dep in a way that
+         doesn't produce this confusing output.
+
+2019-08-19 07:30:17 +0000  Amr Mahdi <amramahdi@gmail.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: Fix push mode ignoring audio with a size smaller than segment buffer
+         In push mode (streaming), if the audio size is smaller than segment buffer size, it would be ignored.
+         This happens because when the plugin receives an EOS signal while a single audio chunk that is less than the segment buffer size is buffered, it does not
+         flush this chunk. The fix is to flush the data chunk when it receives an EOS signal and has a single (first) chunk buffered.
+         How to reproduce:
+         1. Run gst-launch with tcp source
+         ```
+         gst-launch-1.0  tcpserversrc port=3000 !  wavparse ignore-length=0 ! audioconvert ! filesink location=bug.wav
+         ```
+         2. Send a wav file with unspecified data chunk length (0). Attached a test file
+         ```
+         cat test.wav | nc localhost 3000
+         ```
+         3. Compare the length of the source file and output file
+         ```
+         ls -l test.wav bug.wav
+         -rw-rw-r-- 1 amr amr    0 Aug 15 11:07 bug.wav
+         -rwxrwxr-x 1 amr amr 3564 Aug 15 11:06 test.wav
+         ```
+         The expected length of the result of the gst-lauch pipeline should be the same as the test file minus the headers (44), which is ```3564 - 44 = 3520``` but the actual output length is ```0```
+         After the fix:
+         ```
+         ls -l test.wav fix.wav
+         -rw-rw-r-- 1 amr amr 3520 Aug 15 11:09 fix.wav
+         -rwxrwxr-x 1 amr amr 3564 Aug 15 11:06 test.wav
+         ```
+
+2019-08-12 18:56:34 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpvp8depay.c:
+       * gst/rtp/gstrtpvp8depay.h:
+         rtpvp8depay: Add property for waiting until the next keyframe after packet loss
+         If VP8 is not encoded with error resilience enabled then any packet loss
+         causes very bad artefacts when decoding and waiting for the next
+         keyframe instead improves user experience considerably.
+
+2019-08-06 22:27:40 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/ext/types-compat.h:
+         v4l2: Fix type compatibility issue with glibc 2.30
+         From now on, we will use linux/types.h on Linux, and use typedef of the
+         various flavour of BSD.
+         Fixes #635
+
+2019-08-07 18:29:25 -0400  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/gst-plugins-good.supp:
+         valgrind: suppress Cond error coming from gnutls
+         taken from https://salsa.debian.org/debian/flatpak/commit/fb4a8dda211c4bc036781f2b0d706266e95ce068
+
+2019-07-10 22:07:05 +0300  Mart Raudsepp <mart.raudsepp@collabora.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-demux.h:
+         matroska: Provide audio lead-in for some lossy formats
+         Various audio formats require an audio lead-in to decode it properly.
+         Most parsers would take care of it, but when a container like matroska is
+         involved, the demuxer handles the seeking and without its own lead-in
+         handling would never even pass the lead-in data to the parser.
+         This commit provides an initial implementation of that for audio/mpeg,
+         audio/x-ac3 and audio/x-eac3 by calculating the worst case lead-in time
+         needed from known samplerate, potential lead-in frames need and the
+         maximum blocksize possible for the format (as we don't parse that out
+         exactly in matroskademux) and seeking that much earlier in case of
+         accurate seeks. This is especially important for NLE use-cases with GES.
+         If accurate seeking to a position that happens to have a video keyframe,
+         it'll go back to the previous keyframe than needed, but with typical
+         video files that's the best we can do anyway without falling back to
+         scanning the clusters, as typically only keyframes are indexed in
+         Cueing Data.
+         If the media doesn't have a CUE, then we bisect for the cluster to seek
+         to with the same modified time as well in case of accurate seeking,
+         ensuring sufficient lead-in. This code path is typically hit only with
+         (suboptimal) audio-only matroska files, e.g. when created with ffmpeg,
+         which doesn't add a CUE for audio-only mkv muxing.
+
+2019-03-11 15:15:12 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test for invalid packets in buffer list
+         Upstream elements can send all kinds of data in a buffer list, so cover
+         the case of an invalid RTP packet mixed with valid RTP packets.
+
+2019-03-11 15:12:03 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test for multiplexed RTP and RTCP
+         RTP and RTCP packets can be muxed together on the same channel (see
+         RFC5761) and can arrive in the same buffer list.
+         The GStreamer rtpsession element support RFC5761, so add a test to cover
+         this case for buffer lists too.
+
+2019-03-11 15:09:27 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test for different timestamps in buffer list
+         Buffers with different timestamps (e.g. packets belonging to different
+         frames) can arrive together in the same buffer list,
+         Add a test to cover this case.
+
+2019-03-12 15:24:26 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add function to check timestamp
+
+2019-04-02 18:02:19 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test about reordered or duplicated seqnums
+
+2019-04-02 17:52:54 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test for lange jump in seqnums with recovery
+
+2019-04-02 17:50:35 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test for large jump in sequence numbers
+
+2019-04-02 17:47:27 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test for wrapping sequence numbers
+
+2019-03-11 15:07:08 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test for permissible gap in sequence numbers
+
+2019-03-11 15:03:31 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test for the case of failed probation
+         When a new source fails to pass the probation period (i.e. new packets
+         have non-consecutive sequence numbers), then no buffer shall be pushed
+         downstream. Add a test to validate this case.
+
+2019-03-12 15:23:16 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add function to check sequence number
+
+2019-04-03 14:46:35 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add test to verify that receiving stats are correct
+         Add a test to verify that stats about received packets are correct when
+         using buffer lists in the rtpsession receive path.
+         Split get_session_source_stats() in two to be able to get stats from
+         a GstRtpSession object directly.
+
+2019-02-27 16:17:57 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add a test for buffer lists on the recv path
+
+2019-02-27 17:03:44 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+         rtpsession: add support for buffer lists on the recv path
+         The send path in rtpsession processes the buffer list along the way,
+         sharing info and stats between packets in the same list, because it
+         assumes that all packets in a buffer list are from the same frame.
+         However, in the receiving path packets can arrive in all sorts of
+         arrangements:
+         - different sources,
+         - different frames (different timestamps),
+         - different types (multiplexed RTP and RTCP, invalid RTP packets).
+         so a more general approach should be used to correctly support buffer
+         lists in the receive path.
+         It turns out that it's simpler and more robust to process buffers
+         individually inside the rtpsession element even if they come in a buffer
+         list, and then reassemble a new buffer list when pushing the buffers
+         downstream.
+         This avoids complicating the existing code to make all functions
+         buffer-list-aware with the risk of introducing regressions,
+         To support buffer lists in the receive path and reduce the "push
+         overhead" in the pipeline, a new private field named processed_list is
+         added to GstRtpSessionPrivate, it is set in the chain_list handler and
+         used in the process_rtp callback; this is to achieve the following:
+         - iterate over the incoming buffer list;
+         - process the packets one by one;
+         - add the valid ones to a new buffer list;
+         - push the new buffer list downstream.
+         The processed_list field is reset before pushing a buffer list to be on
+         the safe side in case a single buffer was to be pushed by upstream
+         at some later point.
+         NOTE:
+         The proposed modifications do not change the behavior of the send path.
+         The process_rtp callback is called in rtpsource.c by the push_rtp
+         callback (via source_push_rtp) only when the source is not internal.
+         So even though push_rtp is also called in the send path, it won't end up
+         using process_rtp in this case because the source would be internal in
+         the send path.
+         The reasoning from above may suggest a future refactoring: push_rtp
+         might be split to better differentiate the send and receive path.
+
+2019-08-07 10:01:34 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.c:
+       * gst/matroska/matroska-ids.h:
+       * gst/matroska/matroska-parse.c:
+         matroska: Handle interlaced field order
+
+2019-08-07 12:09:46 +0000  Amr Mahdi <amramahdi@gmail.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: Fix ignoring of last chunk in push mode
+         In push mode (streaming), if the last audio payload chunk is less than the segment rate buffer size, it would be ignored since the plugin waits until it has at least segment rate bufer size of audio.
+         The fix is to introduce a flushing flag that indicates that no more audio will be available so that the plugin can recognize this condition and flush the data is has even if it is less
+         than the desired segment rate buffer size.
+
+2019-08-06 16:27:37 +0200  Robert Tiemann <rtie@gmx.de>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Log any error returned by soup_session_send()
+
+2019-08-07 11:42:21 +0900  luke.lin <luke.lin@realtek.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: enlarge the maximal atom size
+         For 8K content, frame size is over 25MB, and cause the negotiation failure.
+         Enlarge the limitation of QTDEMUX_MAX_ATOM_SIZE to 32MB.
+
+2019-07-27 04:05:01 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: expose and implement is-live property
+         This is useful to support the ONVIF case: when is-live is set to
+         FALSE and onvif-rate-control is no, the client can control the
+         rate of delivery and arrange for the server to block and still
+         keep sending when unblocked, without requiring back and forth
+         PAUSE / PLAY requests. This enables, amongst other things, fast
+         frame stepping on the client side.
+         When is-live is FALSE, we don't use a manager at all. This case
+         was actually already pretty well handled by the current code. The
+         standard manager, rtpbin, is simply no longer needed in this case.
+         Applications can instantiate a downloadbuffer after rtspsrc if
+         needed.
+
+2019-07-27 04:03:44 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: reset_time when flush stopping
+
+2019-07-12 22:33:08 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: expose and implement onvif-mode property
+         Refactor the code for parsing and generating the Range, taking
+         advantage of existing API in GstRtspTimeRange.
+         Only use the TCP protocol in that mode, as per the specification.
+         Generate an accurate segment when in that mode, and signal to the
+         depayloader that it should not generate its own segment, through
+         the "onvif-mode" field in the caps, see
+         <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/328>
+         for more information.
+         Translate trickmode seek flags to their ONVIF representation
+         Expose an onvif-rate-control property
+
+2019-07-01 20:38:20 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: improve handling of rate in seeks
+
+2019-07-31 21:55:16 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpfunnel.c:
+         rtpfunnel: forward correct segment when switching pad
+         Forwarding a single segment event from the pad that first gets
+         chained is incorrect: when that first event was sent by an element
+         such as x264enc, with its offset start, we end pushing out of segment
+         buffers for the other pad(s).
+         Instead, everytime the active pad changes, forward the appropriate
+         segment event.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1028
+
+2019-08-05 19:35:36 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Use new GstRTSPMessage API to set message body from a buffer directly
+
+2019-04-04 13:17:34 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: fix receiver source stats to consider previously queued packets
+         When it is not clear yet if a packet relative to a source should be
+         pushed, the packet is put into a queue, this happens in two cases:
+         - the source is still in probation;
+         - there is a large jump in seqnum, and it is not clear what
+         the cause is, future packets will help making a guess.
+         In either case stats about received packets are not updated at all; and
+         even if they were, when init_seq() is called it resets all receiver
+         stats, effectively loosing any possible stat about previously received
+         packets.
+         Fix this by taking into account the queued packets and update the stats
+         when calling init_seq().
+
+2019-04-09 10:46:39 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: clarify meaning of the octets-sent and octets-received stats
+         The octets-send and octets-received stats count the payload bytes
+         excluding RTP and lower level headers, clarify that in the
+         documentation.
+
+2019-04-04 13:16:36 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: expose field bytes_received in RTPSourceStats
+         Since commit c971d1a9a (rtpsource: refactor bitrate estimation,
+         2010-03-02) bytes_received filed in RTPSourceStats is set but then never
+         used again, expose it so that it can be used  by user code to verify how
+         many bytes have been received.
+
+2019-06-21 17:46:36 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtpmanager/rtpstats.h:
+         rtpmanager: consider UDP and IP headers in bandwidth calculation
+         According to RFC3550 lower-level headers should be considered for
+         bandwidth calculation.
+         See https://tools.ietf.org/html/rfc3550#section-6.2 paragraph 4:
+         Bandwidth calculations for control and data traffic include
+         lower-layer transport and network protocols (e.g., UDP and IP) since
+         that is what the resource reservation system would need to know.
+         Fix the source data to accommodate that.
+         Assume UDPv4 over IP for now, this is a simplification but it's good
+         enough for now.
+         While at it define a constant and use that instead of a magic number.
+         NOTE: this change basically reverts the logic of commit 529f443a6
+         (rtpsource: use payload size to estimate bitrate, 2010-03-02)
+
+2019-08-01 15:02:23 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Use empty-array safe way to cleanup GPtrArray
+         Fix assertion fail
+         GLib-CRITICAL **: g_ptr_array_remove_range: assertion 'index_ < rarray->len' failed
+
+2019-08-01 14:28:04 +0000  Marc Leeman <marc.leeman@gmail.com>
+
+       * gst/rtp/gstrtpmp4vpay.c:
+       * gst/rtp/gstrtpmp4vpay.h:
+         rtpmp4vpay: config-interval -1 send at idr
+         adjust/port from rtph264pay and allow sending the configuration data at
+         every IDR
+         The payloader was stripping the configuration data when the
+         config-interval was set to 0. The code was written in such a way !(a >
+         0) that it stripped the config when it was set at -1 (send config_data
+         as soon as possible).
+         This resulted in some MPEG4 streams where no GOP/VOP-I was detected to
+         be sent out without configuration.
+
+2019-07-27 14:21:34 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Ignore crc32 element while peeking at cluster.
+
+2019-07-25 21:21:26 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+         gtkglsink: fix crash when widget is resized after element destruction
+         Prevent _size_changed_cb() to be called after gtkglsink has been finalized.
+         Fix #632
+
+2019-07-26 02:45:51 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix reverse playback EOS conditions
+         In reverse playback, we don't want to rely on the position of the current
+         keyframe to decide a stream is EOS: the last GOP we push will start with
+         a keyframe, which position is likely to be outside of the segment.
+         Instead, let the normal seek_to_previous_keyframe mechanism do its job,
+         it works just fine.
+
+2019-07-23 01:42:02 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix key unit seek corner case
+         If a key unit seek is performed with a time position that matches
+         the offset of a keyframe, but not its actual PTS, we need to
+         adjust the segment nevertheless.
+         For example consider the following case:
+         * stream starts with a keyframe at 0 nanosecond, lasting 40 milliseconds
+         * user does a key unit seek at 20 milliseconds
+         * we don't adjust the segment as the time position is "over" a keyframe
+         * we push a segment that starts at 20 milliseconds
+         * we push a buffer with PTS == 0
+         * an element downstream (eg rtponviftimestamp) tries to calculate the
+         stream time of the buffer, fails to do so and drops it
+
+2019-07-25 15:08:54 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/jpeg/gstjpegdec.c:
+         jpegdec: Don't dereference NULL input state if we have no caps in TIME segments
+         Simply assume that the JPEG frame is not going to be interlaced instead
+         of crashing.
+
+2019-07-22 10:28:50 +0200  Knut Andre Tidemann <knutandre.tidemann@zenitel.com>
+
+       * gst/rtp/gstrtpopuspay.c:
+         rtp: opuspay: fix memory leak in gst_rtp_opus_pay_setcaps.
+         The src caps were never dereferenced, causing a memory leak.
+
+2019-07-12 20:51:44 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         qtdemux: implement support for trickmode interval
+         When the seek event contains a (newly-added) trickmode interval,
+         and TRICKMODE_KEY_UNITS was requested, only let through keyframes
+         separated with the required interval
+
+2019-07-17 19:12:19 +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-15 23:24:05 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-mux.c:
+         matroska: Port to color_{primaries,transfer,matrix}_to_iso
+         ... and remove duplicated code.
+
+2019-05-25 22:08:05 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+       * tests/check/elements/splitmux.c:
+         splitmuxsink: add the ability to mux auxilliary video streams
+         The primary video stream is used to select fragment cut points
+         at keyframe boundaries. Auxilliary video streams may be
+         broken up at any packet - so fragments may not start with a keyframe
+         for those streams.
+
+2019-06-11 23:17:30 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Add video_%d pad template.
+         splitmuxsrc actually supports multiple video pads. Make that clear,
+         especially since it was already creating pads named "video_0" etc.
+
+2019-07-09 23:12:45 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix conditions for end of segment in reverse playback
+         The time_position field of the stream is offset by the media_start
+         of its QtDemuxSegment compared to the start of the GstSegment of
+         the demuxer, take it into account when making comparisons.
+
+2019-07-09 23:06:12 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Fix mismatched transfer characteristic
+         TransferCharacteristics(18) should be ARIB STD-B67 (HLG)
+         See https://www.webmproject.org/docs/container/#TransferCharacteristics
+         Also map more color primaries indexes which have been handled by matroska-mux.
+
+2019-07-09 19:49:57 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2: Remove misleading comments
+         gst_pad_template_new() does not take ownership of the caps
+
+2019-01-23 18:27:06 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtp session: Add test for collision loopback detection
+         Ignore further collisions if the remote SSRC change with ours, it's
+         probably because someone is sending us back the packets we send out.
+
+2019-01-23 18:14:23 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtpsession tests: Add test for third-party collision detection
+         Add tests to validate the code that ignores the same packets coming
+         from 2 different sources (an third-party collision).
+
+2019-01-23 17:19:15 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Add test for collision on incoming packets
+         Make sure that the collision is properly detected on incoming packets.
+
+2019-01-23 17:09:27 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtpsession test: Verify that on-ssrc-collision message is emitted
+
+2019-01-23 16:58:22 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Also send conflict event when sending packet
+         If the conflict is detected when sending a packet, then also send an
+         upstream event to tell the source to reconfigure itself.
+         Also ignore the collision if we see more than one collision from the same
+         remote source to avoid problems on loops.
+
+2019-04-15 16:32:03 -0700  Song Bing <bing.song@nxp.com>
+
+       * sys/v4l2/gstv4l2transform.c:
+         v4l2transform: set right buffer count.
+         Set right buffer count to avoid one buffer.
+
+2019-06-27 19:47:41 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/gstrtph265pay.h:
+       * tests/check/elements/rtph265.c:
+         rtph265pay: Also immediately send packet if it is a suffix NAL
+         Immediately send packet if it contains any suffix NAL, this is required
+         in case they come after the VCL nal to not have to wait until the next frame.
+
+2019-06-27 19:46:01 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Don't drop second byte of NAL header
+         At least keep 2 bytes per NAL even if the second one is 0, the
+         second byte of the NAL header could very well be 0.
+
+2019-06-26 16:42:44 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+         rtph26xpay: Avoid print when there is no bundle at end of packet
+
+2019-06-26 16:25:01 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+       * tests/check/elements/rtp-payloading.c:
+       * tests/check/elements/rtph264.c:
+       * tests/check/elements/rtph265.c:
+         rtph26xpay: Wait until there is a VCL or suffix NAL to send
+         With unit tests.
+
+2019-06-19 17:16:03 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtph265.c:
+         rtph265pay test: Add unit tests for aggregation
+
+2019-06-18 19:07:38 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/gstrtph265pay.h:
+       * tests/check/elements/rtp-payloading.c:
+       * tests/check/elements/rtph265.c:
+         rtph265pay: Implement Aggregation packets
+         Align with rtph264pay
+
+2019-06-18 15:03:09 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtph264.c:
+         rtph264pay test: Add unit tests for aggregation
+
+2019-06-18 13:45:15 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph264pay.h:
+         rtph264pay: Report latency when in maximal aggregation mode
+
+2019-06-17 11:31:53 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph264pay.h:
+       * tests/check/elements/rtph264.c:
+         rtph264pay: Default to not adding latency when aggregating
+         Send the bundle as soon as there is one VCL unit in the packet at
+         the end of an incoming buffer.
+         The DELTA_UNIT flag is not reliable, so ignore it.
+
+2019-06-14 16:54:23 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtp-payloading.c:
+         rtp-payloading test: Fix working to 1.0 buffers instead of groups
+
+2019-06-13 18:07:35 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Replace fragmentation while-loop with for-loop
+         Align with rtph264pay
+
+2019-06-13 17:42:05 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Rename payload_len to max_fragment_size
+         Align to rtph264pay
+
+2019-06-13 17:30:08 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Clean up _payload_nal
+         Move determining whether we need to fragment at all into the
+         fragmenter.
+         Align with rtph264pay
+
+2019-06-13 17:23:26 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Extract sending fragments into _payload_nal_fragment
+         Align with rtph264pay
+
+2019-06-13 16:22:57 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Extract sending a single packet into _payload_nal_single
+         Align with rtph264pay
+
+2019-06-13 16:14:31 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Define and use FU_A_TYPE_ID
+         Align with rtph264pay
+
+2019-06-13 16:08:37 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Use snake_case variables
+         Align with rtph264pay
+
+2019-06-13 16:04:39 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Clean up whitespace and syntax
+         Align with rtph264pay
+
+2018-07-03 19:39:25 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph264pay.h:
+       * tests/check/elements/rtp-payloading.c:
+       * tests/check/elements/rtph264.c:
+         rtph264pay: Support STAP-A bundling
+         Add a new property "do-aggregate"* to the H.264 RTP payloader which
+         enables STAP-A aggregation as per [RFC-6184][1]. With aggregation enabled,
+         packets are bundled instead of sent immediately, up until the MTU size.
+         Bundles also end at access unit boundaries or when packets have to be
+         fragmented.
+         *: The property-name is kept generic since it might apply more widely,
+         e.g. STAP-B or MTAP.
+         [1]: https://tools.ietf.org/html/rfc6184#section-5.7
+         Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/434
+
+2018-11-05 17:15:39 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Fix delta-unit/discont handling when injecting SPS/PPS
+         Apply the wanted delta-unit and discont to the first packet; following
+         packets for this frame are always delta units and not discont.
+
+2018-11-05 19:03:45 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Replace fragmentation while-loop with for-loop
+
+2018-11-05 18:57:38 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Calculate the right max_fragments
+
+2018-11-05 18:36:35 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Rename payload_len to max_fragment_size
+
+2018-11-05 18:34:40 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Clean up _payload_nal_fragment
+
+2018-11-05 18:06:19 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Clean up _payload_nal
+         Move determining whether we need to fragment at all into the fragmenter.
+
+2018-11-05 18:04:13 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Clean up _payload_nal_single
+
+2018-11-05 17:55:23 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Extract sending fragments into _payload_nal_fragment
+
+2018-11-05 17:49:52 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Extract sending a single packet into _payload_nal_single
+
+2018-11-05 17:10:03 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Define and use FU_A_TYPE_ID
+
+2018-11-05 17:07:06 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Use snake_case variables
+
+2018-11-05 17:04:14 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Clean up whitespace and syntax
+
+2019-06-06 16:05:31 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.h:
+         rtpjitterbuffer: Unlock output if the queue is full
+
+2019-06-29 23:17:28 -0600  Thomas Bluemel <tbluemel@control4.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+         rtpjitterbuffer: Ignore unsolicited rtx packets.
+         If an rtx packet arrives that hasn't been requested (it might
+         have been requested from prior to a reset), ignore it so that
+         it doesn't inadvertently trigger a clock skew.
+
+2019-06-29 23:16:44 -0600  Havard Graff <havard.graff@gmail.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: Add unit test for unsolicited rtx affecting skew
+
+2019-06-13 15:45:28 -0600  Thomas Bluemel <tbluemel@control4.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.h:
+       * tests/check/elements/rtpbin.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: Only calculate skew or reset if no gap.
+         In the case of reordered packets, calculating skew would cause
+         pts values to be off. Only calculate skew when packets come
+         in as expected. Also, late RTX packets should not trigger
+         clock skew adjustments.
+         Fixes #612
+
+2019-07-02 21:21:05 +0300  Mart Raudsepp <mart.raudsepp@collabora.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Provide a 30 frames lead-in for MP3
+         mpegaudioparse suggests MP3 needs 10 or 30 frames of lead-in (depending on
+         mpegaudioversion, which we don't know here), thus provide at least 30 frames
+         lead-in for such cases as a followup to commit cbfa4531ee5ef.
+
+2019-05-24 10:31:39 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: max-dropout-time gets cast to int32
+         So any value over MAXINT32 gets considered as negative and is silently ignored.
+
+2019-07-02 13:00:32 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: do_seek can never be called with a NULL event
+
+2019-07-01 22:38:41 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: only adjust segment time when adjusting segment start
+         We ended up setting segment.time to segment.position when doing
+         reverse playback, which is obviously wrong.
+
+2019-07-01 13:54:13 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: unref the event in element seek handler
+
+2019-06-29 00:25:26 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: handle seek event on the element
+         Without this, the user has to wait for rtspsrc to have sent a PLAY
+         request and exposed its pads before seeking it.
+
+2019-06-26 18:03:29 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/udp/gstmultiudpsink.c:
+         multiudpsink: Add missing socket.h include
+         Without this include, macro like SO_BINDTODEVICE is not visible and
+         associated feature gets out-compiled. This also affects the support for
+         SO_SNDBUF.
+
+2019-06-24 17:35:15 +0200  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Clear new_tags if sending metadata in header
+         This avoids sending an additional metadata object right after the
+         headers.
+
+2018-06-13 14:55:29 -0700  Song Bing <bing.song@nxp.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Fix drain() function return type
+         Return right type for drain() function.
+
+2019-06-24 14:28:39 +0300  Mart Raudsepp <mart.raudsepp@collabora.com>
+
+       * gst/audioparsers/gstaacparse.c:
+       * gst/audioparsers/gstac3parse.c:
+       * gst/audioparsers/gstamrparse.c:
+       * gst/audioparsers/gstdcaparse.c:
+       * gst/audioparsers/gstsbcparse.c:
+       * gst/audioparsers/gstwavpackparse.c:
+         audioparsers: add back segment clipping to parsers that have lost it
+         The pre_push_frame default clipping behaviour was introduced in 2010
+         with commit 30be03004e82 and modified with commit 4163969a2422 in 2011,
+         when most parsers didn't implement a pre_push_frame yet. Not having it
+         meant that clipping was done by default. Those that did implement a
+         pre_push_frame (flacparse and mpegaudioparse) at the time, had the flag
+         adjusted as part of the 2011 refactor work.
+         All other parsers got a pre_push_frame vfunc implementation only in
+         2013, but seem to have forgot to keep the clipping behaviour, as
+         was done automatically when a pre_push_frame implementation doesn't
+         exist for the parser. aacparse lost it with commit 91d4abcea in
+         July 2013; the others in Dec 2013 as part of AUDIO_CODEC tag posting
+         in commits 6f89b430e, d2ab5199b, 29f2cae12, 753d3c23a and 292780574.
+
+2019-06-24 09:42:31 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/v4l2/gstv4l2codec.c:
+         v4l2: fix compiler warning due to c99-ism
+
+2019-06-19 14:28:28 +0200  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * tests/check/elements/flvmux.c:
+         test: flvmux: Test changing caps with one sinkpad
+         These tests segfault without the preceding crash fix.
+
+2019-06-19 14:08:06 +0200  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * tests/check/elements/flvmux.c:
+         test: flvmux: Use gst_harness_sink_push_many
+         And check its return value.
+
+2019-06-19 12:31:46 +0200  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Simplify an if-else chain
+         Merge the identical branches and turn the condition around to make it
+         easier to read.
+
+2019-06-19 12:28:22 +0200  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Avoid crash when changing caps without both streams
+         mux->video_pad and mux->audio_pad can be NULL if the corresponding pad
+         has not been requested.
+
+2019-06-12 15:57:48 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpgstpay.c:
+         rtpgstpay: Send caps anyway if caps are pending in the adapter but are different from the new ones
+         Otherwise it can happen that we receive a caps event, then another caps
+         event and only then buffers. We would then send out the first caps event
+         in the stream but mark buffers with the caps version of the second caps
+         event.
+
+2019-06-12 14:57:24 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpgstdepay.c:
+       * gst/rtp/gstrtpgstdepay.h:
+         rtpgstdepay: Only store the current caps and drop old caps immediately
+         Otherwise it can happen that we already collected 7 caps, miss the 8th
+         caps packet (packet loss) and then re-use the 1st caps for the following
+         buffers instead of the 8th caps which will likely cause errors further
+         downstream unless both caps are accidentally the same.
+         Keeping old caps around does not seem to have any value other than
+         potentially causing errors. We would always receive new caps whenever
+         they change (even if they were previous ones) and it's very unlikely
+         that they happen to be exactly the same as the previous ones.
+         Also after having received new caps or a buffer with a next caps
+         version, no buffers with old caps version will arrive anymore.
+
+2019-06-15 02:00:43 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/rtpmanager/rtpjitterbuffer.c:
+         rtpjitterbuffer: Clear clock master before unreffing
+         Make sure to clear any master clock on the media_clock
+         before unreffing it to release the timer callback that's
+         updating the clock and keeping it reffed.
+
+2019-06-16 11:07:31 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/matroska/matroska-ids.c:
+         matroska: Initialise a video_context field to satisfy valgrind
+         Clear the mastering_display_info_present field explicitly
+         after reallocating the track context into a video context
+         to avoid uninitialised warnings in valgrind
+
+2019-06-14 17:34:31 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/multifile/gstmultifilesink.c:
+         docs: Fix link to strings
+         We can't link to #gchar* this way.
+
+2019-06-14 00:17:22 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         jitterbuffer: unset DTS on output buffers
+
+2019-05-22 21:40:52 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: set the same seqnum on flush_start / flush_stop
+         It's currently not made mandatory by aggregator, but it might
+         eventually be, and is more consistent behaviour
+         See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/977
+
+2019-06-13 11:55:04 +0200  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: late packets shouldn't affect PTS of the following packet
+         If, say, a rtx-packet arrives really late, this can have a dramatic
+         effect on the jitterbuffer clock-skew logic, having it being reset
+         and losing track of the current dts-to-pts calculations, directly affecting
+         the packets that arrive later.
+         This is demonstrated in the test, where a RTX packet is pushed in really
+         late, and without this patch the last packet will have its PTS affected
+         by this, where as a late RTX packet should be redundant information, and
+         not affect anything.
+
+2019-06-12 10:47:39 +0200  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: fix rtx delay calulation when large packet spacing
+
+2016-11-24 18:18:01 +0100  Stian Selnes <stian@pexip.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: Fix delay for EXPECTED timers added by gaps
+         This patch corrects the delay set on EXPECTED timers that are added when
+         processing gaps. Previously the delay could be too small so that
+         'timout + delay' was much less than 'now', causing the following retries
+         to be scheduled too early. (They were sent earlier than
+         rtx-retry-timeout after the previous timeout.)
+
+2018-11-20 16:11:12 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtpstats.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: don't try and calculate packet-rate if seqnum are jumping
+         Turns out that the "big-gap"-logic of the jitterbuffer has been horribly
+         broken.
+         For people using lost-events, an RTP-stream with a gap in sequencenumbers,
+         would produce exactly that many lost-events immediately.
+         So if your sequence-numbers jumped 20000, you would get 20000 lost-events
+         in your pipeline...
+         The test that looks after this logic "test_push_big_gap", basically
+         incremented the DTS of the buffer equal to the gap that was introduced,
+         so that in fact this would be more of a "large pause" test, than an
+         actual gap/discontinuity in the sequencenumbers.
+         Once the test was modified to not increment DTS (buffer arrival time) with
+         a similar gap, all sorts of crazy started happening, including adding
+         thousands of timers, and the logic that should have kicked in, the
+         "handle_big_gap_buffer"-logic, was not called at all, why?
+         Because the number max_dropout is calculated using the packet-rate, and
+         the packet-rate logic would, in this particular test, report that
+         the new packet rate was over 400000 packets per second!!!
+         I believe the right fix is to don't try and update the packet-rate if
+         there is any jumps in the sequence-numbers, and only do these calculations
+         for nice, sequential streams.
+
+2019-06-12 11:16:22 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: fix unused variables
+
+2019-06-12 02:42:42 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Protect initial pad configuration with the object lock
+         gst_splitmux_src_activate_part() configures the pad information
+         before starting the pad task, but occasionally the changes it makes
+         to the pad are not seen in the pad task because they're not
+         protected by the right locking. Use the pad's object lock to
+         protect those variables.
+
+2019-06-12 01:42:20 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Restart pad task on a reconfigure
+         On a reconfigure event, restart streaming on the pad so
+         that switching tracks in playbin works cleanly
+
+2019-06-11 18:40:09 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+       * gst/multifile/gstsplitmuxsrc.h:
+         splitmuxsrc: Use an RW lock instead of a mutex to protect the pad list
+         Fix a deadlock around the pads list by using an RW lock to
+         allow simultaneous readers. The pad list doesn't really changes
+         except at startup and shutdown.
+
+2019-06-11 23:18:24 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Ignore duplicate seeks
+         Use the seqnum to ignore duplicated seek events.
+
+2019-05-29 09:20:07 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Improve debug output
+         Make the debug output less confusing by not mentioning a src
+         pad when doing calculations on the sink pad side.
+         Improve debug around why a GOP is considered overflowing a fragment
+
+2019-05-29 09:20:07 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Give internal queues useful names
+         Makes debug output more useful
+
+2019-06-05 23:13:33 +0300  Mart Raudsepp <mart.raudsepp@collabora.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Provide a 2 frames lead-in for audio decoders
+         AAC and various other audio codecs need a couple frames of lead-in to
+         decode it properly. The parser elements like aacparse take care of it
+         via gst_base_parse_set_frame_rate, but when inside a container, the
+         demuxer is doing the seek segment handling and never gives lead-in
+         data downstream.
+         Handle this similar to going back to a keyframe with video, in the
+         same place. Without a lead-in, the start of the segment is silence,
+         when it shouldn't, which becomes especially evident in NLE use cases.
+
+2019-05-28 20:14:49 +0300  Mart Raudsepp <mart.raudsepp@collabora.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: remove indent exception and reindent
+         As the indent disabling isn't playing along for a following fix,
+         remove the indent disabling and reindent in a way that doesn't
+         look too stupid.
+
+2019-03-08 14:43:20 +0000  Philippe Normand <philn@igalia.com>
+
+       * sys/v4l2/gstv4l2h264codec.c:
+         v4l2: Fix H.264 level 3 string representation
+         The string_to_level function handles "3" so the level_to_string function should
+         do the same, to prevent caps negotiation issues.
+
+2019-03-04 11:05:29 +0000  Philippe Normand <philn@igalia.com>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2codec.c:
+       * sys/v4l2/gstv4l2codec.h:
+       * sys/v4l2/gstv4l2fwhtenc.c:
+       * sys/v4l2/gstv4l2h263enc.c:
+       * sys/v4l2/gstv4l2h264codec.c:
+       * sys/v4l2/gstv4l2h264codec.h:
+       * sys/v4l2/gstv4l2h264enc.c:
+       * sys/v4l2/gstv4l2h264enc.h:
+       * sys/v4l2/gstv4l2h265codec.c:
+       * sys/v4l2/gstv4l2h265codec.h:
+       * sys/v4l2/gstv4l2h265enc.c:
+       * sys/v4l2/gstv4l2h265enc.h:
+       * sys/v4l2/gstv4l2jpegenc.c:
+       * sys/v4l2/gstv4l2mpeg4codec.c:
+       * sys/v4l2/gstv4l2mpeg4codec.h:
+       * sys/v4l2/gstv4l2mpeg4enc.c:
+       * sys/v4l2/gstv4l2mpeg4enc.h:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videodec.h:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/gstv4l2videoenc.h:
+       * sys/v4l2/gstv4l2vp8codec.c:
+       * sys/v4l2/gstv4l2vp8codec.h:
+       * sys/v4l2/gstv4l2vp8enc.c:
+       * sys/v4l2/gstv4l2vp8enc.h:
+       * sys/v4l2/gstv4l2vp9codec.c:
+       * sys/v4l2/gstv4l2vp9codec.h:
+       * sys/v4l2/gstv4l2vp9enc.c:
+       * sys/v4l2/gstv4l2vp9enc.h:
+       * sys/v4l2/meson.build:
+         v4l2: Profile and level probing support for encoders and decoders
+         There used to be some profile/level support in encoders. This code was moved to
+         GstV4l2Codecs and is now also used for decoders. The caps templates for the
+         H.264, H.265, MPEG4, VP8 and VP9 encoders and decoders should now reflect the
+         profiles and levels advertised by the kernel.
+
+2019-06-03 16:21:12 -0400  Aaron Boxer <aaron.boxer@collabora.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: fix typo in property description
+
+2019-06-04 13:39:00 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/gst-plugins-good.supp:
+         supp: Ignore leaks caused by shout/sethostent
+         sethostent() seems to be using a global state and we endup with leaks from
+         that API when called through shout_init(). We had the option to only
+         ignore the shout case, but the impression is that if we have shout and
+         another sethostend user, as it's a global state, we may endup with a
+         different stack trace for the same leak. So in the end, we just ignore
+         memory allocated by sethostent in general.
+
+2019-04-30 17:28:25 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * ext/pulse/pulsedeviceprovider.c:
+         pulse-device: Hide the alsa device provider if we provide alsa devices
+
+2019-05-21 15:25:03 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * tests/check/elements/rtpssrcdemux.c:
+         rtpssrcdemux: Avoid taking streamlock out-of-band
+         In this change we now protect the internal srcpads list using the
+         stream lock and limit usage of the internal stream lock to
+         preventing data flowing on the other src pad type while creating
+         and signalling the new pad.
+         This fixes a deadlock with RTPBin shutdown lock. These two locks would
+         end up being taken in two different order, which caused a deadlock. More
+         generally, we should not rely on a streamlock when handling out-of-band
+         data, so as a side effect, we should not take a stream lock when
+         iterating internal links.
+
+2019-05-27 18:08:54 +0900  Damian Hobson-Garcia <dhobsong@igel.co.jp>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Orphan buffer pool on object_stop if supported
+         Use V4L2 buffer orphaning, on recent kernels so that
+         the device can be restarted immediately with
+         a new buffer pool during renogatiation.
+
+2019-05-30 13:12:31 +0900  Damian Hobson-Garcia <dhobsong@igel.co.jp>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Free orphaned allocator resources when buffers are released
+         Allocator resources cannot be freed when a buffer pool is orphaned
+         while its buffers are in use. They should, however, be freed once those
+         buffers are no longer needed. This patch disposes of any buffers
+         belonging to an orphaned pool as they are released, and makes sure
+         that the allocator is cleaned up when the last buffer is returned.
+
+2019-05-30 11:13:07 +0900  Damian Hobson-Garcia <dhobsong@igel.co.jp>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: return TRUE when buffer pool orphaning succeeds
+         When trying to orphan a buffer pool, successfully return and unref
+         the pool when the pool is either successfully stopped or orphaned.
+         Indicate failure and leave the pool untouched otherwise.
+
+2019-05-31 23:04:11 +0200  Niels De Graef <niels.degraef@barco.com>
+
+       * configure.ac:
+       * gst/udp/gstmultiudpsink.c:
+       * gst/udp/gstmultiudpsink.h:
+       * gst/udp/gstudpsrc.c:
+       * 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.
+
+2018-09-05 21:10:51 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Use size of first closed caption buffer in prefill mode
+         It must be accurate for all samples to work in Final Cut properly, so
+         the best we can do is to assume that all samples are the same as the
+         first. Bigger samples are truncated, smaller samples are padded.
+
+2019-05-29 22:06:58 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/meson.build:
+       * ext/lame/gstlamemp3enc.c:
+       * ext/mpg123/gstmpg123audiodec.c:
+       * ext/taglib/gstapev2mux.cc:
+       * ext/taglib/gstid3v2mux.cc:
+       * ext/twolame/gsttwolamemp2enc.c:
+       * gst/autodetect/gstautoaudiosink.c:
+       * gst/autodetect/gstautoaudiosrc.c:
+       * gst/autodetect/gstautovideosink.c:
+       * gst/autodetect/gstautovideosrc.c:
+       * gst/dtmf/gstdtmfsrc.c:
+       * gst/dtmf/gstrtpdtmfdepay.c:
+       * gst/dtmf/gstrtpdtmfsrc.c:
+       * gst/level/gstlevel.c:
+       * gst/rtp/gstrtpL8depay.c:
+       * gst/rtp/gstrtpL8pay.c:
+       * gst/rtp/gstrtpreddec.c:
+       * gst/rtp/gstrtpredenc.c:
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+       * gst/spectrum/gstspectrum.c:
+       * sys/v4l2/gstv4l2object.c:
+         doc: remove xml from comments
+
+2019-05-29 11:02:26 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: update plugins cache
+         And add gtk+ and qt plugins
+
+2019-05-29 10:58:40 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/dv/meson.build:
+       * ext/gtk/meson.build:
+       * ext/qt/meson.build:
+       * sys/osxaudio/meson.build:
+       * sys/osxvideo/meson.build:
+       * sys/waveform/meson.build:
+         dv, gtk, qt, osxaudio, osxvideo, waveform: add to plugins list
+         Makes sure the paths for these plugins are included in the
+         uninstalled plugin paths list. And also for the docs.
+         Fixes #604
+
+2019-04-18 15:31:00 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-mux.h:
+         matroskamux: Add new property to offset all streams to start at zero
+         This takes the timestamp of the earliest stream and offsets it so that
+         it starts at 0. Some software (VLC, ffmpeg-based) does not properly
+         handle Matroska files that start at timestamps much bigger than zero.
+         Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/449
+
+2019-05-28 14:13:56 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpmp4gdepay.c:
+       * gst/rtp/gstrtpmp4gdepay.h:
+         rtpmp4gdepay: don't spam debug log for broken ADTS-in-RTP AAC
+         Print warning only once.
+
+2019-05-22 18:06:04 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Only set running time on finalizing sink element when in async-finalize mode
+         There is only a single sink element in async-finalize mode, and we would
+         keep the running time from previous fragments set in that case. As we
+         don't ever set the running time for the very last fragment on EOS, this
+         would mean that the closing time reported for the very last fragment is
+         the same as the closing time of the previous fragment.
+
+2015-03-26 13:08:32 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Remove uneeded keep-alive hack
+         The rtsp connection code has been fixed now.
+         https://bugzilla.gnome.org/show_bug.cgi?id=744209
+
+2019-05-26 17:46:06 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Print GstClockTimeDiff as GST_STIME_FORMAT
+
+2019-05-25 19:45:02 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/gst_plugins_cache.json:
+         doc: update plugin cache
+
+2019-05-25 17:25:02 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/videomixer/videomixer2.c:
+         videomixer: the documentation for GstVideoMixer2Pad is not exposed
+
+2019-05-25 16:56:32 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * ext/gdk_pixbuf/gstgdkpixbufsink.c:
+       * ext/soup/gstsouphttpsrc.c:
+       * ext/vpx/gstvp8enc.c:
+       * ext/vpx/gstvp9enc.c:
+       * gst/isomp4/gstqtmux-doc.c:
+       * gst/isomp4/gstqtmux.c:
+       * gst/multifile/gstmultifilesrc.c:
+       * gst/rtpmanager/gstrtprtxqueue.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/smpte/gstsmpte.c:
+       * gst/smpte/gstsmptealpha.c:
+       * gst/spectrum/gstspectrum.c:
+         doc: fix element section documentations
+         Element sections were not rendered anymore after the hotdoc
+         port, fixing this revealed a few incorrect links.
+
+2019-02-19 12:15:19 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Improve RTPStorage action signal documentation
+         This is a tiny clarification as the storage was loosely named "storage".
+         This change clarify that the storage is specificaly used for received RTP
+         packets. This is unlike the storage found in rtprtxsend that stores a
+         backlog of sent RTP packets.
+
+2019-05-05 22:16:36 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-mux.c:
+         matroska: Add BT2020_10, PQ and HLG transfer functions
+         The direct use of newly added transfer functions
+
+2019-05-23 12:38:06 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/aalib/meson.build:
+         aasink: Generate pkg-config file for the plugin
+
+2019-05-22 11:01:17 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/multifile/gstmultifilesink.c:
+         multifilesink: Fix documentation of max-file-duration property
+         The max-file-duration property works with max-duration mode
+
+2019-05-14 17:36:14 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Always keep at least one NACK on early RTCP
+         We recently added code to remove outdate NACK to avoid using bandwidth
+         for packet that have no chance of arriving on time. Though, this had a
+         side effect, which is that it was to get an early RTCP packet with no
+         feedback into it. This was pretty useless but also had a side effect,
+         which is that the RTX RTT value would never be updated. So we we stared
+         having late RTX request due to high RTT, we'd never manage to recover.
+         This fixes the regression by making sure we keep at least one NACK in
+         this situation. This is really light on the bandwidth and allow for
+         quick recover after the RTT have spiked higher then the jitterbuffer
+         capacity.
+
+2019-05-16 09:14:19 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/meson.build:
+         docs: Stop building the doc cache by default
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/36
+
+2019-05-13 22:53:59 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/gst_plugins_cache.json:
+         docs: Update plugins documentation cache
+
+2019-04-23 12:28:23 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * ext/soup/gstsouputils.c:
+       * gst/goom/flying_stars_fx.c:
+       * gst/goom/goom_tools.h:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpmux.h:
+       * sys/v4l2/gstv4l2object.c:
+         doc: Fix some docstrings
+
+2018-10-22 11:39:55 +0200  Thibault Saunier <tsaunier@igalia.com>
+
+       * Makefile.am:
+       * configure.ac:
+       * docs/Makefile.am:
+       * docs/all_index.md:
+       * docs/gst_api_version.in:
+       * docs/gst_plugins_cache.json:
+       * docs/index.md:
+       * docs/meson.build:
+       * docs/plugins/.gitignore:
+       * docs/plugins/Makefile.am:
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/gst-plugins-good-plugins.interfaces:
+       * docs/plugins/gst-plugins-good-plugins.prerequisites:
+       * docs/plugins/gst-plugins-good-plugins.signals:
+       * docs/plugins/gst-plugins-good-plugins.types:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-directsound.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-monoscope.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-osxaudio.xml:
+       * docs/plugins/inspect/plugin-osxvideo.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-waveform.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * docs/random/ChangeLog-0.8:
+       * docs/random/PORTED_09:
+       * docs/sitemap.txt:
+       * docs/version.entities.in:
+       * ext/aalib/meson.build:
+       * ext/cairo/meson.build:
+       * ext/flac/meson.build:
+       * ext/gdk_pixbuf/meson.build:
+       * ext/jack/meson.build:
+       * ext/jpeg/meson.build:
+       * ext/lame/meson.build:
+       * ext/libcaca/meson.build:
+       * ext/libpng/meson.build:
+       * ext/mpg123/meson.build:
+       * ext/pulse/meson.build:
+       * ext/raw1394/meson.build:
+       * ext/shout2/meson.build:
+       * ext/soup/meson.build:
+       * ext/speex/meson.build:
+       * ext/taglib/meson.build:
+       * ext/twolame/meson.build:
+       * ext/vpx/meson.build:
+       * ext/wavpack/meson.build:
+       * gst/alpha/meson.build:
+       * gst/apetag/meson.build:
+       * gst/audiofx/meson.build:
+       * gst/audioparsers/meson.build:
+       * gst/auparse/meson.build:
+       * gst/autodetect/meson.build:
+       * gst/avi/meson.build:
+       * gst/cutter/meson.build:
+       * gst/debugutils/meson.build:
+       * gst/deinterlace/meson.build:
+       * gst/dtmf/meson.build:
+       * gst/effectv/meson.build:
+       * gst/equalizer/meson.build:
+       * gst/flv/meson.build:
+       * gst/flx/meson.build:
+       * gst/goom/filters.c:
+       * gst/goom/meson.build:
+       * gst/goom2k1/meson.build:
+       * gst/icydemux/meson.build:
+       * gst/id3demux/meson.build:
+       * gst/imagefreeze/meson.build:
+       * gst/interleave/meson.build:
+       * gst/isomp4/meson.build:
+       * gst/law/meson.build:
+       * gst/law/mulaw-conversion.c:
+       * gst/level/meson.build:
+       * gst/matroska/meson.build:
+       * gst/monoscope/meson.build:
+       * gst/multifile/meson.build:
+       * gst/multipart/meson.build:
+       * gst/replaygain/meson.build:
+       * gst/rtp/meson.build:
+       * gst/rtpmanager/gstrtpptdemux.c:
+       * gst/rtpmanager/meson.build:
+       * gst/rtsp/meson.build:
+       * gst/shapewipe/meson.build:
+       * gst/smpte/meson.build:
+       * gst/spectrum/meson.build:
+       * gst/udp/meson.build:
+       * gst/videobox/meson.build:
+       * gst/videocrop/meson.build:
+       * gst/videofilter/meson.build:
+       * gst/videomixer/meson.build:
+       * gst/wavenc/meson.build:
+       * gst/wavparse/meson.build:
+       * gst/y4m/meson.build:
+       * meson.build:
+       * meson_options.txt:
+       * sys/directsound/meson.build:
+       * sys/oss/meson.build:
+       * sys/oss4/meson.build:
+       * sys/v4l2/meson.build:
+       * sys/ximage/meson.build:
+         doc: Port documentation to hotdoc
+
+2018-11-12 08:05:45 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/rtpsession.c:
+         Mark some properties as DOC_SHOW_DEFAULT
+
+2018-10-22 11:39:24 +0200  Thibault Saunier <tsaunier@igalia.com>
+
+       * ext/aalib/gstaasink.c:
+       * ext/cairo/gstcairooverlay.c:
+       * ext/dv/gstdvdec.c:
+       * ext/dv/gstdvdemux.c:
+       * ext/flac/gstflacdec.c:
+       * ext/flac/gstflacenc.c:
+       * ext/flac/gstflactag.c:
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
+       * ext/gdk_pixbuf/gstgdkpixbufsink.c:
+       * ext/jack/gstjackaudioclient.c:
+       * ext/jack/gstjackaudiosink.c:
+       * ext/jack/gstjackaudiosink.h:
+       * ext/jack/gstjackaudiosrc.c:
+       * ext/jpeg/gstjpegdec.c:
+       * ext/jpeg/gstjpegenc.c:
+       * ext/jpeg/gstsmokedec.c:
+       * ext/jpeg/gstsmokeenc.c:
+       * ext/libcaca/gstcacasink.c:
+       * ext/libpng/gstpngdec.c:
+       * ext/libpng/gstpngenc.c:
+       * ext/pulse/pulsesink.c:
+       * ext/pulse/pulsesrc.c:
+       * ext/raw1394/gstdv1394src.c:
+       * ext/raw1394/gsthdv1394src.c:
+       * ext/shout2/gstshout2.c:
+       * ext/soup/gstsouphttpclientsink.c:
+       * ext/soup/gstsouphttpsrc.c:
+       * ext/speex/gstspeexdec.c:
+       * ext/speex/gstspeexenc.c:
+       * ext/vpx/gstvp8dec.c:
+       * ext/vpx/gstvp8enc.c:
+       * ext/vpx/gstvp9dec.c:
+       * ext/vpx/gstvp9enc.c:
+       * ext/wavpack/gstwavpackdec.c:
+       * ext/wavpack/gstwavpackenc.c:
+       * gst/alpha/gstalpha.c:
+       * gst/alpha/gstalpha.h:
+       * gst/alpha/gstalphacolor.c:
+       * gst/apetag/gstapedemux.c:
+       * gst/audiofx/audioamplify.c:
+       * gst/audiofx/audiochebband.c:
+       * gst/audiofx/audiocheblimit.c:
+       * gst/audiofx/audiodynamic.c:
+       * gst/audiofx/audioecho.c:
+       * gst/audiofx/audiofirfilter.c:
+       * gst/audiofx/audioiirfilter.c:
+       * gst/audiofx/audioinvert.c:
+       * gst/audiofx/audiokaraoke.c:
+       * gst/audiofx/audiopanorama.c:
+       * gst/audiofx/audiowsincband.c:
+       * gst/audiofx/audiowsinclimit.c:
+       * gst/audiofx/gstscaletempo.c:
+       * gst/audioparsers/gstaacparse.c:
+       * gst/audioparsers/gstac3parse.c:
+       * gst/audioparsers/gstamrparse.c:
+       * gst/audioparsers/gstdcaparse.c:
+       * gst/audioparsers/gstflacparse.c:
+       * gst/audioparsers/gstmpegaudioparse.c:
+       * gst/audioparsers/gstsbcparse.c:
+       * gst/audioparsers/gstwavpackparse.c:
+       * gst/auparse/gstauparse.c:
+       * gst/autodetect/gstautoaudiosink.c:
+       * gst/autodetect/gstautoaudiosrc.c:
+       * gst/autodetect/gstautovideosink.c:
+       * gst/autodetect/gstautovideosrc.c:
+       * gst/avi/gstavidemux.c:
+       * gst/avi/gstavimux.c:
+       * gst/avi/gstavisubtitle.c:
+       * gst/cutter/gstcutter.c:
+       * gst/debugutils/breakmydata.c:
+       * gst/debugutils/gstcapssetter.c:
+       * gst/debugutils/gstpushfilesrc.c:
+       * gst/debugutils/gsttaginject.c:
+       * gst/debugutils/progressreport.c:
+       * gst/debugutils/rndbuffersize.c:
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/dtmf/gstdtmfsrc.c:
+       * gst/dtmf/gstrtpdtmfdepay.c:
+       * gst/dtmf/gstrtpdtmfsrc.c:
+       * gst/effectv/gstaging.c:
+       * gst/effectv/gstdice.c:
+       * gst/effectv/gstedge.c:
+       * gst/effectv/gstop.c:
+       * gst/effectv/gstquark.c:
+       * gst/effectv/gstradioac.c:
+       * gst/effectv/gstrev.c:
+       * gst/effectv/gstripple.c:
+       * gst/effectv/gstshagadelic.c:
+       * gst/effectv/gststreak.c:
+       * gst/effectv/gstvertigo.c:
+       * gst/effectv/gstwarp.c:
+       * gst/equalizer/gstiirequalizer10bands.c:
+       * gst/equalizer/gstiirequalizer3bands.c:
+       * gst/equalizer/gstiirequalizernbands.c:
+       * gst/flv/gstflvdemux.c:
+       * gst/flv/gstflvmux.c:
+       * gst/flv/gstindex.c:
+       * gst/flx/gstflxdec.c:
+       * gst/goom/filters.c:
+       * gst/goom/goom_config.h:
+       * gst/goom/goom_filters.h:
+       * gst/goom/goom_plugin_info.h:
+       * gst/goom/gstgoom.c:
+       * gst/goom/ifs.c:
+       * gst/goom/sound_tester.h:
+       * gst/goom2k1/filters.h:
+       * gst/goom2k1/goom_core.h:
+       * gst/goom2k1/gstgoom.c:
+       * gst/icydemux/gsticydemux.c:
+       * gst/id3demux/gstid3demux.c:
+       * gst/imagefreeze/gstimagefreeze.c:
+       * gst/interleave/deinterleave.c:
+       * gst/interleave/interleave.c:
+       * gst/isomp4/gstqtmoovrecover.c:
+       * gst/isomp4/gstqtmux-doc.c:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/qtdemux.c:
+       * gst/law/alaw-decode.c:
+       * gst/law/alaw-encode.c:
+       * gst/law/mulaw-conversion.c:
+       * gst/law/mulaw-decode.c:
+       * gst/law/mulaw-encode.c:
+       * gst/level/gstlevel.c:
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-parse.c:
+       * gst/matroska/webm-mux.c:
+       * gst/monoscope/gstmonoscope.c:
+       * gst/multifile/gstmultifilesink.c:
+       * gst/multifile/gstmultifilesrc.c:
+       * gst/multifile/gstsplitfilesrc.c:
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsrc.c:
+       * gst/multipart/multipartdemux.c:
+       * gst/multipart/multipartmux.c:
+       * gst/replaygain/gstrganalysis.c:
+       * gst/replaygain/gstrglimiter.c:
+       * gst/replaygain/gstrgvolume.c:
+       * gst/rtp/gstrtpL16depay.c:
+       * gst/rtp/gstrtpL16pay.c:
+       * gst/rtp/gstrtpL24depay.c:
+       * gst/rtp/gstrtpL24pay.c:
+       * gst/rtp/gstrtpac3depay.c:
+       * gst/rtp/gstrtpac3pay.c:
+       * gst/rtp/gstrtpamrdepay.c:
+       * gst/rtp/gstrtpamrpay.c:
+       * gst/rtp/gstrtpbvdepay.c:
+       * gst/rtp/gstrtpbvpay.c:
+       * gst/rtp/gstrtph261depay.c:
+       * gst/rtp/gstrtph261pay.c:
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph265depay.c:
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/gstrtpj2kdepay.c:
+       * gst/rtp/gstrtpj2kpay.c:
+       * gst/rtp/gstrtpjpegpay.c:
+       * gst/rtp/gstrtpklvdepay.c:
+       * gst/rtp/gstrtpklvpay.c:
+       * gst/rtp/gstrtpstreamdepay.c:
+       * gst/rtp/gstrtpstreampay.c:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpdtmfmux.c:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpmux.c:
+       * gst/rtpmanager/gstrtpptdemux.c:
+       * gst/rtpmanager/gstrtpptdemux.h:
+       * gst/rtpmanager/gstrtprtxqueue.c:
+       * gst/rtpmanager/gstrtprtxreceive.c:
+       * gst/rtpmanager/gstrtprtxsend.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtsp/gstrtpdec.c:
+       * gst/shapewipe/gstshapewipe.c:
+       * gst/smpte/gstsmpte.c:
+       * gst/smpte/gstsmptealpha.c:
+       * gst/spectrum/gstspectrum.c:
+       * gst/udp/gstmultiudpsink.c:
+       * gst/udp/gstudpsink.c:
+       * gst/udp/gstudpsrc.c:
+       * gst/videobox/gstvideobox.c:
+       * gst/videocrop/gstaspectratiocrop.c:
+       * gst/videocrop/gstvideocrop.c:
+       * gst/videofilter/gstgamma.c:
+       * gst/videofilter/gstvideobalance.c:
+       * gst/videofilter/gstvideoflip.c:
+       * gst/videomixer/videomixer2.c:
+       * gst/wavenc/gstwavenc.c:
+       * gst/wavparse/gstwavparse.c:
+       * gst/y4m/gsty4mencode.c:
+       * sys/directsound/gstdirectsoundsink.c:
+       * sys/oss/gstosssink.c:
+       * sys/oss/gstosssrc.c:
+       * sys/oss4/oss4-sink.c:
+       * sys/oss4/oss4-source.c:
+       * sys/osxaudio/gstosxaudiosink.c:
+       * sys/osxaudio/gstosxaudiosrc.c:
+       * sys/v4l2/gstv4l2radio.c:
+       * sys/v4l2/gstv4l2sink.c:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/tuner.c:
+       * sys/v4l2/tunerchannel.c:
+       * sys/v4l2/tunernorm.c:
+       * sys/waveform/gstwaveformsink.c:
+       * sys/ximage/gstximagesrc.c:
+         docs: Port all docstring to gtk-doc markdown
+
+2019-05-02 22:14:35 -0700  Thiago Santos <thiagossantos@gmail.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: do not try to send EOS with invalid seqnum
+         The second udpsrc (rtcp) might not have seen the segment event if it was
+         not enabled or if rtcp is not available on the server. So if the
+         application tries to send an EOS event it will try to set an invalid
+         seqnum to the event.
+
+2019-04-24 13:54:12 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: Add more information to probation warning
+
+2019-04-24 13:47:54 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Call on-new-ssrc earlier
+         Right now, we may call on-new-ssrc after we have processed the first
+         RTP packet. This prevents properly configuring the source as some
+         property like "probation" are copied internally for use as a
+         decreasing counter. For this specific property, it prevents the
+         application from disabling probation on auxiliary sparse stream.
+         Probation is harmful on sparse streams since the probation algorithm
+         assume frequent and contiguous RTP packets.
+
+2019-02-19 13:34:49 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Write MasteringMetadata and Max{CLL,FALL}
+         Enable muxing with HDR meta data if upstream provided it
+
+2019-02-18 23:28:50 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.c:
+       * gst/matroska/matroska-ids.h:
+         matroskademux: Add support parsing HDR metadata
+         Set SMPTE ST 2086 mastering-display-metadata and
+         content-light-level to caps, if any
+
+2019-02-19 18:27:23 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/matroska/ebml-write.c:
+       * gst/matroska/ebml-write.h:
+       * gst/matroska/matroska-ids.h:
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-mux.h:
+       * gst/matroska/matroska-read-common.h:
+         matroska: Remove white space
+
+2019-05-01 10:00:51 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpvrawdepay.c:
+         rtprawdepay: Don't get rid of the buffer pool on FLUSH_STOP
+         We expect there to be a pool as long as the caps are known and
+         FLUSH_STOP is not resetting the caps. Getting rid of the pool would
+         cause assertions.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/584
+
+2019-02-08 10:09:17 +0100  Danny Smith <dannys@axis.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Free storage when freeing session
+
+2019-04-25 21:52:42 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Fix typo in error message
+
+2019-04-25 11:19:06 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: Only set the DISCONT flag on the first buffer after segment start
+
+2019-04-24 02:38:32 +0900  okuoku <mjt@cltn.org>
+
+       * ext/jack/gstjackaudiosink.c:
+       * ext/jack/gstjackaudiosrc.c:
+         jack: Use jack_free(3) to release ports
+         Port objects acquired with jack_get_ports() need to be freed with
+         jack_free(3), not stdlib free().
+         On Windows, Jack may be linked against different libc than GStreamer
+         libraries so free()ing port objects directly might cause crash because
+         of libc mismatch.
+
+2019-04-23 10:10:01 +0100  Philippe Normand <philn@igalia.com>
+
+       * gst/audiofx/gstscaletempo.c:
+         scaletempo: Advertise interleaved layout in caps templates
+         Scaletempo doesn't support non-interleaved layout. Not explicitely stating this
+         would trigger critical warnings and a caps negotiation failure when scaletempo
+         is used as playbin audio-filter.
+         Patch suggested by George Kiagiadakis <george.kiagiadakis@collabora.com>.
+         Fixes #591
+
+2019-04-21 20:12:28 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/matroska/meson.build:
+         meson: matroska: Ensure header dependency not only library
+         Library existence does not guarantee header.
+
+2018-11-13 13:48:11 +0100  Robert Rosengren <robertr@axis.com>
+
+       * gst/udp/gstmultiudpsink.c:
+         multidupsink: Use gst_net_utils_set_socket_tos for QoS DSCP
+         Util function in net library exists for setting QoS DSCP on socket, hence
+         use it to simplify code.
+
+2019-04-19 10:27:38 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * README:
+       * RELEASE:
+       * configure.ac:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * meson.build:
+         Back to development
+
+=== release 1.16.0 ===
+
+2019-04-19 00:23:16 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * README:
+       * RELEASE:
+       * configure.ac:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.16.0
+
+2019-04-19 00:23:16 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         Update docs
+
+2019-04-19 00:23:14 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * po/el.po:
+       * po/zh_CN.po:
+         Update translations
+
+2019-04-18 17:14:18 +0200  Benjamin Sigonneau <b.sigonneau@mediadone.fr>
+
+       * ext/qt/qtplugin.pro:
+         qmlglsink: fix compilation with Qt >= 5.5 on Windows
+         As of Qt >= 5.5, qmake do not link to opengl32 by default anymore. This commit adds opengl32.lib to the .pro
+         file so that the plugin can be build using QtCreator on Windows.
+
+2019-04-17 15:48:26 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+         meson: Build qt plugin in C++11 mode explicitly
+         This works implicitly most of the time, but we need to set it
+         explicitly for building with Android.
+
+2019-04-16 14:35:06 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2: fix use after free when handling events
+         The sink_event parent function may consume the event so we shouldn't use
+         it after having calling it.
+
+=== release 1.15.90 ===
+
+2019-04-11 00:26:58 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.15.90
+
+2019-04-11 00:26:58 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         Update docs
+
+2019-04-09 23:51:22 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+         rtpulpfecdec,enc: unbreak plugin gtk-doc build in autotools
+         Fix doc chunks to not use that syntax for links that have the
+         url as description, it will be put verbatim into the xml/*.xml
+         file and then the expat parser will throw a syntax error like:
+         File "../../common/mangle-db.py", line 71, in <module>
+         main()
+         File "../../common/mangle-db.py", line 69, in main
+         patch (details.replace("-details", ""), os.path.basename(details))
+         File "../../common/mangle-db.py", line 20, in patch
+         doc = xml.dom.minidom.parse(related)
+         File "/usr/lib/python2.7/xml/dom/minidom.py", line 1918, in parse
+         return expatbuilder.parse(file)
+         File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 924, in parse
+         result = builder.parseFile(fp)
+         File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 207, in parseFile
+         parser.Parse(buffer, 0)
+         xml.parsers.expat.ExpatError: not well-formed (invalid token): line 84, column 7
+
+2019-04-08 11:35:34 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtp/gstrtpvrawpay.c:
+         rtpvrawpay: preserve GST_BUFFER_FLAG_DISCONT on the first outputted buffer
+         If the incoming frame buffer has GST_BUFFER_FLAG_DISCONT set this should
+         be preserved and set for the first output buffer too, like other
+         payloaders do.
+         Spotted with gst-validate-1.0 when adding integration tests for
+         rtpsession, a minimal test to reproduce the issue is:
+         $ gst-validate-1.0 videotestsrc num-buffers=1 ! rtpvrawpay ! identity ! fakesink
+         Starting pipeline
+         Pipeline started
+         warning : Buffer didn't have expected DISCONT flag333 speed: 1.000000 />
+         Detected on <identity0:sink>
+         Detected on <identity0:src>
+         Detected on <fakesink0:sink>
+         Description : Buffers after SEGMENT and FLUSH must have a DISCONT flag
+         Issues found: 1
+         =======> Test PASSED (Return value: 0)
+
+2019-03-22 12:42:14 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+         rtpulpfec*: Replace github URIs with gitlab.fdo ones
+
+2019-03-21 17:01:11 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtpreddec.c:
+       * gst/rtp/gstrtpredenc.c:
+         rtpred*: Add example pipelines
+
+2019-03-21 16:48:37 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtpreddec.c:
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+         rtpulpfec*: Improve documentation
+
+2019-03-20 18:31:48 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtpstorage.c:
+       * gst/rtp/gstrtpulpfecdec.c:
+         rtpstorage + rtpulpfecdec: Get the storage using a query as fallback
+         This allows it to be used using gst-launch for easier testing.
+
+2019-03-19 06:22:29 -0700  Dan Kegel <dank@kegel.com>
+
+       * sys/osxvideo/Makefile.am:
+       * sys/osxvideo/meson.build:
+         osxvideo: fix mac os 10.14 build
+         lockFocusIfCanDraw is deprecated in mac os 10.14.  Apple suggests a
+         different way to do what that does, but for now, just suppress the deprecation.
+         There's no way to disable just that deprecation, so shut them all down.
+         OpenGL is also deprecated in mac os 10.14.  There is a gentle way to
+         turn off just those deprecations (GL_SILENCE_DEPRECATION), but since
+         this commit turns them all off, that's moot.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/577
+
+2019-04-07 12:00:49 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtpsession.c:
+         test: rtpsession: Verify on-sending-nacks callback
+
+2019-03-27 16:19:15 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+         rtpsession: Allow overriding NACK packet creation
+         This introduce a new signal on RTSession, on-sending-nacks is emited
+         right before the list of seqnums to be nacked are processed and
+         transformed into FB Nack. This allow implementing custom nacks
+         handling through another mechanism with APP feedback.
+
+2018-11-20 02:45:04 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Add disable-sr-timestamp property
+         The Onvif Streaming Spec, in section 6.11, mandates that when
+         Rate-Control is disabled potential RTCP packets shall have
+         their timestamps set to 0.
+         <https://www.onvif.org/specs/stream/ONVIF-Streaming-Spec.pdf>
+
+2019-03-05 20:57:44 +0100  Philipp Zabel <philipp.zabel@gmail.com>
+
+       * sys/v4l2/ext/types-compat.h:
+         v4l2: remove __user define from types-compat.h
+         Remove the now unused __user define.
+
+2019-03-05 20:53:47 +0100  Philipp Zabel <philipp.zabel@gmail.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: use opRGB colorspace and xfer func defines
+         AdobeRGB defines have been renamed to opRGB in the kernel headers,
+         use the new names.
+
+2019-01-24 16:12:13 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: support orphaning
+         Recent kernels allow REQBUFS(0) on a queue that still has buffers in
+         use (mmapped or exported via dmabuf), orphaning all buffers on the queue.
+         If this is supported, the v4l2videodec element does not have to send a
+         drain request downstream.
+
+2019-01-24 16:12:13 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2bufferpool.h:
+         v4l2bufferpool: support orphaning
+         Now that the v4l2allocator allows orphaning the V4L2 buffer queue, add
+         support for orphaning in the v4l2bufferpool. gst_v4l2_buffer_pool_orphan
+         can be used as a replacement for gst_v4l2_buffer_pool_stop, without
+         having to wait for buffers to be returned to the pool.
+
+2019-01-24 16:12:13 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2allocator.c:
+       * sys/v4l2/gstv4l2allocator.h:
+         v4l2allocator: support orphaning
+         Recent kernels allow REQBUFS(0) on a queue that still has buffers in
+         use (mmapped or exported via dmabuf), orphaning all buffers on the queue.
+         Orphaning the allocator causes it to release all buffers with
+         REQBUFS(0), even if they are still in use. An orphaned allocator can
+         only be stopped. It can not be restarted or create new buffers.
+
+2019-01-24 15:36:49 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/ext/v4l2-common.h:
+       * sys/v4l2/ext/v4l2-controls.h:
+       * sys/v4l2/ext/videodev2.h:
+         v4l2: update kernel headers to latest from media tree
+         Update to the latest installed headers (output of make headers_install)
+         from the media tree, keeping the slight modifications to the includes.
+         This includes new HEVC controls, the AdobeRGB -> opRGB rename, a new
+         capabilities field for v4l2_requestbuffers and v4l2_create_buffers, new
+         32-bit YUV formats, and request_fd changes.
+
+2019-04-03 14:13:49 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/shout2/gstshout2.c:
+         shout2: Fix leak on error in start
+
+2019-03-29 22:48:53 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtpsession.c:
+         test: rtpsession: Test FB Nack packing
+         We used to split the NACK if a smaller seqnum of a range of seqnum was
+         submited. This test also make sure that the three operations (append,
+         prepend, update) works properly.
+
+2019-03-29 22:34:47 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtpsession.c:
+         test: rtpsession: Test handling of NACK surplus
+         This test verify that NACKs that didn't fit in one packet are properly
+         filtered and inserted into the following pipeline.
+
+2019-03-25 13:42:25 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtpmanager/rtpsource.h:
+         rtpsession: Send as many nack seqnum as possible
+         In order to do that, we now split the nacks registration from the actual
+         FB nack packet construction. We then try and add as many FB Nacks as
+         possible into the active packets and leave the remaining seqnums in the
+         RTPSource. In order to avoid sending outdated NACK later on, we save the
+         seqnum calculated deadline and cleanup the outdated seqnums before the
+         next RTCP send.
+         Fixes #583
+
+2018-04-30 10:54:19 +0200  John Bassett <john.bassett@pexip.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Fix race when sending PLI, FIR and NACK packets
+         Calling rtp_session_send_rtcp before marking the source as requiring a
+         pli/fir/nack meant the rtcp_thread could be scheduled and start running
+         before the source was updated. This meant the request would not be sent
+         early but instead was transmitted with the next regular RTCP packet.
+         Add test for nack generation.
+
+2019-03-29 16:49:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: Fix early rtcp time comparision
+         If the current time is equal to the early rtcp time deadline, there is
+         no need to schedule a timer. This ensure that immediate feedback is
+         really immediate and simplify implementing unit tests with the test
+         clock, which stops perfectly on the timeout time.
+         This fix has been extracted from Pexip feature patch called
+         "rtpsession: Allow instant transmission of RTCP packets"
+
+2019-01-24 11:54:49 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: preserve features when fixating caps
+         The caps features were lost when sorting caps structures in
+         gst_v4l2src_fixate(). This was breaking alternate as
+         GST_CAPS_FEATURE_FORMAT_INTERLACED was removed from the caps.
+
+2018-11-13 21:23:30 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/gstrtpgstpay.c:
+         rtpgstpay: Set DELTA_UNIT flag when appropriate
+         When used in combination with a rtponviftimestamp element
+         downstream, forwarding this flag ensures it gets correctly
+         serialized in the ONVIF header extension.
+
+2019-04-03 16:42:26 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         docs: fix typo s/abonormally/abnormally/
+
+2019-04-03 16:38:56 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/debugutils/gsttaginject.c:
+       * gst/goom2k1/gstgoom.c:
+       * gst/monoscope/gstmonoscope.c:
+       * gst/rtp/README:
+       * gst/rtp/gstrtpac3pay.c:
+       * gst/rtp/gstrtpmp4apay.c:
+       * gst/rtp/gstrtpmp4vpay.c:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/smpte/gstsmpte.c:
+         docs: fix typo s/incomming/incoming/
+
+2019-04-03 16:34:22 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtp/gstrtpmp4apay.c:
+       * gst/rtp/gstrtpmp4gpay.c:
+       * gst/rtp/gstrtpmp4vpay.c:
+       * gst/rtp/gstrtpvrawpay.c:
+         rtp: fix indentation after G_DEFINE_TYPE
+         A missing colon after G_DEFINE_TYPE declaration was confusing gst-indent
+         and causing problem in the pre-commit hook.
+         Add the missing colon and fix the following function declaration to
+         follow the normal GStreamer style.
+
+2019-03-07 15:34:03 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+         rtpsession: fix comment to refer to buffers instead of groups
+         One comments in gst_rtp_session_chain_send_rtp_common() is referring to
+         groups in a buffer list, however this concept of "group" comes from
+         GStreamer 0.10 and does not exist anymore in GStreamer 1.0, so update the
+         comment to refer to buffers instead.
+
+2019-03-06 09:52:45 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: add comment to explain why probation queue is not always cleared
+
+2019-04-02 12:51:04 +0200  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: add test to verify that stats are correct
+         Add a test to verify that stats about sent and received packets are
+         correct even when using buffer lists.
+         NOTE: the newly introduced get_session_source_stats() selects the
+         desired source (sender or receiver) by filtering them by type (using the
+         get_sender parameter) rather than by ssrc because this simplifies the
+         code and it's good enough for testing purposes as there is usually one
+         source per type in the test setup.
+         Filtering by ssrc would have required handling asynchronous signals like
+         "on-new-sender-ssrc", with the relative locking, just to retrieve the
+         actual ssrc of the sender.
+
+2019-03-05 13:43:12 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: fix stats about received packets
+         The update_receiver_stats() function is called also when sending packets
+         in rtp_source_send_rtp(), and sending packets may happen using a buffer
+         list rather than individual buffers.
+         So update the stats using the actual number of packets sent.
+         NOTE: this is fine for the receive path too (rtp_process_send_rtp)
+         because the receive path does not support buffer lists and
+         pinfo->packets would always be equal to 1 in this case.
+
+2019-03-11 10:08:21 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: move buffer list creation next to its validation
+         The tests create a buffer list and then use the chain_list callback to
+         verify that the correct packets have been pushed.
+         Move the creation and validation code next to each other so that the
+         reader can more easily understand what is going on.
+         While at it add some comments to introduce the two related functions.
+
+2019-03-06 19:27:01 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: set the chain_list function directly in the test
+         The helper function set_chain_function does not really do anything useful, remove it.
+
+2019-03-06 19:19:03 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: make check_packet more flexible
+         Make it possible to differentiate between the position in the list and
+         the packet index in the global structures in check_packet, in some
+         future case the list may change, in case some element removes a buffer
+         from the list, and the two indices may not coincide.
+
+2019-03-05 12:47:29 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: factor out a function to create packets buffers
+
+2019-03-04 11:27:33 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: check if the chain_list function has been called
+         Make the test more useful to verify that the chain list function has
+         actually been called.
+
+2019-02-27 12:27:21 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/rtpbin_buffer_list.c:
+         test: rtpbin_buffer_list: port to GStreamer 1.0
+         Port the rtpbin_buffer_list test to GStreamer 1.0 and re-enable it.
+         Some other changes include:
+         - the check on the caps has been moved from the buffer level to the
+         pad level;
+         - remove underscore prefix from static functions names, this is not
+         idiomatic in C and rarely used in the other tests;
+         - the unused header_buffer variable has been removed;
+         - check_group() has been renamed to check_packet() because in
+         GStreamer 1.0 there is no concept of "group" anymore, the comments
+         have also been updated to reflect this.
+
+2019-04-01 18:20:53 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/jpegdec.c:
+         tests: jpegdec: bump discoverer timeout for valgrind
+         Tests might take a bit longer, esp. when run under valgrind
+         and/or they're running on the CI with other things going on,
+         so let's just bump the timeout to something higher and let
+         the test runner time us out if needed.
+
+2019-04-01 18:20:28 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+         meson: Only ensure that moc is available on Linux
+         On other OSes, it's not possible to have qmake or the qt5 pkg-config
+         files and not have moc, and `moc` will not be in `PATH`, so this only
+         causes problems.
+
+2019-03-21 18:24:43 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/rtpstoragestream.c:
+         rtpstorage: Limit the queue size
+         Limit to the queue size in case there is no arrival time or in case there is
+         a huge flood of packets.
+
+2019-03-18 15:30:54 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Request the FEC decoder even if ignore-pt is set
+
+2019-03-18 15:27:21 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Factor out the code that exposes the src pad
+
+2019-03-22 02:08:01 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtpreddec.c:
+         rtpreddec: Add some more debug prints
+
+2019-03-21 17:32:18 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/rtpstorage.c:
+         rtpstorage: Issue warning if request by size if 0
+         If the size is 0, then nothing will ever be in the storage, if a request is
+         received, it generally implies a misconfigured pipeline.
+
+2019-03-21 17:24:42 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtpstorage.c:
+       * gst/rtp/rtpstorage.c:
+       * gst/rtp/rtpstoragestream.c:
+         rtpstorage: Add more debug messages
+
+2019-03-21 17:12:53 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtpstorage.c:
+       * gst/rtp/rtpstorage.c:
+       * gst/rtp/rtpstoragestream.c:
+       * gst/rtp/rtpstoragestream.h:
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtpstorage.c:
+       * tests/check/meson.build:
+         rtpstorage: Make debug category available to sub objects
+
+2019-03-21 17:12:33 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtp/gstrtpstorage.c:
+         rtpstorage: Add debug funcptr to chain function
+
+2019-03-22 12:01:01 +0100  Julian Bouzas <julian.bouzas@collabora.com>
+
+       * ext/flac/gstflacdec.c:
+       * ext/flac/gstflacenc.c:
+         flac: report latency in flacenc and flacdec
+         The FLAC specification states that the data is processed in blocks, regardless of the number of channels. Thus, The latency can be calculated using the blocksize and rate. For example a 1 second block sampled at 44.1KHz has a blocksize of 44100
+
+2019-03-22 23:36:42 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/rtsp/test-onvif.c:
+         examples: rtsp: fix compiler warning
+         "control reaches end of non-void function"
+
+2019-03-22 15:07:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+         gstrtpsession: Remove set but not use running-time
+
+2019-03-19 09:50:04 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpptdemux.c:
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+         rtpmanager: Register chain functions to debug
+
+2019-02-27 15:49:13 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Allow reusing the sender AUX bin
+         This is needed for the case you don't know in advance all the sessions
+         you will be using, but would like to place all the related AUX element
+         in the same GstBin. As per current implementation, each time an sender
+         AUX bin is requested and returned, RTPBin will walk the src pads and
+         create sessions for these pads.
+         In the current implementation, if a src pad already have a sessions, it
+         returns an error and stops. As a side effect, if an AUX bin is reused in
+         a following AUX bin request, it can only work if the pads are created on
+         the last request.
+         This change simply relax the restriction in order to keep walking, and
+         just ensure that all newly created pads have a sessions.
+
+2018-06-25 17:49:07 +0200  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: set GstVideoCodecFrame sync point flag
+         The V4L2 elements already set the delta unit buffer flag when dequeueing
+         the buffer, but gst_video_encoder_finish_frame overwrites it from the
+         passed codec frame's sync point flag. Set the flag correctly.
+
+2018-08-23 11:47:14 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+         gstrtpsession: improve stats about rtx requests
+
+2019-03-20 15:45:35 -0400  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/gstrtprtxsend.c:
+         rtprtxsend: Improve looging of not found RTX packet
+         When an RTX packet is not found, display a message that say if the
+         packet have not arrived yet or if it was already removed from the RTX
+         packet queue.
+
+2018-08-09 16:40:26 +0300  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+         rtpsession: Remove unused rtp_session_create_source
+
+2019-03-21 11:17:08 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: add -Wno-unused also to C++ args when gst debug system is disabled
+         And check if argument is supported instead of just passing it blindly,
+         and make meson code slightly cleaner, centralising the argument setting
+         in one place.
+
+2019-03-10 19:30:50 +0000  Piotr Drąg <piotrdrag@gmail.com>
+
+       * po/LINGUAS:
+         Update LINGUAS
+
+2019-03-19 12:31:35 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't pass zero to denominator for framerate
+         Need to respect return of gst_video_guess_framerate() to ensure
+         non-zero denominator.
+         This patch is to fix below error with an abnormal (but has valid frame) file.
+         (gst-play-1.0:17940): GStreamer-CRITICAL **: passed '0' as denominator for `GstFraction'
+
+2019-03-05 09:43:47 +0000  Philippe Normand <philn@igalia.com>
+
+       * sys/v4l2/gstv4l2fwhtenc.c:
+       * sys/v4l2/gstv4l2h263enc.c:
+       * sys/v4l2/gstv4l2h264enc.c:
+       * sys/v4l2/gstv4l2h265enc.c:
+       * sys/v4l2/gstv4l2jpegenc.c:
+       * sys/v4l2/gstv4l2mpeg4enc.c:
+       * sys/v4l2/gstv4l2vp8enc.c:
+       * sys/v4l2/gstv4l2vp9enc.c:
+         v4l2: Set Hardware classifier on encoders
+
+2019-02-27 11:56:20 +0000  Philippe Normand <philn@igalia.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2: Set Hardware classifier on video decoders
+
+2019-03-01 14:58:24 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2transform.c:
+         v4l2transform: don't segfault if flushed without pools
+         The v4l2output and v4l2capture v4l2objects can have pool == NULL if they
+         have been stopped before.
+
+2019-02-07 11:58:19 +0000  Charlie Turner <cturner@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Find mp4a esds atoms in protected streams sample description tables.
+         This problem was found in Test. 2 of the YouTube 2018 EME
+         tests[1]. The code was accidentally not finding an mp4a's esds atom in
+         the sample description table when the stream was encrypted. It assumed
+         that if the stream is protected, then only an enca atom will be found
+         here. What happens with YouTube is they often provide protected
+         content with a few seconds of clear content, and then switch to the
+         encrypted stream.
+         The failure case here was an incorrect codec_data field being sent
+         into aacparse. The advertisement of stereo audio @ 44.1kHz for the
+         mp4a (unprotected) stream was incorrect. As usual, the esds contained
+         the real values here which were mono at 22050 Hz.
+         Here's what the MP4 tree looks like for these types of files,
+         demonstrating why the code was making a wrong assumption (or maybe
+         YouTube is being unusual),
+         [ftyp] size=8+16
+         ...
+         [moov] size=8+1571
+         ...
+         [trak] size=8+559
+         ...
+         [stsd] size=12+234
+         entry-count = 2
+         [enca] size=8+147
+         channel_count = 2
+         sample_size = 16
+         sample_rate = 44100
+         [esds] size=12+27
+         ...
+         ...
+         [mp4a] size=8+67
+         channel_count = 2
+         sample_size = 16
+         sample_rate = 44100
+         [esds] size=12+27
+         ...
+         In addition to fixing this, the checks for esds atoms in mp4a and mp4v
+         have been made symmetrical. While I haven't seen a test case for video
+         with the same problem, it seemed better to make the same checks. This
+         also fixes a crash reported from another user[2], they also noted the
+         asymmetry with mp4v and mp4a.
+         [1] https://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/2018.html?test_type=encryptedmedia-test
+         [2] https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/398
+
+2019-03-15 10:41:20 +0100  Andreas Frisch <afrisch@make.tv>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Fix scale of time values in warning message
+
+2019-03-15 09:18:00 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Don't remove udpsrc/sink from rtspsrc if they were not added to it
+         This can happen in various error cases that could happen between the
+         creation of the element in question and the adding to the rtspsrc.
+         It causes an ugly critical warning right now but is otherwise harmless.
+
+2019-03-13 14:00:10 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * tests/check/elements/imagefreeze.c:
+         test: imagefreeze: add test for the num-buffers property
+
+2019-03-13 13:03:44 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+       * gst/imagefreeze/gstimagefreeze.h:
+         imagefreeze: add a num-buffers property
+         The imagefreeze element can be handy for benchmarking downstream
+         elements because it re-uses the same buffer memory and introduces less
+         overhead compared to always creating new frames with videotestsrc.
+         However it's not possible to make imagefreeze send EOS when using
+         gst-launch-1.0.
+         Add a num-buffers property to make it look more like a source in the
+         above scenario.
+
+2019-03-12 16:52:45 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: add support for new color primaries
+
+2019-03-07 11:24:38 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2sink.c:
+         v4l2sink: fix pool-less allocation query handling
+         This fixes a critical warning if the last-sample property is enabled:
+         (gst-launch-1.0:391): GStreamer-CRITICAL **: 01:12:57.428: gst_object_unref: assertion 'object != NULL' failed
+         If the allocation query does not contain any allocation pools,
+         gst_query_parse_nth_allocation_pool will leave the local pool,
+         min, and max variables undefined, so check the array length first.
+         If pool is NULL, do not call gst_object_unref.
+
+2019-03-08 11:03:31 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * tests/examples/meson.build:
+         meson: Build v4l2 example only if v4l2 plugin was built
+         Otherwise v4l2 example will be built with MSVC
+
+2019-03-07 12:38:41 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * ext/dv/gstdvdemux.c:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/udp/gstudpsrc.c:
+         docs: fix typos s/recieve/receive/
+
+2019-02-28 12:32:51 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: fix documentation of rtp_source_send_rtp parameters
+         In commit 28e5f9098 (rtpbin: use PacketInfo for the sender, 2013-09-13)
+         the rtp_source_send_rtp signature changed but the documentation was not
+         adjusted to match the new one.
+         Update the documentation to match the function signature.
+
+2019-03-06 12:59:52 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: fix typo in a comment, s/SESSION_LOCK/RTP_SESSION_LOCK/
+         Fix a typo in a comment, mainly to avoid confusing autocompletion in
+         text editors.
+
+2019-02-27 16:45:54 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+         rtpsession: fix typos and update parameters names in comments
+         Some functions now accept a generic 'gpointer data' parameter because
+         they can work either on a single buffer or a buffer list.
+         However the comments were still referring to the old 'GstBuffer *buffer'
+         parameter, so update the comments to match the actual functions
+         signature.
+
+2019-03-06 16:28:34 +0100  Antonio Ospite <antonio.ospite@collabora.com>
+
+       * gst/rtpmanager/rtpstats.h:
+         rtpstats: fix some fields names in the RTPSourceStats documentation
+         Fix documentation of RTPSourceStats to use the actual fields names.
+
+2019-03-06 17:40:12 +0000  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/gstrtpulpfecdec.c:
+         rtpulpfdecdec: only put recovered packet back into storage if not recovered from there
+
+2019-03-06 17:38:03 +0000  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/gstrtpulpfecdec.c:
+         rtpulpfecdec: fix buffer leak when packet is recovered from storage
+         Exposed by rtpulpfecdec_recovered_from_storage test.
+
+2019-03-06 17:35:58 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/rtpulpfec.c:
+         tests: rtpulpfec: fix buffer leak in unit test
+         This freed wrapped memory instead of the GstMemory or buffer.
+
+2019-03-06 17:33:23 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: fix caps leak
+         Exposed by rtp_h264depay_bytestream() unit test.
+
+2019-03-06 17:28:57 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         tests: rtpjitterbuffer: fix leaks in new test_push_eos() test
+
+2019-03-06 17:26:23 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/meson.build:
+         tests: states: blacklist gtk sinks for state change test
+         gtk_init() throws GLib-GIO-WARNING **: unknown schema extension 'd'
+         unrelated to our test environment.
+
+2019-03-06 17:26:03 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/.gitignore:
+       * tests/examples/rtp/.gitignore:
+         tests: .gitignore more test and example binaries
+
+2019-03-05 15:26:45 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gtkgstglwidget.c:
+         gtkgl: Also try retrieving an EGL context from Gdk with X11
+         Some embedded platforms will use EGL instead of GLX within the X11
+         ecosystem.
+
+2019-03-04 09:07:30 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * meson.build:
+         Back to development
+
+2019-02-25 11:23:56 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: fix AV1 caps when there's no codec_data
+         There is no "byte-stream" format for AV1 in Matroska, this
+         was probably cargo-culted from H.264. codec_data / CodecPrivate
+         is now mandatory for AV1 in Matroska[*], but there are sample
+         files out there which don't have it (e.g. some Elecard ones).
+         [*] https://github.com/Matroska-Org/matroska-specification/blob/master/codec/av1.md#codecprivate-1
+
+2019-02-28 08:52:28 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/meson.build:
+         meson: don't build icles when tests are disabled
+         They are manual tests, so let them be controlled
+         via the tests option.
+
+2019-02-27 15:39:12 +0100  Marc Leeman <marc.leeman@gmail.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: small spell correct
+
+=== release 1.15.2 ===
+
+2019-02-26 11:47:29 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.15.2
+
+2019-02-26 11:47:29 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         Update docs
+
+2019-02-26 11:47:25 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * po/af.po:
+       * po/az.po:
+       * po/bg.po:
+       * po/ca.po:
+       * po/cs.po:
+       * po/da.po:
+       * po/de.po:
+       * po/el.po:
+       * po/en_GB.po:
+       * po/eo.po:
+       * po/es.po:
+       * po/eu.po:
+       * po/fi.po:
+       * po/fr.po:
+       * po/fur.po:
+       * po/gl.po:
+       * po/hr.po:
+       * po/hu.po:
+       * po/id.po:
+       * po/it.po:
+       * po/ja.po:
+       * po/lt.po:
+       * po/lv.po:
+       * po/mt.po:
+       * po/nb.po:
+       * po/nl.po:
+       * po/or.po:
+       * po/pl.po:
+       * po/pt_BR.po:
+       * po/ro.po:
+       * po/ru.po:
+       * po/sk.po:
+       * po/sl.po:
+       * po/sq.po:
+       * po/sr.po:
+       * po/sv.po:
+       * po/tr.po:
+       * po/uk.po:
+       * po/vi.po:
+       * po/zh_CN.po:
+       * po/zh_HK.po:
+       * po/zh_TW.po:
+         Update translations
+
+2019-02-22 12:22:04 -0300  Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: accept Bayer as possible input/output for V4L2 codecs
+         A V4L2 transform codec may input/output data on Bayer format.
+         Add support for that.
+
+2019-02-22 12:22:44 -0300  Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: fix a typo on a debug message at v4l2_calls
+         suppored -> supported
+
+2019-02-25 19:08:08 +1100  Matthew Waters <matthew@centricular.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2dec: also remove the colorimetry and chroma-site fields
+         If a different format is chosen, then these values are incorrect.
+
+2019-02-22 16:02:12 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+         rtpsession: Fix EOS forwarding
+         So far we assumed that if all sources are bye, this meant we needed to
+         send an EOS on the RTCP sink. The problem is that this case may happens
+         if we only had one internal source and it detected a collision.
+         So now we limit the EOS forwarding to when there is a send_rtp_sink pad
+         and that this pad has received EOS. We don'tcheck the recv_rtp_sink
+         since the code does not wait for the bye to be send before sending EOS
+         to the RTCP src pad.
+
+2019-02-25 01:12:56 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: Declare support for RF64
+         RF64 encode support was added to wavenc quite some time
+         ago, but not declared in wavparse. It seems wavparse can
+         decode it though, so add it to the sink pad.
+         The RF64 support was added in
+         https://bugzilla.gnome.org/show_bug.cgi?id=735627
+
+2019-02-12 18:28:40 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtpmanager/rtpsource.h:
+         rtp: Add property to disable RTCP reports per internal rtpsource
+         This is useful when implementing custom retransmission mechanism like
+         RIST to prevent RTCP from being produces for the retransmitted SSRC.
+         This would also be used in general for various purpose when customizing
+         an RTP base pipeline.
+
+2019-02-12 18:26:21 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: Emit on-new-sender-ssrc for RTX ssrc also
+
+2019-01-15 18:04:09 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtp jitterbuffer test: Test for queue filling
+
+2019-01-11 17:53:43 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.h:
+         rtpjitterbuffer: Limit size to 2^15 packets
+         If it goes over 2^15 packets, it will think it has rolled over
+         and start dropping all packets. So make sure the seqnum distance is not too big.
+         But let's not limit it to a number that is too small to avoid emptying it
+         needlessly if there is a spurious huge sequence number, let's allow at
+         least 10k packets in any case.
+
+2019-02-11 11:33:32 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: There is no automatic reorder threshold
+
+2019-01-30 10:47:49 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * ext/pulse/pulsedeviceprovider.c:
+         pulse: Post DEVICE_CHANGED on modification
+
+2018-11-26 13:48:56 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * ext/pulse/pulsedeviceprovider.c:
+       * ext/pulse/pulsedeviceprovider.h:
+         pulse: Mark default devices as "default"
+
+2019-02-08 16:10:25 +0000  Ilya Smelykh <ilya.smelykh@gmail.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Use 8kHz sample rate for alaw/mulaw audio
+
+2019-02-07 09:54:31 +0000  Ilya Smelykh <ilya.smelykh@gmail.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: set sample rate to 8KHz for G.711 audio
+
+2019-02-08 13:59:19 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Only write timecode trak for video
+         Recent changes in ccextractor were attaching timecode meta to the closed
+         caption track. We shouldn't write timecode information for the closed
+         caption trak.
+
+2019-02-05 22:14:18 +0100  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+       * configure.ac:
+       * ext/vpx/gstvpxdec.c:
+       * ext/vpx/meson.build:
+         vpx: Fix build against libvpx 1.8
+         The deprecated debug visualizer was removed.
+
+2019-02-05 19:41:51 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * tests/check/elements/rtph264.c:
+       * tests/check/elements/rtph265.c:
+       * tests/check/elements/rtpulpfec.c:
+         misc: Fix warnings on Cerbero's mingw (gcc 4.7)
+         error: this decimal constant is unsigned only in ISO C90 [-Werror]
+
+2019-02-06 14:43:18 +0530  Arun Raghavan <arunsr@codeaurora.org>
+
+       * ext/pulse/pulsesink.c:
+         pulsesink: Deal with not being able to convert a format to caps
+         It is possible that PulseAudio adds formats that are not yet supported
+         in pulsesink, and in those cases, we want to gracefully skip them rather
+         than cause an assert on a NULL caps.
+
+2019-01-17 09:22:18 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Remove trailing '\n' in debug
+
+2019-02-05 15:27:49 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtgl.h:
+         qmlgl: Fix opengl header guard changes again
+         Reapply 3d708a5bfa8961cc37671bc3226976dfc9ba50ad in the correct place
+         after the iOS additions.
+
+2019-02-02 02:29:10 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: use the correct segment seqnum
+
+2019-02-02 02:26:47 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: use the correct segment seqnum
+
+2019-02-02 02:24:01 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/gstrtpsession.h:
+         rtpsession: use the correct segment seqnum
+
+2019-01-26 10:35:31 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Do not error out if the first added and chained pad is not linked
+         And let it the oportunity to get its other pad linked
+         Example:
+         ```
+         $ gst-launch-1.0 uridecodebin uri=file:///home/thiblahute/gst-validate.save/gst-integration-testsuites/testsuites/../medias/defaults/flv/819290236.flv caps=audio/x-raw expose-all-streams=FALSE ! fakesink
+         Setting pipeline to PAUSED ...
+         Pipeline is PREROLLING ...
+         ERROR: from element /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstFlvDemux:flvdemux0: Internal data stream error.
+         Additional debug info:
+         ../subprojects/gst-plugins-good/gst/flv/gstflvdemux.c(2760): gst_flv_demux_loop (): /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstFlvDemux:flvdemux0:
+         streaming stopped, reason not-linked (-1)
+         ERROR: pipeline doesn't want to preroll.
+         Setting pipeline to NULL ...
+         Freeing pipeline ...
+         ```
+
+2019-01-16 23:54:25 -0800  Christopher Snowhill <kode54@gmail.com>
+
+       * gst/matroska/webm-mux.c:
+         webmmux: allow resolutions above 4096
+         Modify the caps string to allow width and height greater than 4096.
+         There is no need to restrict it since the matroska format allows the
+         width and height values to be up to eight bytes long, and this also
+         applies to the webm subset of the format.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/550
+
+2019-02-01 14:27:11 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+         meson: qmlgl plugin iOS definitions
+         Tested with cross-ios-arm64 and cross-ios-x86, since those two are the
+         only archs shipped with the official Qt binaries.
+
+2019-02-01 14:27:11 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/gstqtgl.h:
+         qt: Don't define GLsync inside gstglfuncs.h
+         This was originally added for fixing conflicting definitions between
+         Android and Qt, but times have changed and now this breaks the build
+         on iOS:
+         [...]/OpenGLES.framework/Headers/ES3/gl.h:1006:48: error: unknown type name 'gst_qt_GLsync'
+         GL_API void           GL_APIENTRY glGetSynciv (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values)   OPENGLES_DEPRECATED(ios(7.0, 12.0), tvos(9.0, 12.0));
+         ^
+         ../ext/qt/gstqtgl.h:49:16: note: expanded from macro 'GLsync'
+         #define GLsync gst_qt_GLsync
+         ^
+         6 errors generated.
+         Instead, we simply avoid defining GLsync ourselves if we're using Qt.
+
+2019-02-01 14:27:11 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+         meson: Fix indentation in qt plugin and add a FIXME comment
+
+2019-01-26 21:02:27 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay; Fix handling of marker on aggregated packet
+         When multiple nals are aggrgated, the marker bit should be associated only
+         with the last NAL of the packet. Otherwise we may break rendering in with
+         AU alignment.
+
+2019-01-26 21:01:08 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: Fix handling or marker on STAP-A
+         Only forward the marker for the last NAL of the STAP-A. Otherwise each NAL
+         endup being assumed to be a full frame which may break rendering.
+         Fixes 557
+
+2019-01-27 09:19:00 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtph265.c:
+         test: h265depay: Add todo for testing aggregate packets with marker
+         We are missing a sample to test this, but a fix has been made, so add a
+         todo.
+
+2019-01-26 20:42:40 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtph264.c:
+         test: rtph264depay: Check handling of STAP-A marker
+         Related to #557
+
+2019-01-31 15:23:43 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * tests/check/meson.build:
+         meson: orc-test is not required
+         This is especially never available on iOS.
+
+2019-01-30 19:44:01 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * meson.build:
+       * tests/check/meson.build:
+         meson: Add support orc fallback
+         Allow fallback to orc subproject if any.
+         Additionally 'dependencies' keyword is removed from find_library,
+         because it's invalid keyword for find_library.
+
+2019-01-17 21:06:54 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * ext/gdk_pixbuf/gstgdkpixbufdec.c:
+         gdkpixbufdec: always output a TIME segment
+         It makes no sense for a decoder to output a BYTES segment, and
+         many elements one would plug downstream of a video decoder assume
+         the segments they receive are in TIME format, for example this fixes:
+         gst-validate-1.0 filesrc location=opacity01.svg ! gdkpixbufdec ! \
+         videobalance ! videoconvert ! fakesink
+         In that case, videobalance was emitting an assertion when trying to
+         call gst_object_sync_values()
+
+2019-01-29 12:12:51 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+         meson: Add macOS definitions for qmlgl plugin
+         Tested with Cerbero.
+
+2019-01-29 12:12:51 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+         meson: Fix building of qmlgl plugin on Android
+         Needs gnustl for C++ STL support, which is the GNU STL on Android API
+         19 and older, and is a wrapper for the llvm-libc++ STL on newer APIs.
+         QtGui C++ templates use GL functions, so GLESv2 is needed at link time
+
+2019-01-24 16:21:12 -0500  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+       * gst/interleave/deinterleave.c:
+         deinterleave: Allow switching between 1 channel configs
+         regardless of whether they're positioned, since positioning
+         with a 1 channel stream doesn't change anything.
+
+2019-01-22 11:45:49 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * configure.ac:
+         configure.ac: Fix Qt Android integration
+         The Qt Android integration is now signalled with HAVE_QT_ANDROID
+         See: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/86
+
+2018-12-18 14:46:25 -0500  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * ext/soup/meson.build:
+         Meson: fallback to libsoup subproject
+
+2019-01-22 12:52:25 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: detect opengl api from -base .pc files correctly
+         There was a mismatch between the .pc files generated by
+         autotools and by meson that would lead to meson not detecting
+         that opengl api is available even though it is, if -base was
+         built with autotools. The mismatch has now been rectified in
+         -base, so we need to update for that.
+         This is mostly for consistency, this problem didn't seem
+         to affect anything in -good.
+         See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/871
+
+2019-01-22 09:51:33 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/ximage/meson.build:
+         meson: ximage: check for XShmAttach()
+         Fixes FIXME.
+
+2019-01-22 09:32:31 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson_options.txt:
+       * sys/ximage/meson.build:
+         meson: add options for ximagesrc xshm, xfixes, xdamage checks
+         And rename x11 option to ximagesrc.
+         Fixes #553
+
+2019-01-21 11:53:53 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * ext/qt/README.md:
+         qmlgl: add README.md with information on building for non-linux platforms with qmake
+
+2019-01-19 15:46:41 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * ext/qt/meson.build:
+         qmlgl: meson: fix theoretical support for building for android
+         The android code path is slightly different than the EGLFS one,
+         so I added previously a HAVE_QT_ANDROID define for use with qmake.
+         Here I also add it in meson, although I expect nobody will ever use
+         meson to build this, as it's complicated.
+
+2019-01-19 15:37:45 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * ext/qt/qtplugin.pro:
+         qmlgl: qmake: add support for MacOS target
+
+2019-01-19 15:21:43 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * ext/qt/qtplugin.pro:
+         qmlgl: qmake: remove cerbero's include dir from the include path
+         pkg-config should do it's job here, this is unnecessary and implies using cerbero
+
+2019-01-19 15:19:26 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * ext/qt/gstqtgl.h:
+       * ext/qt/qtplugin.pro:
+         qmlgl: qualify Qt includes with their module and remove module include dir from the .pro file
+         it is perfectly legal to use the <module/class> style of includes with Qt
+         and it avoids the need for having the module's include dir in the include path
+
+2019-01-19 15:10:09 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * ext/qt/qtplugin.pro:
+         qmlgl: qmake: don't link against QtWidgets, it's not used
+
+2019-01-19 15:07:44 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * ext/qt/gstqtglutility.cc:
+       * ext/qt/qtplugin.pro:
+         qmlgl: qmake: fix building for android
+
+2019-01-19 02:39:32 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+         meson: Generate pkg-config file for qmlgl plugin
+
+2019-01-17 16:26:56 +0100  Victor Toso <me@victortoso.com>
+
+       * tests/check/elements/rtp-payloading.c:
+         tests: rtp-payloading avoid -Wmaybe-uninitialized
+         More false positives as both of them are initialized in the line
+         before they are used, wrapped with fail_unless() check.
+
+2019-01-17 16:19:40 +0100  Victor Toso <me@victortoso.com>
+
+       * tests/check/elements/matroskamux.c:
+         tests: matroskamux avoid -Wmaybe-uninitialized
+         False positive for the three variables but some warnings like:
+         ../tests/check/elements/matroskamux.c:875:10:
+         warning: 'chapters_offset' may be used uninitialized in this function [-Wmaybe-uninitialized]
+         *index = chapters_offset;
+         ~~~~~~~^~~~~~~~~~~~~~~~~
+         The above is false positive as there is a gboolean to check if it was
+         initialized or not (found_chapters_declaration).
+
+2018-05-28 14:39:53 +0530  Arun Raghavan <arunsr@codeaurora.org>
+
+       * ext/pulse/pulseutil.c:
+         pulse: Fix format info to caps conversion for PCM
+
+2019-01-18 12:27:34 +0530  Arun Raghavan <arunsr@codeaurora.org>
+
+       * ext/pulse/pulsesink.c:
+       * ext/pulse/pulsesrc.c:
+       * ext/pulse/pulsesrc.h:
+       * ext/pulse/pulseutil.c:
+       * ext/pulse/pulseutil.h:
+         Revert "pulsesrc: Move to extended stream API"
+         This reverts commit 4d67d1bd16bcf25acf89d8acd952badcd5b9a657.
+         Using the extended API for the capture path depends on a fix in
+         PulseAudio
+         (https://gitlab.freedesktop.org/pulseaudio/pulseaudio/merge_requests/49).
+         Until then, let's go back to the standard API.
+         Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/552
+
+2019-01-18 14:41:14 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/meson.build:
+         meson: Search for qmake-qt5 before qmake
+         The canonical name for the binary is qmake-qt5, and qmake is the
+         generic name that can also be a qt4 qmake.
+
+2019-01-17 15:30:25 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2.c:
+         v4l2: mark caps from probe as MAY_BE_LEAKED
+
+2019-01-15 18:06:11 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * sys/v4l2/gstv4l2transform.c:
+         v4l2transform: fix cdata caps leaks
+         The cdata structure was freed but not its caps.
+         It was already done in gst_v4l2_video_dec_subclass_init() and
+         gst_v4l2_video_enc_subclass_init().
+
+=== release 1.15.1 ===
+
+2019-01-17 01:59:28 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.15.1
+
+2019-01-17 01:59:28 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/gst-plugins-good-plugins.signals:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         Update docs
+
+2019-01-17 01:59:18 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * po/af.po:
+       * po/az.po:
+       * po/bg.po:
+       * po/ca.po:
+       * po/cs.po:
+       * po/da.po:
+       * po/de.po:
+       * po/el.po:
+       * po/en_GB.po:
+       * po/eo.po:
+       * po/es.po:
+       * po/eu.po:
+       * po/fi.po:
+       * po/fr.po:
+       * po/fur.po:
+       * po/gl.po:
+       * po/hr.po:
+       * po/hu.po:
+       * po/id.po:
+       * po/it.po:
+       * po/ja.po:
+       * po/lt.po:
+       * po/lv.po:
+       * po/mt.po:
+       * po/nb.po:
+       * po/nl.po:
+       * po/or.po:
+       * po/pl.po:
+       * po/pt_BR.po:
+       * po/ro.po:
+       * po/ru.po:
+       * po/sk.po:
+       * po/sl.po:
+       * po/sq.po:
+       * po/sr.po:
+       * po/sv.po:
+       * po/tr.po:
+       * po/uk.po:
+       * po/vi.po:
+       * po/zh_CN.po:
+       * po/zh_HK.po:
+       * po/zh_TW.po:
+         Update translations
+
+2019-01-16 14:11:44 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk/gl: Only unbind buffers/vertex attrib arrays if we can't directly bind the vertex array to 0
+         Binding the vertex array to 0 will unbind everything else already.
+         In the previous order older versions of the Intel GL driver caused
+         errors to be printed for every single call when disabling the vertex
+         attrib arrays after binding the vertex array to 0.
+
+2019-01-16 00:57:46 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/meson.build:
+         meson: enable tests for orc code
+
+2018-11-29 16:07:08 +0100  Patrick Radizi <patrickr@axis.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: send GstRTSPSrcTimeout message on timeout
+         The GstRTSPSrcTimeout message is sent by the rtspsrc when it receives
+         the on-timeout signal from rtpsession. This can be used by an
+         application for error handling.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/499
+
+2019-01-09 17:52:28 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Handle the encoder metadata the same as metadatacreator
+         And store it in our ENCODER tag.
+
+2019-01-09 17:48:36 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/flv/gstflvmux.c:
+       * gst/flv/gstflvmux.h:
+         flvmux: Add encoder metadata to the header
+         And also add a property for setting this. By default it has the same
+         value as the metadatacreator metadata.
+         Various software is using encoder instead of metadatacreator, others are
+         using them both for different purposes. As such it's useful to have
+         support for setting both here.
+
+2018-05-28 14:41:05 +0530  Arun Raghavan <arunsr@codeaurora.org>
+
+       * ext/pulse/pulsesink.c:
+       * ext/pulse/pulsesrc.c:
+       * ext/pulse/pulsesrc.h:
+       * ext/pulse/pulseutil.c:
+       * ext/pulse/pulseutil.h:
+         pulsesrc: Move to extended stream API
+         This is needed as a precursor to allowing capture of IEC61937
+         formats. We now also need to include the channel map while converting
+         format info to caps so that a correct channel mask is generated for
+         pulsesrc's caps.
+
+2019-01-09 16:27:16 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * tests/check/elements/rtph265.c:
+         test: rtph265pay: Verify we only mark the last fragment
+
+2019-01-09 16:24:54 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * tests/check/elements/rtph265.c:
+         test: rtph265pay: Use a bigger test frame
+         The existing frame's last slice is too small to be used for
+         fragmentation tests.
+
+2019-01-09 15:59:16 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * tests/check/elements/rtph264.c:
+         test: rtph264pay: Verify we only mark the last fragment
+
+2019-01-09 16:25:36 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Only mark the last fragment of an AU
+         Commit e721071dcac9f231e5e10b4bb31323658a6cdd1a removed the check for
+         the end of fragmentation. As a result, all fragments of an AU's last
+         NALU were marked.
+
+2019-01-09 15:56:51 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Only mark the last fragment of an AU
+         Commit 4add820cce278213ede3d5fce427ea92e0619b6f removed the check for
+         the end of fragmentation. As a result, all fragments of an AU's last
+         NALU were marked.
+         Potential fix for https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/540
+
+2019-01-09 11:48:52 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxpartreader.c:
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Refactor part preparation code and remove "prepared" signal from reader helper object
+         We don't need a special signal anymore but can directly work with
+         async-done
+
+2019-01-09 11:42:36 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxpartreader.c:
+       * gst/multifile/gstsplitmuxpartreader.h:
+       * gst/multifile/gstsplitmuxsrc.c:
+       * gst/multifile/gstsplitmuxsrc.h:
+         splitmuxsrc: Implement state change asynchronously instead of blocking
+         Blocking in change_state() is a recipe for disaster, even more so if
+         we wait for another thread that also calls into various element API and
+         could then lead to deadlocks on e.g. the state lock.
+
+2019-01-05 23:10:46 +0400  Marc-André Lureau <marcandre.lureau@redhat.com>
+
+       * ext/pulse/pulsesrc.c:
+         pulsesrc: fix checking for invalid stream index
+         PA_INVALID_INDEX, the default value, is unfortunately !0.
+         Setting the volume before the stream is created will put the ring
+         buffer in error state. Unfortunately, that's what spice-gtk does.
+
+2018-12-20 12:14:46 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Split CEA608 buffers correctly so that each output buffer represents a single frame
+
+2018-12-20 11:45:36 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Refactor buffer pushing into its own function
+
+2018-12-20 11:31:58 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Extract CEA608 framerate from the (first) video stream
+         EA608 closed caption tracks are a bit special in that each sample
+         can contain CCs for multiple frames, and CCs can be omitted and have to
+         be inferred from the duration of the sample then.
+         As such we take the framerate from the (first) video track here for
+         CEA608 as there must be one CC byte pair for every video frame
+         according to the spec.
+         For CEA708 all is fine and there is one sample per frame.
+
+2018-12-30 21:55:28 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * tests/check/meson.build:
+         tests: Enable more unit tests on Windows
+
+2018-12-30 21:54:44 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * tests/check/elements/audioamplify.c:
+       * tests/check/elements/audiodynamic.c:
+       * tests/check/elements/audioinvert.c:
+       * tests/check/elements/audiopanorama.c:
+       * tests/check/elements/avimux.c:
+       * tests/check/elements/avisubtitle.c:
+       * tests/check/elements/capssetter.c:
+       * tests/check/elements/level.c:
+       * tests/check/elements/matroskamux.c:
+       * tests/check/elements/multifile.c:
+       * tests/check/elements/qtdemux.h:
+       * tests/check/elements/qtmux.c:
+       * tests/check/elements/rtp-payloading.c:
+       * tests/check/elements/shapewipe.c:
+       * tests/check/elements/spectrum.c:
+       * tests/check/elements/splitmux.c:
+       * tests/check/elements/udpsrc.c:
+       * tests/check/elements/videobox.c:
+       * tests/check/elements/videocrop.c:
+       * tests/check/elements/videofilter.c:
+       * tests/check/elements/videomixer.c:
+       * tests/check/elements/wavpackparse.c:
+       * tests/check/elements/y4menc.c:
+       * tests/check/generic/states.c:
+         tests: Remove pointless unistd.h include
+
+2018-12-26 20:27:58 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Don't leak allocated index memory
+         Don't forget to free returned memory from _search_pos()
+
+2018-12-25 15:31:44 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/files/Makefile.am:
+         tests: dist new rtph265.rtp file
+         Fixes make distcheck.
+
+2018-12-25 14:51:38 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/Makefile.am:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * gst/audiofx/Makefile.am:
+       * gst/audiofx/audiofx.c:
+       * gst/audiofx/gststereo.c:
+       * gst/audiofx/meson.build:
+         audiofx: add stereo element which was moved from -bad to build
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/457
+
+2018-12-25 13:07:23 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+         Move stereo plugin from -bad
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/457
+
+2018-12-22 17:55:51 +0100  Philippe Normand <philn@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Offset correction for track language code parsing
+         The duration field being a uint64, is stored in 8 bytes, not 4. So the offset of
+         the following field, language code, needs to be updated accordingly so that the
+         parsed language code is not garbage.
+
+2018-12-21 10:59:22 +0100  Juan Navarro <juan.navarro@gmx.es>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Accept NULL for "port-range" property
+         The documentation of "port-range" implies that passing NULL should be
+         valid, but currently it is not. Without this check, the sscanf() call
+         will crash.
+
+2018-12-19 14:28:54 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.signals:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+       * tests/check/Makefile.am:
+       * tests/check/elements/.gitignore:
+       * tests/check/elements/rtpbundle.c:
+       * tests/check/meson.build:
+       * tests/examples/rtp/.gitignore:
+       * tests/examples/rtp/Makefile.am:
+       * tests/examples/rtp/client-rtpbundle.c:
+       * tests/examples/rtp/meson.build:
+       * tests/examples/rtp/server-rtpbundle.c:
+         Revert "rtpbin: receive bundle support"
+         This reverts commit dcd3ce9751cdef0b5ab1fa118355f92bdfe82cb3.
+         This functionality was implemented for gstopenwebrtc, but it
+         turned out this was not actually needed for webrtc bundling
+         support, as shown in webrtcbin. It also doesn't correspond
+         to any standards.
+         This is an API break, but nothing should actually depend on
+         this, at least not for its initial purpose.
+         Changes in rtpbin.c were reverted manually, to preserve some
+         refactoring that had occurred in the original commit.
+         Fixes #537
+
+2018-12-19 11:36:37 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+         rtph264pay/rtph265pay: Fix use after free
+         We can't assume a buffer that has been pushed in the adapter is still
+         valid. This fixes a use after free detect when running test on jenkins.
+
+2018-12-19 22:51:11 +0900  KimTaeSoo <myrandy1@gmail.com>
+
+       * tests/check/pipelines/tagschecking.c:
+         tagschecking: Use gst_message_parse_warning in case of GST_MESSAGE_WARNING
+         Bus message handler of tags checking unit test uses gst_message_parse_error()
+         in case of GST_MESSAGE_ERROR and GST_MESAGE_WARNING.
+         If gst_message_parse_error() is called in case of GST_MESSAGE_WARNING, assert occurs.
+         So modified to use gst_message_parse_warning() in case of GST_MESSAGE_WARNING.
+
+2018-12-19 09:51:10 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/Makefile.am:
+         test: rtph264/265: Add libgstrtp in auto-tool makefile
+
+2018-12-18 12:43:30 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtph265.c:
+       * tests/check/meson.build:
+       * tests/files/h265.rtp:
+         test: rtph265: Copy and port tests from rtph264
+         This copy and port all the relevant tests from rtph264.
+
+2018-12-14 17:54:36 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtph264.c:
+         test: rtph264depay: Check the marker is converted to flag
+
+2018-12-14 17:53:17 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtph264.c:
+         test: rtph264depay: Check that EOS drains the depayloaded
+         In AU mode, the depayloader may have accumulated NALs, test that
+         these NALs are drained and not dropped.
+
+2018-12-14 15:30:21 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtph264.c:
+         test: rtph264pay: Add tests for marker bit
+         Test that marker bit is transferred when input buffer has the
+         marker flag set but also that it's set whenever the payloader
+         receives complete AU.
+
+2018-12-13 15:57:24 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtph264.c:
+         test: rtph264pay: Verify slices timestamp
+         This test make sure that timestamps are properly transfered
+         to each NALU.
+
+2018-12-04 16:06:15 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/elements/rtph264.c:
+       * tests/check/meson.build:
+         test: rtph264pay: Add reserved nals test
+
+2018-12-18 13:16:44 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Don't wait for next nal when input is aligned
+         This is the same as what was done on rtph264pay in the patch
+         d5d28055c1e816e90e8c2d1151816b0c3e760ff3
+
+2018-12-18 12:53:15 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: Drain on EOS event
+
+2018-12-18 12:50:40 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: Factor out the code that push
+         This will be needed to implement draining on EOS.
+
+2018-12-17 16:48:53 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: Drain on EOS event
+
+2018-12-14 18:19:42 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: Factor out the code that push
+         This will be needed to implement draining on EOS.
+
+2018-12-14 15:51:51 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+         rtph26xpay: Remove unused IS_ACCESS_UNIT macro
+         This macro is not longer used. It was secretly checking if that nal was
+         a slice, and confusingly name to that one may think it was checking if
+         the nal is an AUD.
+
+2018-10-03 14:14:17 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Fix reading timestamps from adapter
+         The code was reading the timestamp from the adapter before pushing the
+         new buffer into it. As a side effect, if the adapter was empty, we'd end
+         up using an older timestamp. In alignment=au, it means that all
+         timestamp was likely one frame in the past, while in alignment=nal, with
+         multiple slices per frame, the first slice would have the timestamp of
+         the previous one.
+
+2018-10-03 13:46:08 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265pay: Forward the marker bit as buffer flag
+         We have a buffer flag to represent the marker bit (when present).
+         Forward this bit by setting the buffer flag accordingly.
+
+2018-10-03 13:44:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Properly set the marker bit
+         The marker bit is used for efficient decoding. The assumption that
+         it should be set on the AUD is wrong, since the AUD is conceptually
+         starts the frame, while the marker is to indicate the end.
+         So properly set the marker bit as soon as we know we are ending an
+         AU and also whenever upstream have set the GST_BUFFER_FLAG_MARKER
+         flag.
+
+2018-09-25 11:49:52 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Fix reading timestamps from adapter
+         The code was reading the timestamp from the adapter before pushing the
+         new buffer into it. As a side effect, if the adapter was empty, we'd end
+         up using an older timestamp. In alignment=au, it means that all
+         timestamp was likely one frame in the past, while in alignment=nal, with
+         multiple slices per frame, the first slice would have the timestamp of
+         the previous one.
+
+2018-09-24 15:31:12 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Properly set the marker bit
+         The marker bit is used for efficient decoding. The assumption that
+         it should be set on the AUD is wrong, since the AUD is conceptually
+         starts the frame, while the marker is to indicate the end.
+         So properly set the marker bit as soon as we know we are ending an
+         AU and also whenever upstream have set the GST_BUFFER_FLAG_MARKER
+         flag.
+
+2018-09-24 15:27:41 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: Forward the marker bit as buffer flag
+         We have a buffer flag to represent the marker bit (when present).
+         Forward this bit by setting the buffer flag accordingly.
+
+2018-09-21 20:22:43 +0000  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: Protect against use of reserved NAL types
+         Don't allow external encoder to use one of the reserved NAL type
+         implicated in NAL aggreation. These out-of-spec NAL types, if passed
+         from the outside world will lead to an invalid RTP payload being
+         created.
+
+2018-12-07 21:46:12 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * meson.build:
+       * tests/check/meson.build:
+       * tests/meson.build:
+         tests: Enable unit test on Windows
+         Allow run some unit tests on Windows.
+         * Remove hardcoded path separator in whitelist env for Meson to choose
+         OS-specific separator automatically (i.e., ';' for windows and ':' for *nix)
+         * Add dependency explicitly for some test cases, otherwise plugins couldn't be
+         loaded on uninstalled environment of Windows.
+
+2018-12-18 20:39:40 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * meson.build:
+       * tests/check/meson.build:
+         meson: Prefer to use join_paths() over '/'
+         ... to avoid mixing '/' and '\' in a path string on Windows.
+
+2018-12-17 18:04:37 +0000  Jonny Lamb <jonnylamb@jonnylamb.com>
+
+       * tests/check/elements/rtpulpfec.c:
+         rtpulpfec: stop and start the harness when setting error-after
+         gstreamer!55 makes some changes to how the `error-after` counter works
+         which breaks this test. This change makes the test not rely on the
+         ability to alter `error-after` at runtime and explicitly stops and
+         starts the harness before pushing data.
+         An alternative would be to add another argument to
+         `harness_rtpulpfecdec` to set `error-after` on construction but that's
+         slightly more long-winded. so I went for this approach instead.
+         Fixes #532, even though that's already closed.
+
+2018-12-17 18:59:34 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/elements/.gitignore:
+       * tests/check/elements/rtpaux.c:
+       * tests/check/meson.build:
+         tests: remove rtpaux test
+         The initial mission statement for this test was:
+         * demonstrate usage of the request-aux-* signals in rtpbin
+         * test the rtx elements
+         We have examples that serve the first use case, and better
+         (harnessed) tests for the second use case.
+         This test is slow and racy, it served its purpose but can now
+         be removed.
+         Fixes #533
+
+2018-12-17 19:18:43 +0100  Nicola Murino <nicola.murino@gmail.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+       * ext/soup/gstsouphttpsrc.h:
+         souphttpsrc: check difference in time from the last socket read before changing blocksize
+         If the pipeline consumes the data slower than the available network speed,
+         for example because sync=true, is useless to increase the blocksize and
+         reading in too big blocksizes can cause the connection to time out
+         Closes #463
+
+2018-08-08 09:27:09 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: Avoid code duplication
+         The function gst_v4l2_object_add_interlace_mode() has repeating code so
+         it's best use a loop instead. That will make it easy and simple to add
+         additional interlace modes in a following patch.
+
+2018-06-27 23:20:33 +0200  Zeeshan Ali <zeenix@collabora.co.uk>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: Make use of gst_video_interlace_mode_to_string()
+         Instead of a custom map to translate the interlace modes to strings, let's
+         make use of the base API provided.
+
+2018-12-17 13:45:36 +0100  Nicola Murino <nicola.murino@gmail.com>
+
+       * sys/osxaudio/gstosxcoreaudio.c:
+         osxcoreaudio: fix typo
+         kAudioFormatFlagIsSignedInteger is a format flags
+         Closes #394
+
+2018-12-17 09:33:39 +0100  Edward Hervey <edward@centricular.com>
+
+       * ext/qt/gstqtgl.h:
+         qtgl: Handle OPENGL header guard changes
+         In 2018 khronos changed the gl header guards. If we don't detect
+         this properly we would end up with plenty of symbol redifinition
+         (since we would be importing twice the "same" header).
+         Instead detect if the "newer" header was already included and if
+         so define the "old" define to avoid this situation
+         Fixes #523
+
+2018-12-10 17:34:03 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmuxmap.c:
+       * gst/isomp4/qtdemux.c:
+         isomp4: Replace GST_VIDEO_CAPTION_TYPE_CEA608_IN_CEA708_RAW with CEA608_S334_1A
+         For the demuxer we have to select line offset 0 for the time being as
+         this information is not passed over MOV.
+
+2018-12-13 20:45:23 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer tests: Validate the number of buffers
+
+2018-12-13 19:17:43 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer: Run all timers immediately on EOS
+         When the EOS event is received, run all timers immediately and avoid
+         pushing the EOS downstream before this has been run. This ensures that
+         the lost packet statistics are accurate.
+
+2018-12-13 19:16:11 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/rtpjitterbuffer.c:
+         rtpjitterbuffer test: Stop jitterbuffer before pads to avoid race
+         The teardown of the pads checks the refcount, but there are timers
+         inside the jitterbuffer that can push things, so if we're not lucky,
+         things could be pushed while the pads are being shut down. Putting the
+         jitterbuffer to NULL first avoids this.
+
+2018-11-22 10:41:29 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: Stop waiting after EOS
+         After EOS is received, it is pointless to wait for further events,
+         specially waiting on timers. This patches fixes two cases where we could
+         wait instead of returning GST_FLOW_EOS and trigger a spin of the loop
+         function when EOS is queued, regardless if this EOS is the queue head or
+         not.
+
+2018-10-27 13:41:46 +0200  Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+       * ext/flac/gstflacdec.c:
+         flacdec: Use new channel count for audio info
+
+2018-10-27 13:36:16 +0200  Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+       * ext/flac/gstflacdec.c:
+         flacdec: Caps may have changed on FLAC metadata change
+         If the decoder signals metadata change we need to update the output
+         format and negotiate with downstream elements.
+
+2018-10-27 13:28:56 +0200  Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+       * ext/flac/gstflacdec.c:
+         flacdec: Reset decoder on set_format()
+         Any call to set_format() could mean that the stream type changed so we
+         reset the decoder and mark got_headers FALSE.
+
+2018-12-05 18:42:55 +0100  Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+       * gst/audioparsers/gstflacparse.c:
+         flacparse: On sink caps change restart parser
+         Draining the parser is not enough here, on caps change we need to
+         reset it so it is ready to accept new caps.
+
+2018-12-04 18:50:51 +0100  Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+       * gst/rtp/gstrtpgstdepay.c:
+         rtpgstdepay: Update pad caps if inline caps change
+         If the inlined caps change while using the same CV we need to update the
+         source pad caps.
+
+2018-12-14 12:21:58 +0900  Justin Kim <jeongseok.kim@sk.com>
+
+       * sys/osxvideo/meson.build:
+         osxvideo: meson: Add dependencies by using appleframeworks
+         Otherwise, it fails to link.
+         gst-build#13
+
+2018-12-07 19:09:30 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/cairo/gstcairooverlay.c:
+         cairooverlay: Optimize premultiplication/unpremultiplication loops
+         Pull in video frame fields into local variables. Without this the
+         compiler must assume that they could've changed on every use and read
+         them from memory again.
+         This reduces the inner loop from 6 memory reads per pixels to 4, and the
+         number of writes stays at 3.
+
+2018-12-05 19:37:13 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Put framerate into the closedcaption caps if it can be calculated from the stream
+         Using the same calculation used for video streams.
+
+2018-12-05 19:31:25 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Set timescale of closedcaption tracks to the one of the main video track
+
+2018-12-05 17:24:13 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * common:
+         Automatic update of common submodule
+         From ed78bee to 59cb678
+
+2018-11-19 18:20:52 +0000  Maciej Wolny <maciej.wolny@codethink.co.uk>
+
+       * gst/flv/gstflvmux.h:
+       * sys/v4l2/gstv4l2allocator.h:
+         Remove duplicate declarations
+         This causes 'redefinition of typedef ...' errors on GCC 4.5.3
+
+2018-11-30 23:56:12 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/Makefile.am:
+         tests: rtpssrcdemux: fix uninstalled autotools build and distcheck
+
+2018-11-30 19:29:30 +0100  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: set need_segment after a second moov
+         stream.segment should be updated with the values of the current edit
+         list, also when a new `moov` is received. Unfortunately this was not
+         being the case because of an early return.
+         As a consequence of this bugs, no end of movie clipping was being
+         performed on the new moov and no segment event was being emitted.
+         When performing stream switching (e.g. in MSE) the new moov may have a
+         different edit list. This is often the case when switching between
+         baseline H.264 (which lacks B-frames) and more demanding profiles. For
+         this reason it's important to emit a new segment in order to be able
+         to get matching stream times.
+
+2018-11-29 22:42:34 +0100  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Initialize QtDemuxStream.segment in its constructor
+         This patch moves the initialization of QtDemuxStream.segment from
+         gst_qtdemux_add_stream() to _create_stream(). This ensures the segment
+         is always initialized when the stream is created.
+         Otherwise the segment format is left as GST_FORMAT_UNDEFINED in the case
+         were a track is reparsed and qtdemux_reuse_and_configure_stream() is
+         called instead of gst_qtdemux_add_stream(). (See
+         qtdemux_expose_streams() in the non streams-aware case.)
+
+2018-11-29 13:48:33 +0100  Miguel Paris <mparisdiaz@gmail.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: properly handle rtcp_feedback_retention_window
+         - Consider GST_CLOCK_TIME_NONE as not to be used.
+         - Complete "rtcp-feedback-retention-window" property getter/setter
+         implementation.
+
+2018-11-29 13:02:53 +0100  Miguel Paris <mparisdiaz@gmail.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtpmanager/rtpsource.h:
+         rtpsource: properly prune RTCP packets out of feedback_retention_window
+         Closes #522
+
+2018-11-29 13:01:44 +0100  Miguel Paris <mparisdiaz@gmail.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: properly compare buffer PTSs
+
+2018-11-29 12:58:18 +0100  Miguel Paris <mparisdiaz@gmail.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: retain_rtcp_packet: warning if invalid running_time
+
+2018-11-29 12:55:38 +0100  Miguel Paris <mparisdiaz@gmail.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+         rtpsession: properly set the running_time for rtcp packet info
+
+2018-11-29 14:54:06 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+         rtpssrcdemux: Rename confusingly name lock macros
+         This is an extra internal recurisve lock use to avoid having to take
+         both sink pad streams lock all the time. This patch renamed it
+         INTERLNAL_STREAM_LOCK/UNLOCK() to avoid confusion with possible upstream
+         GST_PAD API.
+
+2018-11-28 17:14:11 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+         rtpssrcdemux: Hold on internal stream lock while pushing sticky
+         This reverts "6f3734c305 rtpssrcdemux: Only forward stick events while
+         holding the sinkpad stream lock" and actually hold on the internal
+         stream lock. This prevents in some needed case having a second
+         streaming thread poping in and messing up event ordering.
+
+2018-11-27 17:10:57 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtpssrcdemux.c:
+       * tests/check/meson.build:
+         test: rtpssrcdemux: Test event forwarding
+         This the first unit test of this element. It adds a test that verify
+         that events are forwarded correctly.
+
+2015-11-04 12:52:17 +0100  Matej Knopp <matej.knopp@gmail.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: fix handling of MS ACM audio
+         Pass riff codec-data as strf, not strd, which is where
+         gst_riff_create_audio_caps() expects the WAVEFORMATEXTENSIBLE
+         data.
+         https://bugzilla.gnome.org/show_bug.cgi?id=757583
+         Fixes #234
+
+2018-11-28 05:52:16 +0200  Jordan Petridis <jordan@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/rtp/gstrtpg722pay.c:
+       * gst/rtpmanager/gstrtpmux.c:
+       * gst/udp/gstudpsrc.c:
+       * sys/v4l2/gstv4l2jpegenc.c:
+       * tests/check/elements/rtpmux.c:
+       * tests/check/elements/rtpsession.c:
+         Run gst-indent through the files
+         This is required before we enabled an indent test in the CI.
+         https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33
+
+2018-11-26 08:10:24 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/videocrop/gstaspectratiocrop.c:
+         aspectcropration: Fix potential unref of NULL pointer
+
+2018-11-25 11:31:11 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/videocrop/gstaspectratiocrop.c:
+       * gst/videocrop/gstaspectratiocrop.h:
+         aspectcropratio: Set caps from the streaming thread on property changes
+         Otherwise it might lead to deadlocks
+         See https://gitlab.gnome.org/GNOME/pitivi/issues/2259
+         Closes #518
+
+2018-11-23 14:01:35 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpssrcdemux.c:
+         rtpssrcdemux: Forward serialized events to all pads
+         While forwarding serialized event, we use gst_pad_forward() function.
+         In the forward callback (GstPadForwardFunction) we always return
+         TRUE. Returning true there will stop the dispatching procedure. As a
+         side effect, only one events is receiving the events. This breaks
+         when sending EOS from the applicaiton, it also breaks the latency
+         tracer.
+
+2018-11-24 19:13:28 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * meson.build:
+         meson: Specify encoding to UTF-8 when building with MSVC
+         Use build arguments consistent with core and -base. This can also
+         remove noisy "C4819" warning of non-us locale MSVC.
+
+2018-11-21 15:11:00 -0500  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * meson.build:
+         Check for zlib header
+
+2018-11-21 18:53:39 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.h:
+         v4l2: Properly fix Android build
+         The previous patch did not even compile on any possible platform or C
+         standard. That commit also didn't have a proper commit message.
+         Android ships Linux with a different signature for ioctl. They first
+         released an ioctl with int as request type, and later "fixed" it by
+         adding an override with unsign, which is still not matching Linux and
+         BSD implementation which uses unsigned long int.
+
+2018-11-21 16:11:02 -0500  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * sys/v4l2/gstv4l2object.h:
+         Fix ioctl() signature on Android
+
+2018-10-09 16:43:08 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * meson.build:
+         Fix zlib detection when there is no pkg-config file
+
+2018-11-19 20:05:39 +0530  Arun Raghavan <arunsr@codeaurora.org>
+
+       * ext/pulse/pulsesink.c:
+       * ext/pulse/pulsesrc.c:
+       * ext/pulse/pulseutil.c:
+       * ext/pulse/pulseutil.h:
+         pulse: Expose the correct max rate that we support
+         PulseAudio defines PA_RATE_MAX as the maximum sampling rate that it
+         supports. We were previously exposing a maximum rate of INT_MAX, which
+         is incorrect, but worked because nothing was really using a rate greater
+         than 384000 kHz.
+         While playing DSD data, we hit a case where there might be very high
+         sample rates (>1MHz), and pulsesink fails during stream creation with
+         such streams because it erroneously advertises that it supports such
+         rates.
+         Since PA_RATE_MAX is #define'd to (8*48000U), we can't just use it in
+         the caps string. Instead, we fix up the rate to what we actually support
+         whenever we use our macro caps.
+
+2018-11-14 08:57:55 +0100  Alicia Boya García <aboya@igalia.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-demux.h:
+         matroskademux: Defer seeks received before GST_MATROSKA_READ_STATE_DATA
+         This patch enables matroskademux to receive seeks before it reaches
+         GST_MATROSKA_READ_STATE_DATA.
+         Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/514
+         This also enables receiving seeks in the element READY state.
+         When such a seek is received, it is stored to be later handled when
+         GST_MATROSKA_READ_STATE_DATA is reached.
+
+2018-10-16 12:38:46 +0200  Linus Svensson <linussn@axis.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+       * gst/rtpmanager/rtpsource.c:
+         rtpsession: Implement reset
+         Reset RTPSession when rtpsession changes state from PAUSED to READY.
+         Without this change, a stored last_rtptime in RTPSource could interfere
+         with RTP timestamp generation in RTCP Sender Report.
+         Fixes #510
+
+2018-11-06 15:05:54 +0100  Linus Svensson <linussn@axis.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtpsession: test: Plug memory leak
+
+2018-11-13 00:37:11 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpfunnel.c:
+       * gst/rtpmanager/gstrtpfunnel.h:
+         rtpfunnel: Stop using G_DECLARE_FINAL_TYPE
+         Fixes #516
+
+2018-11-12 13:42:29 +0200  Jordan Petridis <jordan@centricular.com>
+
+       * .gitlab-ci.yml:
+         Add Gitlab CI configuration
+         This commit adds a .gitlab-ci.yml file, which uses a feature
+         to fetch the config from a centralized repository. The intent is
+         to have all the gstreamer modules use the same configuration.
+         The configuration is currently hosted at the gst-ci repository
+         under the gitlab/ci_template.yml path.
+         Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/29
+
+2018-10-18 22:23:31 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Read driver selected interlace mode
+         If there was no interlace-mode field in the caps. Read back the value
+         selected by the driver. This way, if the driver does not support
+         progressive, then it will automatically negotiate the returned mode
+         unless this mode is not supported by GStreamer.
+         This method was already used for colorimetry. Just like colorimetry, the
+         interlace mode is not longer probed by v4l2src dues to performance
+         issues.
+         Fixes #511
+
+2018-05-17 21:58:25 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroska: implement preliminary support for the bitrate query
+         Return the size / total duration as a ballpark estimate.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60
+
+2018-05-17 21:53:56 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         isomp4: add preliminary support for the bitrate query
+         Return the upstream size over the duration as a first estimate.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60
+
+2018-11-06 23:02:21 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Sink jitterbuffer/storage before passing as parameters to signals
+         Otherwise signal handlers from bindings will take ownership of them as
+         they are still floating, and we won't own a reference inside rtpbin
+         anymore.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/515
+
+2018-10-27 18:00:52 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * tests/check/elements/flvmux.c:
+         flvmux: Test that timestamps are always increasing
+         Decreasing timestamps break rtmpsink.
+         With contributions from Olivier Crête.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796382
+
+2018-10-27 19:27:12 +0100  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/flv/gstflvmux.c:
+       * gst/flv/gstflvmux.h:
+         flvmux: Force timestamps to always be increasing
+         https://bugzilla.gnome.org/show_bug.cgi?id=796382
+
+2018-11-05 05:36:26 +0000  Matthew Waters <matthew@centricular.com>
+
+       * .gitmodules:
+         Update common submodule location
+         Remove the git directory
+
+2018-11-05 12:16:46 +0800  Haihao Xiang <haihao.xiang@intel.com>
+
+       * .gitmodules:
+       * gst-plugins-good.doap:
+         Clone the code from gitlab
+         This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/513
+
+2018-11-01 20:37:12 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Ignore corrupted CTTS box
+         If ctts (CompositionOffsetBox) has larger sample_offset
+         (offset between PTS and DTS) than (2 * duration) of the stream,
+         assume the ctts box to be corrupted and ignore the box.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797262
+
+2018-10-23 09:45:36 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/audiofx/gstscaletempo.c:
+         scaletempo: Implement SEGMENT query
+         https://bugzilla.gnome.org/show_bug.cgi?id=797313
+
+2018-10-23 09:42:21 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: Implement SEGMENT query
+         https://bugzilla.gnome.org/show_bug.cgi?id=797313
+
+2018-10-28 17:12:59 +0000  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/dtmf/gstdtmfsrc.c:
+         dtmfsrc: Declare output as interleaved
+         This element doesn't support planar audio yet.
+
+2018-10-28 14:09:21 +0000  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * tests/icles/meson.build:
+         meson: Add some missing test dependencies
+         Without these dependencies, the enumtype may not be generated when the
+         test is built, which will cause a compile failure.
+
+2018-10-28 14:07:54 +0000  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * tests/check/meson.build:
+         meson: Cleanup old FIXMEs that relied on meson changes
+
+2018-10-16 17:28:00 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Allow changing the SDES at runtime
+         Make it possible to modify the SDES in a packet at runtime.
+         https://bugzilla.gnome.org/show_bug.cgi?id=763502
+
+2018-03-01 17:25:07 +0100  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/gstqtmux.c:
+         qtmux: round to nearest when computing mehd and tkhd duration
+         This fixes a bug where in some files mehd.fragment_duration is one unit
+         less than the actual duration of the fragmented movie, as explained below:
+         mehd.fragment_duration is computed by scaling the end timestamp of
+         the last frame of the movie in (in nanoseconds) by the movie timescale.
+         In some situations, the end timestamp is innacurate due to lossy conversion to
+         fixed point required by GstBuffer upstream.
+         Take for instance a movie with 3 frames at exactly 3 fps.
+         $ gst-launch-1.0 -v videotestsrc num-buffers=3 \
+         ! video/x-raw, framerate="(fraction)3/1" \
+         ! x264enc \
+         ! fakesink silent=false
+         dts: 999:59:59.333333334,  pts: 1000:00:00.000000000, duration: 0:00:00.333333333
+         dts: 999:59:59.666666667,  pts: 1000:00:00.666666666, duration: 0:00:00.333333334
+         dts: 1000:00:00.000000000, pts: 1000:00:00.333333333, duration: 0:00:00.333333333
+         The end timestamp is calculated by qtmux in this way:
+         end timestamp = last frame DTS + last frame DUR - first frame DTS =
+         = 1000:00:00.000000000 + 0:00:00.333333333 - 999:59:59.333333334 =
+         = 0:00:00.999999999
+         qtmux needs to round this timestamp to the declared movie timescale, which can
+         ameliorate this distortion, but it's important that round-neareast is used;
+         otherwise it would backfire badly.
+         Take for example a movie with a timescale of 30 units/s.
+         0.999999999 s * 30 units/s = 29.999999970 units
+         A round-floor (as it was done before this patch) would set fragment_duration to
+         29 units, amplifying the original distorsion from 1 nanosecond up to 33
+         milliseconds less than the correct value. The greatest distortion would occur
+         in the case where timescale = framerate, where an entire frame duration would
+         be subtracted.
+         Also, rounding is added to tkhd duration computation too, which
+         potentially has the same problem.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793959
+
+2018-05-16 14:15:13 +0200  Marc Leeman <marc.leeman@gmail.com>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: print information about bind_error socket error
+         In some cases, a bind error occurs during operation. Printing
+         the information about the problem is critical for finding the
+         conflict
+         https://bugzilla.gnome.org/show_bug.cgi?id=797340
+
+2018-10-17 12:58:08 +0200  Johan Bjäreholt <johanbj@axis.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.c:
+       * gst/matroska/matroska-read-common.c:
+         matroska-demux: Fix caps memleak
+         https://bugzilla.gnome.org/show_bug.cgi?id=797326
+
+2018-10-11 09:24:53 +0900  Wonchul Lee <w.lee@lge.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: fix typo resurect to resurrect
+         https://bugzilla.gnome.org/show_bug.cgi?id=797273
+
+2018-10-18 12:29:00 +0530  Amit Pandya <apandya@nvidia.com>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2h265enc.c:
+       * sys/v4l2/gstv4l2h265enc.h:
+       * sys/v4l2/meson.build:
+         v4l2videoenc: Add HEVC support
+         Add HEVC encoder support.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797141
+
+2018-10-19 17:37:28 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+         vl42allocator: Don't dup exported dmabufs
+         We can now use the new GstFAllocator to ask the allocator not to close
+         the wrapped FD. This way the dup is no longer needed.
+
+2018-10-19 17:14:15 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+         v4l2allocator: Don't dup imported DMABuf FD
+         There is no specific needs to duplicate the FD. Unlike the exportation,
+         we don't depend on code that will call close. This will make debugging
+         easyer since the traced FD will match the exporter.
+
+2018-10-23 13:04:34 +0200  Johan Bjäreholt <johanbj@axis.com>
+
+       * gst/matroska/matroska-ids.c:
+         matroska-ids: Fix uninitialized memory in contexts
+         https://bugzilla.gnome.org/show_bug.cgi?id=797327
+
+2018-10-19 17:02:11 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Add property for providing a threshold after which we create an edit list for gaps at the start
+         https://bugzilla.gnome.org/show_bug.cgi?id=797290
+
+2018-10-22 12:21:54 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+         qtmux: Correctly set tkhd width/height to the display size
+         It was previously set to the display aspect ratio, e.g. 4x3, 16x9, etc.
+         but should be set to the display size.
+         This is a regression from e655d47dfce1652630fe8ff5fb6be56370087004
+         (1.5.1) and was correct before that.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797318
+
+2018-10-21 11:15:15 +0900  Yeongjin Jeong <gingerbk247@gmail.com>
+
+       * tests/check/elements/flvmux.c:
+         tests: flvmux: Fix pushing invalid audio caps in tests
+         Previous commit created caps with incorrect aac codec data
+         that did not match the audio channel.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797256
+
+2018-10-20 00:10:04 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix build with GLib versions < 2.54
+         g_ptr_array_find_with_equal_func was introduced in glib 2.54
+         which is a higher version than our minimum required one.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797239
+
+2018-10-17 13:52:20 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtpsession: fix up GHashTable-behavior dependent tests
+         GHashTable iteration order changed in recent GLib,
+         and tests were relying on that.
+         https://mail.gnome.org/archives/desktop-devel-list/2018-October/msg00016.html
+
+2018-10-07 20:07:39 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't switch active streams and old streams ...
+         ... before the old streams is not exposed yet for MSS stream.
+         In case of DASH, newly configured streams will be exposed
+         whenever demux got moov without delay.
+         Meanwhile, since there is no moov box in MSS stream,
+         the caps will act like moov. Then, there is delay for exposing new pads
+         until demux got the first moof.
+         So, following scenario is possible only for MSS but not for DASH,
+         STREAM-START -> CAPS -> (configure stream but NOT EXPOSED YET)
+         -> STREAM-START-> CAPS (configure stream again).
+         In above scenario, we can reuse old stream without any stream reconfigure.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797239
+
+2018-10-07 16:43:34 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         qtdemux: Use GPtrArray to store QtDemuxStream structure
+         GPtrArray has less overhead than linked list and the length also
+         can be auto updated by using it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797239
+
+2018-10-07 16:50:45 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Make QtDemuxStream refcounted structure
+         This a prework for porting GPtrArray.
+         Refcounting will help the use of g_ptr_array_new_with_free_func()
+         with QtDemuxStream structure
+         https://bugzilla.gnome.org/show_bug.cgi?id=797239
+
+2018-10-06 20:19:40 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Make function foreach method friendly
+         https://bugzilla.gnome.org/show_bug.cgi?id=797239
+
+2018-07-26 15:25:06 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Only set width/height in caps if they're non-0
+         If they are not valid, then let a downstream parser complete them.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796878
+
+2018-08-16 12:07:30 +0200  Wim Taymans <wtaymans@redhat.com>
+
+       * gst/avi/gstavidemux.c:
+         avidemux: fix misleading debug line
+
+2018-06-22 16:00:11 +0100  Philippe Normand <philn@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Avoid warning when reporting about decryptors
+         https://bugzilla.gnome.org/show_bug.cgi?id=796652
+
+2018-10-17 14:15:33 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/audiofx/meson.build:
+       * gst/deinterlace/meson.build:
+       * gst/videobox/meson.build:
+       * gst/videomixer/meson.build:
+         meson: Replace empty configuration_data() with copy keyword
+         Use 'copy' keyword to avoid meson warning message.
+         Note that 'copy' keyword in configure_file() is available
+         since meson 0.47.0
+         https://bugzilla.gnome.org/show_bug.cgi?id=797298
+
+2018-10-16 15:42:12 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Do not hardcode frames_of_daily_jam
+         Apart from the obvious drawbacks of hardcoding, the drawback here was
+         that, if we subtracted 2 frames (instead of 2.6) from the target running
+         time, we'd request the next keyframe a bit too far into the future,
+         which would make our files split at the wrong position.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797293
+
+2018-10-02 19:32:47 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Allow up to 1% of frame rate for lateness
+         https://bugzilla.gnome.org/show_bug.cgi?id=797290
+
+2018-09-18 13:15:06 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpfunnel.c:
+         rtpfunnel: fix shutdown
+         By disposing of the ssrc_to_pad map in finalize instead of
+         dispose.
+
+2017-10-18 11:14:36 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/Makefile.am:
+       * gst/rtpmanager/gstrtpfunnel.c:
+       * gst/rtpmanager/gstrtpfunnel.h:
+       * gst/rtpmanager/gstrtpmanager.c:
+       * gst/rtpmanager/meson.build:
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtpfunnel.c:
+       * tests/check/meson.build:
+         Initial commit of GstRtpFunnel
+         For funneling together rtp-streams into a single session.
+         Use-cases include multiplexing and bundle.
+
+2018-10-12 22:33:15 +0900  Yeongjin Jeong <gingerbk247@gmail.com>
+
+       * tests/check/elements/flvdemux.c:
+         tests: flvdemux: Add new test for channel detect using aac codec-data
+         https://bugzilla.gnome.org/show_bug.cgi?id=797275
+
+2018-10-11 16:36:17 +0900  Yeongjin Jeong <gingerbk247@gmail.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Use aac codec-data to adjust channels if needed
+         Flv does not support various channels in AAC stream format, for example
+         flvdemux detect an audio channels of 2(stereo) when the AAC really is 1(mono).
+         https://bugzilla.gnome.org/show_bug.cgi?id=797275
+
+2018-10-11 14:31:20 +0900  Yeongjin Jeong <gingerbk247@gmail.com>
+
+       * tests/check/elements/flvmux.c:
+         tests: flvmux: Add new test for caps change after starting to write headers
+         https://bugzilla.gnome.org/show_bug.cgi?id=797256
+
+2018-10-05 17:16:26 +0900  Yeongjin Jeong <gingerbk247@gmail.com>
+
+       * gst/flv/gstflvmux.c:
+       * gst/flv/gstflvmux.h:
+         flvmux: Don't refuse caps changes after starting to write headers in streamable mode.
+         Flv does support changing the stream type and stream properties
+         after the headers were started to be written, and for example H264
+         codec_data changes can be supported.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797256
+
+2018-10-11 13:55:01 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Fix if condition in drop-frame timecode wrap-around
+         Was previously: if ( x | y && a == b). Changed it into if ((x & y) && (a
+         == b)).
+
+2018-10-09 16:39:11 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Subtract daily jam offset when day wraps around
+         For drop-frame framerates, when the expected next max timecode wraps
+         around at the end of the day, we have to subtract the offset of the
+         daily jam, otherwise we end up with a duration that's a few frames too
+         long.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797270
+
+2017-09-25 14:30:13 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpmux.c:
+       * tests/check/elements/rtpmux.c:
+         rtpmux: respect downstream "timestamp-offset" in caps.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795162
+
+2016-06-07 14:38:19 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpmux.c:
+       * gst/rtpmanager/gstrtpmux.h:
+       * tests/check/elements/rtpmux.c:
+         rtpmux: cleanup ssrc-handling code a bit
+         And add some better logging.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795162
+
+2016-05-04 11:48:04 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpmux.c:
+         rtpmux: protect against NULL caps
+         Due to state-changes deactivating the pad from another thread,
+         this can happen.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795162
+
+2015-07-22 09:47:22 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpmux.c:
+       * tests/check/elements/rtpmux.c:
+         rtpmux: property should overrule both upstream and downstream
+         https://bugzilla.gnome.org/show_bug.cgi?id=762213
+         https://bugzilla.gnome.org/show_bug.cgi?id=795162
+
+2018-10-08 20:45:08 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: use new 'python' module instead of deprecated
+         https://github.com/mesonbuild/meson/pull/4169
+
+2018-10-08 20:35:15 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/gtk/meson.build:
+         meson: only build gtk gl examples if gst-gl was found
+         And fix typo in glliveshader example binary name.
+
+2018-10-03 16:17:22 +0200  Peter Körner <git@mazdermind.de>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: accept pads named 'sink' on the muxer, handle static pads as well
+         https://bugzilla.gnome.org/show_bug.cgi?id=797241
+
+2018-09-25 17:44:15 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/cairo/gstcairooverlay.c:
+       * ext/cairo/gstcairooverlay.h:
+         cairooverlay: Don't map input buffers if we just attach the overlay as meta
+         https://bugzilla.gnome.org/show_bug.cgi?id=797091
+
+2018-09-25 17:02:26 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/cairo/gstcairooverlay.c:
+       * ext/cairo/gstcairooverlay.h:
+         cairooverlay: Add overlay as meta to the buffers if we can
+         This requires that downstream supports it and
+         draw-on-transparent-surface is enabled.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797091
+
+2018-09-25 15:34:40 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/cairo/gstcairooverlay.c:
+         cairooverlay: Pre-multiply and un-premultiply alpha in case of ARGB32
+         Cairo expects pre-multiplied alpha, we work on un-premultiplied alpha.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797091
+
+2018-09-25 15:31:20 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/cairo/gstcairooverlay.c:
+       * ext/cairo/gstcairooverlay.h:
+         cairooverlay: Add property for drawing on a transparent surface and then blending
+         This allows us to use the GstVideoOverlayComposition API and correctly
+         handle pre-multiplied alpha, while also only doing the alpha conversion
+         once instead of twice for the whole frame.
+         At a later point we can attach the meta to the buffer instead of
+         blending ourselves if downstream supports that.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797091
+
+2018-10-03 17:34:49 +0200  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-read-common.c:
+         matroskdemux: do not use MapInfo.data after unmapping
+         And minor gst-indenting
+
+2018-09-30 19:28:07 +0200  Yacine Bandou <yacine.bandou@softathome.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.c:
+       * gst/matroska/matroska-ids.h:
+       * gst/matroska/matroska-read-common.c:
+       * gst/matroska/matroska-read-common.h:
+         matroska: Add the WebM encrypted content support in matroskademux
+         This commit:
+         1. Reads the WebM and Matroska ContentEncryption subelements.
+         2. Creates a GST_PROTECTION event for each ContentEncryption, which
+         will be sent before pushing the first source buffer.
+         The DRM system id field in this event is set to GST_PROTECTION_UNSPECIFIED_SYSTEM_ID,
+         because it isn't specified neither by Matroska nor by the WebM spec.
+         3. Reads the protection information of encrypted Block/SimpleBlock and
+         extracts the IV and the partitioning format (subsamples).
+         4. Creates the metadata protection for each encrypted Block/SimpleBlock,
+         with those informations: KeyID (extracted from ContentEncryption element),
+         IV and partitioning format.
+         5. Adds a new caps for WebM encrypted content named "application/x-webm-enc",
+         with the following new fields:
+         "encryption-algorithm": The encryption algorithm used.
+         values: "None", "DES", "3DES", "Twofish", "Blowfish", "AES".
+         "encoding-scope": The field that describes which Elements have been modified.
+         Values: "frame", "codec-data", "next-content".
+         "cipher-mode": The cipher mode used in the encryption.
+         Values: "None", "CTR".
+         https://bugzilla.gnome.org/show_bug.cgi?id=765275
+
+2018-09-26 17:43:05 +0300  John Nikolaides <jnikolaides@toolsonair.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Added a split-at-running-time action signal
+         The video file can now be split at an arbitrary time, given by the user
+         as an argument to the action signal.
+         https://bugzilla.gnome.org/show_bug.cgi?id=787922
+
+2018-09-21 19:47:44 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpmp4gdepay.c:
+       * gst/rtp/gstrtpmp4gdepay.h:
+         rtpmp4gdepay: detect broken senders who send AAC with ADTS frames
+         Strip ADTS headers if we detect any, apparently some Sony cameras
+         send AAC with ADTS headers. We could also change the stream-format
+         in the output caps, but that would be unexpected to pipeline builders
+         and would not exactly be backwards compatible.
+
+2018-09-21 18:17:25 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpmp4gdepay.c:
+         rtpmp4gdepay: factor out pushing of output buffer
+
+2018-09-26 13:29:42 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: Allow ANY capsfeatures
+
+2018-09-26 00:06:09 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.signals:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+         docs: update for git master
+
+2018-06-22 12:05:17 +0100  Philippe Normand <philn@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: PIFF track encryption box support
+         The PIFF track encryption box is a UUID box containing the default encryption
+         values that should be used for PIFF sample encryption.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796647
+
+2018-09-24 11:45:46 +0200  Nicola Murino <nicola.murino@gmail.com>
+
+       * sys/osxaudio/gstosxcoreaudio.c:
+         osxaudio: add support for parsing more channel layouts ...
+         ... and fallback to gst_audio_info_set_format for not yet supported layouts.
+         Fix audio playback on iOS 12.
+         Based on patch from Byron Schiel <byron@canary.is>
+         https://bugzilla.gnome.org/show_bug.cgi?id=796919
+
+2018-09-22 17:22:46 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: turn impossible condition into an assert
+         qtdemux_update_streams() is only ever called after checking
+         `qtdemux->streams_aware` is TRUE. There is no need to check for that
+         condition again.
+         `qtdemux->streams_aware` is only modified when the demuxer is
+         hard-resetted, which is mutually exclusive with demuxing, so it cannot
+         be modified during the call.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797191
+
+2018-09-21 22:24:02 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Emit no-more-pads after parsing Tracks
+         Currently matroskademux does not emit no-more-pads until the first
+         Cluster is parsed, even though the Tracks have already been parsed and
+         from that point on there can be no more tracks.
+         This is important in MSE because the browser needs to know when the MSE
+         initialization segment has been completely parsed so that it can expose
+         the tracks to the user. Some applications depend on this been done
+         before they feed frames to the demuxer.
+         As a consequence, historically WebKit has relied on hacks such as
+         listening to the `pad-added` event, which made impossible to support
+         multiple tracks in the same file. Let's fix that.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797187
+
+2018-09-21 20:38:02 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Parse successive Tracks elements
+         This patch allows matroskademux to parse a second Tracks element,
+         erroring out if the tracks are not compatible (different number, type or
+         codec) and emitting new caps and tag events should they have changed.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793333
+
+2018-09-21 16:23:57 +0200  Alicia Boya García <aboya@igalia.com>
+
+         matroskademux: Refactor track parsing out from adding tracks
+         This splits gst_matroska_demux_add_stream() into:
+         * gst_matroska_demux_parse_stream(): will read the Matroska bytestream
+         and fill a GstMatroskaTrackContext.
+         * gst_matroska_demux_parse_tracks(): will check there are no repeated
+         tracks.
+         * gst_matroska_demux_add_stream(): creates and sets up the pad for the
+         track.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793333
+
+2017-11-30 20:44:23 +0100  Alicia Boya García <ntrrgc@gmail.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Allow Matroska headers to be read more than once
+         This is necessary for MSE, where a new MSE initialization segment may be
+         appended at any point. These MSE initialization segments consist of an
+         entire WebM file until the first Cluster element (not included). [1]
+         Note that track definitions are ignored on successive headers, they must
+         match, but this is not checked by matroskademux (look for
+         `(!demux->tracks_parsed)` in the code).
+         Source pads are not altered when the new headers are read.
+         This patch has been splitted from the original patch from eocanha in [2].
+         [1] https://www.w3.org/TR/mse-byte-stream-format-webm/
+         [2] https://bug334082.bugzilla-attachments.gnome.org/attachment.cgi?id=362212
+         https://bugzilla.gnome.org/show_bug.cgi?id=793333
+
+2018-08-16 21:42:37 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Implement split-after
+         The behaviour of split-now is to output the current GOP after
+         starting a new file.
+         The newly-added split-after signal will output the current GOP
+         to the old file if possible once a new GOP is opened.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796982
+
+2018-09-20 12:12:55 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Don't leak codec_data buffer
+         Use gst_buffer_replace() to prevent buffer leak
+         https://bugzilla.gnome.org/show_bug.cgi?id=797179
+
+2018-09-18 18:13:52 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Set Closed Caption track width/height to that of the first video track
+         Otherwise software like Premiere or Final Cut Pro won't like our files.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797111
+
+2018-09-19 11:45:59 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+       * meson_options.txt:
+         meson: add glib-checks option to disable API guards and such
+         We want this enabled by default, also in releases, but people
+         may want to disable this for performance-critical workloads or
+         on embedded devices.
+
+2018-09-19 11:45:00 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson_options.txt:
+         meson: fix missing closing bracket in option descriptions
+
+2018-09-06 20:10:30 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Initialize caption track language code to 0 instead of "und"
+         Without this, Final Cut considers it "non-standard" and 0 (english) is a
+         good default for closed captions.
+         https://bugzilla.gnome.org/show_bug.cgi?id=797111
+
+2018-09-13 03:16:32 +0000  Song Bing <bing.song@nxp.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Add HEVC decoder support
+         https://bugzilla.gnome.org/show_bug.cgi?id=771686
+
+2018-09-13 02:35:39 +0000  Nicolas Dufresne <nicolas@ndufresne.ca>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Move capture probe after input format is set
+         This is to support Amlogic CODEC driver which does not provide a full
+         list of formats when the driver is initially opened. GStreamer does
+         not strictly need this full list initially, but only later, in order
+         to negotiate with downstream if multiple format can be selected.
+         With this change, we will no longer probe twice the device, since the
+         probed list can be directly used for negotation.
+
+2018-09-11 16:46:34 -0300  Ezequiel Garcia <ezequiel@collabora.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2: Add a debug message beforing waiting for codec stop
+         Add a debug message right before waiting for the driver.
+         This is useful in order to debug drivers without a properly
+         implemented decoder or encoder stop command.
+
+2018-09-10 13:18:45 -0300  Ezequiel Garcia <ezequiel@collabora.com>
+
+       * sys/v4l2/gstv4l2.c:
+         v4l2: Add a debug message indicating probe operation
+         It's useful to see the v4l2 element running the probe
+         operation, to confirm it's turned on and working.
+
+2018-09-10 13:18:30 -0300  Ezequiel Garcia <ezequiel@collabora.com>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2jpegenc.c:
+       * sys/v4l2/gstv4l2jpegenc.h:
+       * sys/v4l2/meson.build:
+         v4l2: Add JPEG encoding support
+         This commit adds the support for V4L JPEG stateful encoders.
+
+2018-09-10 16:20:52 -0300  Ezequiel Garcia <ezequiel@collabora.com>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2fwhtenc.c:
+       * sys/v4l2/gstv4l2fwhtenc.h:
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/meson.build:
+         v4l2: Add FWHT codec support
+         The recently added vicodec (virtual codec) V4L driver
+         uses the Fast Walsh-Hadamard Transform for encoding
+         and decoding.
+         Add support for it.
+
+2018-09-12 21:28:24 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/ext/v4l2-common.h:
+       * sys/v4l2/ext/v4l2-controls.h:
+       * sys/v4l2/ext/videodev2.h:
+         v4l2: Sync kernel header with linuxtv tree
+         This notably add HEVC and FWHT support, and VP8/9 profiles are now an
+         enumeration and their control exposed as a menu.
+
+2018-09-12 17:24:00 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Allow up to 1 trak timescale unit of lateness in prefill mode
+         For 59.94 FPS, it's common to set 60000 as timescale. For that
+         timescale, if the audio is late by as little as 0:00:00.000016666
+         (definitely less than one audio sample), lateness gets rounded to 1.
+         Added a safeguard that allows lateness up to 1 sample with the specific
+         trak's timescale, to make sure that values less than e.g. one audio
+         sample won't break the prefill mode. What will happen in this case is
+         that the audio will get squeezed back to the video's timestamp, which in
+         practice means that the audio will be 0.000016666 seconds early (with
+         the patch).
+         https://bugzilla.gnome.org/show_bug.cgi?id=797133
+
+2018-09-10 20:20:39 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Fix indentation
+
+2018-09-11 00:18:32 +0000  Nicolas Dufresne <nicolas@ndufresne.ca>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Protect against zero PAR num/demu
+         This fixes an assertion when the driver implement CROPCAP but does
+         not set the PAR.
+
+2018-09-12 00:52:19 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/audioparsers/gstwavpackparse.c:
+         wavpackparse: fix handling of correction streams
+         Accept wavpack correction streams (.wvc) on sink pad, so
+         that wavpackparse can also be used to packetise correction
+         streams.
+         Fix parsing of subblock ID tags - the higher bits are
+         flags and are not part of the ID. This resulted in
+         correction blocks not being recognised properly and
+         the output not having the right (correction) caps.
+
+2018-09-07 18:47:22 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/speex/meson.build:
+         meson: Explicitly pass -DWIN32 while building speex
+         The speex headers assume that WIN32 will always be defined when
+         building on Windows, but this is only true by default on MinGW.
+         Always set it explicitly.
+
+2018-09-06 13:13:19 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Don't omit streamheader from caps on downstream reconfigure
+         The reconfigured downstream elements (e.g., dynamically added sink element)
+         most likely require the flv streamheader
+         https://bugzilla.gnome.org/show_bug.cgi?id=797089
+
+2018-09-05 16:11:00 -0700  Martin Kelly <mkelly@xevo.com>
+
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-mux.h:
+         matroskamux: don't store used UIDs
+         Currently, whenever we generate a 128-bit UID, we store it in a list and
+         return 0 if we ever encounter a collision. This is so mathematically
+         improbable that it's not worth checking for, so we can save memory and
+         time by not tracking the UID. Even if a collision happened, a list of
+         only 10 UIDs would be unlikely to detect it.
+         This article has a good description of how improbable a collision is:
+         https://en.wikipedia.org/wiki/Universally_unique_identifier#Collisions
+         https://bugzilla.gnome.org/show_bug.cgi?id=797086
+
+2018-09-06 20:06:10 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Use existing helper function to create "und" language code
+
+2018-09-05 20:15:57 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/meson.build:
+         meson: Don't skip plugins that don't build with MSVC
+         We now have options for all plugins, so we will just disable these in
+         the cerbero recipe instead. These require external deps, so they won't
+         affect gst-build either.
+
+2018-09-03 16:04:33 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/mpg123/gstmpg123audiodec.h:
+         mpg123: Remove ssize_t fallback, not needed anymore
+         The mpg123 headers now contain a definition for ssize_t and building
+         with MSVC fails because of a redefinition for ssize_t
+
+2018-07-31 12:52:36 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Keep sample data from the current fragment only (push mode)
+         This patch clears the sample table whenever the demuxing of a new
+         fragment begins. This avoids increasing memory usage for long videos.
+         This behavior was already present when upstream_format_is_time; this
+         patch extends it to all push mode operation (e.g. Media Source
+         Extensions).
+         https://bugzilla.gnome.org/show_bug.cgi?id=796899
+
+2018-09-01 09:30:23 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * meson.build:
+       * sys/osxaudio/meson.build:
+         meson: Fix osxaudio build on iOS
+         Must define HAVE_IOS, and use appleframeworks dependency to ensure the
+         right frameworks are picked up.
+
+2018-08-22 19:23:53 +0000  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Only offer MMAP/DMABUF pool
+         The propose allocation was offering a pool even in DMABUF_IMPORT or
+         USERPTR mode. These pool are internal only.
+
+2018-08-22 17:51:52 +0000  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2transform.h:
+         v4l2transform: Add "disable-passthrough" property
+         This allow forcing going through the transform driver even if there
+         isn't an conversion happening. This is usedful when the m2m driver can
+         be used to adapt the type of memory between two drivers.
+
+2018-08-31 14:25:09 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: Reset frame/tc/caption pointer to NULL after moving it in the history
+
+2018-08-29 09:51:42 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/rtp/gstrtpmp4vpay.c:
+         rtpmp4vpay: Increase ranking
+         Both rtpmp4vpay and rtpmp4gpay support MPEG4 elementary streams. But
+         the most supported variant is the video-specific one (rtpmp4vpay),
+         therefore increase the rank of that one so that auto-plugging of
+         payloaders for MPEG4 elementary streams ends up picking that one
+         and not the generic one.
+
+2018-08-15 12:53:34 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: implement keyframe search also without cluster prev size
+         If we have cluster prev size (GStreamer muxer will write it by default),
+         we can go back to the previous cluster efficiently, but if we don't then
+         just search backwards until we find a cluster ebml identifier, like we
+         do when searching for clusters in the bisection loop.
+
+2018-08-15 12:14:24 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-demux.h:
+         matroskademux: make max backtrack distance for keyframe search configurable
+         Add property instead of hardcoding it in the code.
+         In some scenarios such as CCTV variable fps and extra long GOPs are
+         used to minimise storage space, for example. In those cases there might
+         not be any keyframes for many minutes, so provide a property to override
+         the max allowed distance.
+         https://bugzilla.gnome.org/show_bug.cgi?id=790696
+
+2018-08-15 11:49:57 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: set limit how much to backtrack to find a keyframe
+         If we seek without an index and land on a cluster that starts
+         with a delta frame.
+         https://bugzilla.gnome.org/show_bug.cgi?id=790696
+
+2018-08-15 11:25:21 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-demux.h:
+         matroskademux: no need to search for keyframes for intra-only streams
+         If the video streams are all I-frame only then we don't need to look
+         for a cluster with a keyframe, we can just assume there will be one.
+         https://bugzilla.gnome.org/show_bug.cgi?id=790696
+
+2018-08-15 01:10:32 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: figure out if we have prev_size when starting up
+         This is useful to know in case someone initiates a seek or
+         direction change before we reach the second cluster.
+
+2018-08-08 12:37:54 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: try to ensure keyframe when seeking without index
+         When seeking in pull mode without an index (because there is no index
+         or the file is still being written to) we bisect to find the right
+         cluster to jump to. However, it's possible the cluster we found doesn't
+         start with a keyframe, which leads to decoding errors, so if we know
+         that the found cluster starts with a delta frame try to scan back to
+         previous clusters until we find one that starts with a keyframe or
+         we are back at the beginning. Theoretically it's possible that all
+         clusters but the first one do not start with a keyframe and the
+         keyframes are in the middle of clusters, but this is extremely
+         unusual, so we will cover this case with a basic sanity check.
+         This problem is especially problematic with content recorded with
+         dynamic GOP and FPS, where long GOP lengths and low FPS may cause a
+         large set of clusters to lack key frames. Playback would then be
+         started on a non-keyframe cluster, and the large number of such frames
+         would make the content impossible to decode fo a long stretch of time.
+         Based on patch by: Mats Lindestam <matslm@axis.com>
+         https://bugzilla.gnome.org/show_bug.cgi?id=790696
+
+2017-01-18 10:27:38 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-demux.h:
+         matroskademux: extract cluster prevsize if available
+         This is useful for reverse playback/trickmodes
+         without an index, and will also be useful in the
+         seek handler if we need to scan back to find a cluster
+         that starts with a keyframe.
+         https://bugzilla.gnome.org/show_bug.cgi?id=790696
+
+2018-07-25 19:27:01 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Validate stride/offset when importing
+         This will prevent situation where buffer size allow importing but rendering
+         goes wrong due to a miss-match in expected stride and offset.
+         https://bugzilla.gnome.org/show_bug.cgi?id=583890
+
+2018-08-01 13:07:52 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+         v4l2object: Add a method to try and import buffers
+         This method will check if a buffer, base on it's video meta,
+         can be imported. It will also try and adapt the request stride
+         in case this is the only that miss-match.
+         https://bugzilla.gnome.org/show_bug.cgi?id=583890
+
+2018-08-01 12:07:20 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+         v4l2allocator: Trace the buffer index we import to
+         https://bugzilla.gnome.org/show_bug.cgi?id=583890
+
+2018-07-25 22:16:59 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Fix typo in error message
+         https://bugzilla.gnome.org/show_bug.cgi?id=583890
+
+2018-07-24 12:07:22 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Only queue buffer if preparation worked
+         The preparation code imports the buffer, doing bunch of
+         validation. Only queue the buffer in the driver if the
+         importation worked. This way we don't rely on the driver
+         to validate.
+         https://bugzilla.gnome.org/show_bug.cgi?id=583890
+
+2018-07-24 12:05:45 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Only allow DMABuf export for STREAMING device
+         DMABuf exportation requires mmap, which requires STREAMING
+         capabilities.
+         https://bugzilla.gnome.org/show_bug.cgi?id=583890
+
+2018-07-13 14:42:21 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Activate the other pool first
+         This change has no effect. We will need to acquire a buffer from the
+         pool later in order to validate / adapt with the video alignment for
+         the downstream buffers.
+         https://bugzilla.gnome.org/show_bug.cgi?id=583890
+
+2018-07-09 15:33:02 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Simplify format handling
+         Always initially use try_format(), delaying set_format() to when the
+         allocation is being negotiated. This avoid having two code paths, and
+         will be help adding support for properly importing buffers of specific
+         strides and offsets.
+         https://bugzilla.gnome.org/show_bug.cgi?id=583890
+
+2018-08-23 22:57:35 +0200  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.h:
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-parse.c:
+         matroska: fix handling of FlagInterlaced
+         This is an enum not a boolean, and a value of 2 signals
+         that the video is progressive, but we would mistakenly set
+         interlace-mode=mixed on the output caps.
+         https://bugzilla.gnome.org/show_bug.cgi?id=787206
+
+2018-08-09 15:14:05 +0200  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: complete colorspace info in debug log
+         The desired colorimetry is logged with all parameters (colorpsace,
+         range, matrix, and transfer function), but of the values actually
+         set by the driver, only colorspace is logged. Complete the debug
+         log message to display all colorimetry parameters:
+         Desired colorspace is 8:1:1:1
+         Got format of 640x480, format YU12, nb planes 1, colorspace 8
+         ->
+         Desired colorspace is 8:1:1:1
+         Got format of 640x480, format YU12, nb planes 1, colorspace 8:0:0:0
+         https://bugzilla.gnome.org/show_bug.cgi?id=796940
+
+2018-08-09 15:12:57 +0200  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: fix typo in comment
+         https://bugzilla.gnome.org/show_bug.cgi?id=796940
+
+2018-08-09 15:08:59 +0200  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: improve colorspace handling for JPEG sources
+         gstjpegdec sets 1:4:0:0 colorimetry (full range BT.601 YCbCr encoding
+         with unknown primaries and unknown transfer function). This currently
+         gets translated to bt601 or bt709 depending on resolution.
+         Both cases result in a negotiation failure:
+         ERROR: from element /GstPipeline:pipeline0/v4l2video0convert:v4l2video0convert0: Device '/dev/video0' does not support 1:4:0:0 colorimetry
+         Improve the guessing game by selecting JPEG colorimetry (JPEG colorspace
+         with sRGB transfer function) under these specific conditions, and loosen
+         the matching so that 1:4:0:0 input gets accepted if the device is
+         actually configured to 1:4:7:1 (V4L2_PIX_FMT_JPEG default).
+         https://bugzilla.gnome.org/show_bug.cgi?id=796940
+
+2018-08-09 17:24:35 +0200  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: stop V4L2 from zeroing extended colorimetry for non-mplane
+         Setting the priv field to a magic value stops V4L2 core from zeroing
+         the extended colorimetry fields quantization, ycbcr_enc, and xfer_func
+         for non-mplane queues.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796940
+
+2018-08-19 15:39:16 +0200  Zeeshan Ali <zeenix@collabora.co.uk>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: Remove a trailing whitespace
+         Otherwise, the latest gst-indent check doesn't pass.
+
+2018-08-18 21:08:55 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+       * meson_options.txt:
+         meson: add options to disable gobject cast checks and glib asserts
+         ... and define G_DISABLE_DEPRECATED for development versions,
+         like we do in autotools.
+
+2018-08-18 21:01:52 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * REQUIREMENTS:
+       * ext/jpeg/meson.build:
+         meson: find libjpeg via pkg-config
+         This effectively (but optionally) requires libjpeg-turbo which
+         ships with a .pc file and is what pretty much everyone these days
+         uses anyway for libjpeg, so shouldn't be a problem hopefully.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796947
+
+2018-08-17 17:35:43 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: Fix build when SO_RCVBUFFORCE is not defined
+         This shoudl fix the mingw build.
+
+2018-08-17 14:17:39 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: Balance Linux value of get/set_rcvbuf
+         On Linux, the kernel returns twice the size as it will allocate extra
+         space for accouting. We devides this value by two in order to ensure
+         that get/set value now match. This fixes the set buffer size validation
+         and allow having a nice warning when the size if surpassed and the
+         process does not have CAP_NET_ADMIN capabilities.
+         https://bugzilla.gnome.org/show_bug.cgi?id=727067
+
+2018-08-17 14:05:04 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+       * gst/udp/gstudpsrc.c:
+         updsrc: set udp buffer size forcibly
+         The udp buffer size is limited to a maximum of around 100K.
+         Some apps need to set the force bufsize for their own operation.
+         Use the SO_RCVBUFFORCE option in order to override the rmem_max limit
+         of linux kernel. Require user to have the CAP_NET_ADMIN privilege to
+         work.
+         Original patch from Kyungnam Bae <kyungnam.bae@lge.com>
+         https://bugzilla.gnome.org/show_bug.cgi?id=727067
+
+2018-08-17 13:59:00 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: factor out gst_udpsrc_get_rcvbuf()
+         No semantic change.
+         https://bugzilla.gnome.org/show_bug.cgi?id=727067
+
+2018-08-17 19:11:21 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/libcaca/meson.build:
+       * meson_options.txt:
+         meson: Rename caca option to libcaca
+         All options must match the plugin directory name.
+
+2018-08-17 18:56:54 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * meson_options.txt:
+       * sys/directsound/meson.build:
+       * sys/meson.build:
+       * sys/osxaudio/meson.build:
+       * sys/osxvideo/meson.build:
+       * sys/waveform/meson.build:
+         meson: Add build files for osxaudio, osxvideo, waveform
+         osxaudio is for macOS and iOS
+         osxvideo is for macOS
+         waveform is for Windows
+
+2018-08-17 14:44:26 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.signals:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+         docs: update for changes in master
+
+2018-08-17 11:45:47 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/Makefile.am:
+         examples: dist qt examples
+         https://bugzilla.gnome.org/show_bug.cgi?id=796968
+
+2018-08-17 00:27:59 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * meson.build:
+       * meson_options.txt:
+       * tests/meson.build:
+         meson: Add an option for tests
+         This is needed because we don't always have gstreamer-check available,
+         for instance inside Cerbero on iOS.
+
+2018-08-16 18:55:29 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/multifile/gstsplitmuxsink.c:
+         mp4 robust muxing: improve documentation and logging
+
+2018-07-03 23:11:56 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+         rtph26*pay: Update param set timestamp even if parameters unchanged
+         rtph264pay and rtph265pay skip updating the parameter set timestamp if
+         the units they see contain no new configuration. This can result in
+         them injecting duplicate parameters.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796748
+
+2018-08-15 13:43:53 +0200  Ulf Olsson <ulfo@axis.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: Add support for SET_PARAMETER and GET_PARAMETER using signals
+         https://bugzilla.gnome.org/show_bug.cgi?id=792131
+
+2018-08-15 02:28:20 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Don't leak old muxer/sink in async mode
+         Make sure to clear the reference taken earlier in the function
+         when switching muxer/sink asynchronously so they don't leak
+
+2018-08-15 02:10:25 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Fix reference counting loop
+         The stream context was holding a reference to the
+         internal queue and pads, with pad probes that were
+         in turn holding references to the stream context.
+         This lead to a leak if the request pads weren't explicitly
+         released.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796893
+
+2018-08-11 16:45:25 +0800  Roland Jon <rlandjon@gmail.com>
+
+       * gst/audioparsers/gstaacparse.c:
+         aacparse: fix codec_data buffer leak
+         https://bugzilla.gnome.org/show_bug.cgi?id=740101
+
+2018-08-02 16:12:45 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Handle closed captions as subtitle streams
+
+2018-08-02 08:40:17 +0200  Iñigo Huguet <inigohuguet@hotmail.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2src: fix first input used is always used next times
+         The input from an v4l2 device that was used the first time was
+         remembered for next times, and set again always the pipeline is
+         set to READY state. This was making that users wasn't able to
+         select a different input without having to create a new pipeline.
+         This patch makes that v4l2src element forget previous used input
+         when going to NULL state, so it will check again for the current
+         selected input when going again to READY state. Users can change
+         to NULL state, select a new input with a VIDIOC_S_INPUT ioctl
+         and change to PLAYING again.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796908
+
+2018-08-02 13:40:09 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: The sample size we have to reserve is 256+8 bytes for the header for CDP packets
+
+2018-08-02 12:27:45 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Properly allocate 256 bytes per CDP packet in prefill mode
+         Instead of allowing 256 but only pre-allocating 100.
+
+2018-08-02 12:27:17 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         Revert "qtmux: Allow for CDP packets up to 320 bytes"
+         This reverts commit 5eed1d49bdb7e7a632c7135656c482ed38a6ac2a.
+         255 is actually the maximum, there's a bug if more is arriving.
+
+2018-08-01 16:50:03 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Allow for CDP packets up to 320 bytes
+         Apparently they can be bigger than 256 bytes sometimes.
+
+2018-07-13 22:31:04 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtp/gstrtpopuspay.c:
+       * gst/rtp/gstrtpvp8pay.c:
+       * gst/rtp/gstrtpvp9pay.c:
+         rtppayload: Fix VP8/VP9/OPUS dual encoding name handling
+         All these were copy pasted and would lead to assertion when chained with
+         rtpmux. This commit rewrite the negotiation with downstream. This also
+         drop the fallback to ancient names if the pad is unlinked. This was
+         completly arbitrary decision that made no sense.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796809
+
+2018-08-01 12:06:23 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtgl.h:
+         qt: Ensure GL headers are included
+         Otherwise there may be no valid typedef of GLsync.
+         ...
+         /usr/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:24: note: in definition of macro 'GST_GL_EXT_FUNCTION'
+         ret (GSTGLAPI *name) args;
+         ^~~~
+         /usr/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:33:23: error: 'GLsync' has not been declared
+         (GLsync sync))
+         ^~~~~~
+         ...
+         https://bugzilla.gnome.org/show_bug.cgi?id=796879
+
+2018-08-01 03:18:58 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * sys/oss4/meson.build:
+         meson: Fix oss4 header checks
+         Otherwise, oss4 ends up getting built when force-disabled.
+
+2018-08-01 01:10:49 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * sys/v4l2/meson.build:
+         meson: Fix missing variable in v4l2 build
+
+2018-07-31 12:47:47 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtdemux: Don't assert in prefill mode if a track has no samples at all
+         Just write it with a duration of 0, no samples, etc.
+
+2018-07-31 12:33:54 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't assert if a file does not have any active streams
+         ** (gst-play-1.0:9113): CRITICAL **: 12:31:54.360: qtdemux_is_streams_update: assertion 'qtdemux->active_streams != NULL' failed
+
+2018-07-30 13:33:28 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Reserve 256 bytes for CDP packets in pre-fill mode
+         92 is sometimes too small and compared to the wasted space for other
+         codecs 256 bytes is small (and should be the maximum CDP packet size)
+
+2018-07-25 07:35:28 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/aalib/meson.build:
+       * ext/cairo/meson.build:
+       * ext/dv/meson.build:
+       * ext/flac/meson.build:
+       * ext/gdk_pixbuf/meson.build:
+       * ext/gtk/meson.build:
+       * ext/jack/meson.build:
+       * ext/jpeg/meson.build:
+       * ext/lame/meson.build:
+       * ext/libcaca/meson.build:
+       * ext/libpng/meson.build:
+       * ext/mpg123/meson.build:
+       * ext/pulse/meson.build:
+       * ext/qt/meson.build:
+       * ext/raw1394/meson.build:
+       * ext/shout2/meson.build:
+       * ext/soup/meson.build:
+       * ext/speex/meson.build:
+       * ext/taglib/meson.build:
+       * ext/twolame/meson.build:
+       * ext/vpx/meson.build:
+       * ext/wavpack/meson.build:
+       * gst/matroska/meson.build:
+       * gst/meson.build:
+       * meson.build:
+       * meson_options.txt:
+       * sys/directsound/meson.build:
+       * sys/meson.build:
+       * sys/oss/meson.build:
+       * sys/oss4/meson.build:
+       * sys/v4l2/meson.build:
+       * sys/ximage/meson.build:
+       * tests/examples/qt/qmlsink/meson.build:
+       * tests/examples/qt/qmlsrc/meson.build:
+       * tests/icles/meson.build:
+       * tests/meson.build:
+         meson: Add feature options for all plugins
+         Checks for GL, Qt5, and C++ are still automagic. FIXMEs have been
+         added for these so they can be fixed later.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795107
+
+2018-07-25 17:15:53 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/deinterlace/gstdeinterlacemethod.h:
+         deinterlace: Closed caption pass-through
+         Pass through closed caption data when deinterlacing. When two
+         deinterlaced frames are created for the same interlaced frame (e.g.
+         fields=all), the second of the two frames will have no closed caption
+         data.
+         Also fixed memory leaks related to timecode meta pass-through.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796876
+
+2018-07-25 18:37:48 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmuxmap.c:
+         qtmux: Implement muxing of AV1 into MP4 files
+         According to
+         https://aomediacodec.github.io/av1-isobmff/
+
+2018-07-25 17:09:06 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Put codec_data as CodecPrivate for AV1
+
+2018-07-25 17:08:53 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Accept muxing AV1
+
+2018-07-25 16:51:38 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux_types.c:
+         qtdemux: Recognize more AV1 atoms
+
+2018-07-25 16:39:18 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Extract codec_data for AV1
+         According to
+         https://github.com/Matroska-Org/matroska-specification/blob/av1-mappin/codec/av1.md
+
+2018-07-25 14:31:39 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Extract AV1 codec_data and put it in the caps
+         Also extract the presentation-delay and put it in the caps.
+
+2018-07-25 10:43:11 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux_dump.c:
+       * gst/isomp4/qtdemux_types.c:
+         qtdemux: Add initial support for AV1 demuxing
+         Following the spec at
+         https://aomediacodec.github.io/av1-isobmff/
+
+2018-07-27 00:41:57 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: Add a small configurable teardown delay
+         This causes rtspsrc to send a teardown and wait on
+         PAUSED->READY transition, with a configurable delay.
+         Otherwise, typically teardown never gets sent in
+         playbin / uridecodebin where the transition back to NULL
+         happens too quickly.
+         The timeout is set to 100ms default.
+         https://bugzilla.gnome.org/show_bug.cgi?id=751994
+
+2018-07-26 16:43:28 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpgstdepay.c:
+       * gst/rtp/gstrtpgstpay.c:
+       * gst/rtp/gstrtpgstpay.h:
+         rtpgstpay: Add support for force-keyunit events
+         This triggers immediate re-sending of the configuration data in-band.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796877
+
+2018-07-13 19:45:19 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpgstpay.c:
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/gstrtpmp4vpay.c:
+       * gst/rtp/gstrtptheorapay.c:
+       * gst/rtp/gstrtpvorbispay.c:
+         rtp: Use running_time instead of PTS for config-interval calculations
+         PTS can start again from a different offset while the running time is
+         increasing. The only thing that matters here is the running time.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796807
+
+2018-07-19 22:48:34 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/examples/gtk/meson.build:
+       * tests/examples/meson.build:
+         example: Build GTK  and GTK GL example code
+
+2018-07-19 17:31:03 +0200  Michael Olbrich <m.olbrich@pengutronix.de>
+
+       * gst/rtp/gstrtpL8pay.c:
+         rtpL8pay: don't try to modify a read-only structure
+         Just remove the code. It's not doing anything useful anyways. The modified
+         caps are the result of a caps query, so either not used afterwards of a
+         reference to some internal caps of another element that should not be
+         modified.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796837
+
+2018-07-17 08:23:54 +0200  Iñigo Huguet <inigohuguet@fanamoel.com>
+
+       * ext/qt/gstqtgl.h:
+         qmlgl: Fix conflicting declaration of type GLsync for non-android
+         https://bugzilla.gnome.org/show_bug.cgi?id=796821
+
+2018-07-16 19:03:39 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/deinterlace/gstdeinterlace.c:
+       * gst/deinterlace/gstdeinterlace.h:
+       * gst/deinterlace/gstdeinterlacemethod.h:
+         deinterlace: Timecode pass-through
+         When it is trivial to pass-through a timecode, by only removing the
+         "interlaced" flag, do pass-through. Otherwise, double the fps_n and
+         adjust the "frames" field.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796818
+
+2018-07-17 00:03:19 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmux: Improve handling of repeated timestamps
+         When handling input with timestamps that repeat, sometimes
+         splitmuxsink would get confused and ignore a keyframe.
+         The logic in question is a holdover from before the cmd queue
+         moved the file cutting to the multiqueue output side and made
+         it deterministic, so it's no longer needed on the input
+         here.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796773
+
+2018-07-17 01:33:55 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         Revert "splitmuxsrc: Make sure events are writable"
+         This reverts commit 3ac5430311b20f30814cdabf5724fb687748bb5b.
+         There's no need to make a freshly created event writable,
+         and the other half of this patch was already fixed
+         and pushed in f2f15a1
+
+2018-07-16 23:43:29 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Make sure events are writable
+         Before setting the seqnum on events sent downstream,
+         make sure they are writable.
+
+2018-07-13 16:51:24 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Validate that capture buffers were queued
+         When the pool is started, we allocate and release buffer, expecting
+         the pool release-buffer handler to queue them. Though, as we rely
+         on release function, there is no direct way to detect that this
+         process didn't work.
+         To check this, validate that the number of queued buffer is the same
+         as the number of allocated buffers. This allow returning an error
+         when buffer importation was refused by the driver.
+         https://bugzilla.gnome.org/show_bug.cgi?id=583890
+
+2018-07-13 16:02:02 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Only return eos for M2M devices
+         This will avoid sending EOS on v4l2src when a driver sends an empty
+         buffers. This case would be a bug in the driver, but yet the camera
+         should keep running.
+         This also removes the check for corrupted buffers, as this check is
+         already done later.
+         https://bugzilla.gnome.org/show_bug.cgi?id=794842
+
+2018-07-13 15:58:36 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/v4l2-utils.h:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: Add a macro to check for M2M
+         https://bugzilla.gnome.org/show_bug.cgi?id=794842
+
+2018-07-13 14:41:13 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+         v4l2allocator: Fix userptr importation
+         The length passed to the driver was always 0 instead of the size of
+         the memory. This would fail validation in videobuf2.
+
+2018-07-12 15:11:39 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Remove duplicate check
+         We were calling gst_v4l2_is_buffer_valid() before and inside
+         gst_v4l2_buffer_pool_qbuf() as we needed to access the group. The second
+         check failed since the writability of the buffer get inherited from the
+         GstMemory, which lead to pipeline failure. As we cannot avoid the extra
+         ref, it would be racy otherwise, just pass the group to _dbuf() so it
+         does not have to call gst_v4l2_is_buffer_valid() again.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796692
+
+2017-08-25 11:58:12 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Don't start the RTCP thread until it's needed
+         Always wait with starting the RTCP thread until either a RTP or RTCP
+         packet is sent or received. Special handling is needed to make sure the
+         RTCP thread is started when requesting an early RTCP packet.
+         We want to wait with starting the RTCP thread until it's needed in order
+         to not send RTCP packets for an inactive source.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2018-07-11 12:21:44 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Try to avoid TRY_FMT when camera is streaming
+         Some camera firmware crash is TRY_FMT is called during streaming. As a
+         side effect. This try and detect that the same format as currently
+         running is about to be tried, and skip renegotiation.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796789
+
+2018-07-09 13:59:02 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Protect double calls to set_format()
+         In some cases, set_format() may get called twice before the output
+         format is set. Running an allocation query in this case is both not
+         needed and will cause assertion due tot he NULL caps.
+
+2018-07-08 20:08:18 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/audiofx/gstscaletempo.c:
+         scaletempo: Mark as Audio in classification
+
+2018-07-06 15:21:33 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Store and propagate SEGMENT sequence numbers
+         * When receiving a segment in TIME, use that seqnum
+         * Only reset the stored sequence number when doing HARD reset
+         (and not when we get a FLUSH event from upstream)
+
+2018-07-01 15:27:32 -0400  Michael Tretter <m.tretter@pengutronix.de>
+
+       * sys/v4l2/gstv4l2transform.c:
+         v4l2transform: Implement stable element name
+         The first converter to be found will now gain the name v4l2convert.
+         Other converters will be named after the m2m dev node end point they are
+         attached to.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784958
+
+2018-06-13 17:39:57 +0100  Philippe Normand <philn@igalia.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Set subtitle tag title from TrackName field
+         GUI applications can then use the title tag to set menu items or labels
+         representing the track.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796567
+
+2018-06-28 19:08:35 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Only renegotiate with upstream
+         When the decoder get linked further, it will receive a renegotiation
+         event from downstream. This case is not supported and should be ignored.
+         This fixes issues when this encoder is used inside an GstRtspServer
+         pipeline.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796525
+
+2018-06-09 23:58:01 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         qtdemux: rework segment event pushing, again
+         This patch aims at fixing the recent regressions in the adaptive test
+         suite.
+         All segment pushing in push mode is now done with
+         gst_qtdemux_check_send_pending_segment(), which is idempotent and
+         handles both edit lists cases and cases where the upstream TIME segments
+         have to be sent directly.
+         Fragmented files that start with a non-zero tfdt are also taken into
+         account, but their handling has been vastly simplified: now they are
+         handled as implicit default seeks so there is no need to extend the
+         GstSegment formulas as was being done before.
+         qtdemux->segment.duration is no longer modified when
+         upstream_format_is_time, respecting in this way the durations provided
+         by dashdemux and fixing bugs in reverse playback tests where mangled
+         durations appeared in the emitted segments.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752603
+
+2018-06-17 02:01:59 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't send EOS during upstream reverse playback
+         Upstream driving elements such as dashdemux often do reverse playback by
+         feeding qtdemux with the fragments containing the requested playback
+         range in reverse order.
+         But the requested playback range stop may be somewhere in the
+         middle of a fragment. In that case, a naive pts >= segment.stop
+         condition may declare end of segment prematurely when demuxing this
+         first fragment.
+         This used not to happen because there were places in moov parsing where
+         segment.stop was overwritten to GST_CLOCK_TIME_NONE even if
+         upstream_format_is_time -- resulting in this case in a segment with rate
+         < 0 and stop == -1 and hence not triggering the EOS check, but that was
+         likely an accident.
+         This patch modifies the EOS check to take this case into account, not
+         sending EOS when upstream_format_is_time if rate < 0.
+         This fixes adaptive.dash.playback.seek_end_live.DASHIF_livestream_testpic_2s
+         https://bugzilla.gnome.org/show_bug.cgi?id=752603
+
+2018-02-06 13:51:14 +0100  Peter Seiderer <ps.report@gmx.net>
+
+       * sys/v4l2/gstv4l2transform.c:
+         v4l2transform: fold property set/get PROP_OUTPUT_IO_MODE case into default
+         https://bugzilla.gnome.org/show_bug.cgi?id=796714
+
+2018-06-22 14:56:31 +0000  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Don't set colorimetry on capture
+         The colorimetry will be set along with the raw format and those fields
+         will then be copied from sink to src caps by the gst encoder.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791471
+
+2018-06-27 16:57:29 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Really always set colorimetry
+         This fixes patch dd1c5aed656e07e3dad01f83410f3af16cfb14cf which
+         pretended to always set colorimetry but the patch was incomplete.
+         This is again best effort considering the spec says that for CAPTURE
+         you may only read this value.
+
+2018-06-26 15:04:39 +0200  Michael Tretter <m.tretter@pengutronix.de>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: do not call streamon while pool is flushing
+         gst_v4l2_buffer_pool_flush() executes streamoff for the output, but
+         streamoff->streamon for the capture of the decoder.
+         gst_v4l2_buffer_pool_streamon() on capture assumes that is able to
+         resurrect the buffers from the pool, but acquiring buffers fails if the
+         buffer pool is still flushing.
+         The decoder needs to stop flushing the pools before calling
+         gst_v4l2_buffer_pool_flush() to restart the v4l2 device. Otherwise
+         starting the decoding thread might fail, because there are no buffers in
+         the capture pool.
+         This fixes a regression that was introduced in 97985a335c78
+         ("v4l2videodec: Add dynamic resolution change support").
+         https://bugzilla.gnome.org/show_bug.cgi?id=796681
+
+2018-06-25 16:03:17 +0200  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: use S_SELECTION instead of S_CROP in gst_v4l2_object_set_crop
+         The S_CROP call doesn't work on mem2mem output queues. Use the
+         S_SELECTION call to set the crop rectangle and only fall back to
+         S_CROP for ancient kernels.
+         This will allow v4l2videoenc to set the coded size on the output
+         queue via S_FMT and then set the visible size via the crop rectangle,
+         as required by the V4L2 codec API.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796672
+
+2018-06-27 13:46:00 +0000  Marian Mihailescu <mihailescu2m@gmail.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: activate capture pool after output pool
+         Some drivers need output buffers set before capture buffers.
+         CODA cannot set output format if capture is streaming.
+         Exynos MFC fails on output STREAMON if capture is already streaming.
+         This patch delays capture activation until output is configured and
+         streaming
+         https://bugzilla.gnome.org/show_bug.cgi?id=796693
+
+2018-06-23 23:44:19 +0200  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/gstrtpsession.c:
+         Update for g_type_class_add_private() deprecation in recent GLib
+         https://gitlab.gnome.org/GNOME/glib/merge_requests/7
+
+2018-06-20 10:03:59 +0200  Edward Hervey <edward@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Protect input stream with lock
+         This was the last remaining place where modifying/unreffing the
+         input stream was not protected by the lock
+         https://bugzilla.gnome.org/show_bug.cgi?id=796639
+
+2018-06-18 12:13:48 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Make sure events are writable before setting their seqnum
+
+2018-05-28 15:19:52 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Drop truncated frames
+         Drop truncated frames regardless if they have the ERROR flag or not.
+         Truncated frame causes video frame map failure in many elements
+         including cluttersink, glupload etc.
+
+2018-04-02 12:59:33 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Try return input buffer soon
+         In this patch we use a non-blocking poll in order to return all input
+         buffers (buffers from v4l2-output queue). This prevent holding too long
+         on upstreaming buffer in importing.
+         https://bugzilla.gnome.org/show_bug.cgi?id=794904
+
+2018-06-07 13:56:03 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/meson.build:
+       * tests/examples/qt/qmlsink/meson.build:
+       * tests/examples/qt/qmlsrc/meson.build:
+         qt: also check for un-suffixed moc
+         e.g. Qt windows installer doesn't have suffixes
+
+2018-06-06 11:44:33 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Do not set INVALID seqnum on events
+
+2018-06-01 22:47:10 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * tests/check/elements/qtdemux.c:
+         tests: qtdemux: Add checking exposed segment event
+         https://bugzilla.gnome.org/show_bug.cgi?id=796480
+
+2018-06-01 21:08:10 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Forward upstream time-format segment without mapping
+         Sample table based segment event (genereted by qtdemux) could break
+         presentation timeline. For example, qtdemux should not modify upstream
+         time format segment (e.g., adaptivedemux use case)
+         https://bugzilla.gnome.org/show_bug.cgi?id=796480
+
+2018-04-19 08:14:47 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Seek handling is always done with a valid event
+         Remove the checks
+
+2018-06-06 07:46:54 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: Don't set invalid seqnum on events
+         Some codepath will call gst_wavparse_perform_seek without an event
+         and therefore without a valid seqnum
+
+2018-05-25 12:28:04 +0200  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Clarify field name about stream-encryption-system
+         This field is actually only informatory and the user can potentially
+         choose something else. EME tests in WebKit testsuite actually doesn't
+         take it into and force another encryption system to be used, and expects
+         to be given the occasion to do so.
+         This basically also reverts 3e063703b3a51b8aaa7f75f36c4660c583a60e93.
+
+2018-05-28 11:01:42 -0700  Thiago Santos <thiagossantos@gmail.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: mark segment as sent after pushing when moov is received
+         Otherwise we would try to send it a second time if the same moov is
+         received or in any other situation that might trigger segment sending.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752603
+
+2018-05-28 10:59:14 -0700  Thiago Santos <thiagossantos@gmail.com>
+
+       * tests/check/elements/qtdemux.c:
+         tests: qtdemux: Avoid using data beyond array and improve error msg
+         Makes it easier to debug the failures as well as prevents problems
+         reading out of bounds data.
+
+2018-05-16 20:16:44 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Don't open the device in get property
+         This is both racy and inefficient. This function is still missing some
+         locking which will be address in later patch.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796185
+
+2018-05-27 20:29:47 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/rtpstorage.c:
+       * tests/check/elements/rtpulpfec.c:
+         tests: rtpstorage: fix potential crashes / test failures on 32-bit
+         Pass 64 bits to g_object_set() for 64-bit integer properties like
+         rtpstorage's "size-time" property.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796429
+
+2018-05-13 21:59:49 -0700  Thiago Santos <thiagossantos@gmail.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: do not update segment.stop is it is not a valid time
+         Otherwise it overflows and starts having a meaningful and wrong value.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752603
+
+2016-04-26 16:54:30 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: offset edts segments by the min timestamp of the stream
+         Otherwise if the stream is starting at timestamp=X it would wait
+         'X' to start playing.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752603
+
+2016-04-26 14:34:16 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         qtdemux: rework segment event pushing
+         Instead of always keeping a safe segment (start=0) event from the beginning,
+         delay the creation of this event to when we really know the timestamp of the
+         first sample. This is important to properly start fragmented streams that
+         we might join in the middle or to play isolated fragment files that might
+         have an advanced tfdt.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752603
+
+2018-05-25 10:49:21 +0200  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Do not unref a NULL stream_tags
+         stream->stream_tags is reset to NULL once we expose the stream and
+         these have been consumed, we need to check that when cleaning up
+         the stream.
+
+2018-05-25 10:17:29 +0200  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Do not run the preferred decryptor context query if no decryptor avalaible
+         Ultimately this avoids a segfault as the code expect a non NULL array
+         here.
+
+2018-03-30 17:03:13 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Allow edit lists on fragmented files on push mode
+         Fragmented files often use elst.duration=0 which before
+         ee78825eaef2c5fffac7d6c5526fe18cec6b3eef was wrongly interpreted as
+         having no frames.
+         Since that issue has now been fixed, there is no reason to disable edit
+         lists in fragmented files. This commit enables them, therefore producing
+         correct stream time for files containing edit lists.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793058
+
+2018-05-24 12:58:00 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix computation of first_duration for fragmented files in push mode
+         Since ca068865c391e87932b1268d0c675be233dd2ffe the duration of the first
+         frame is not used for estimating the frame rate.
+         For this purpose, stream->first_duration was initialized with the
+         duration of the first frame. In fragmented files, this was previously
+         done by peeking the first moof, but that can only be done in pull mode.
+         Fortunately, we don't really need to do that, at least with the current
+         design: When we are estimating the frame rate we already have the
+         sample table, regardless of the scheduling mode and whether the file is
+         fragmented or not, so we can obtain first_duration there much more
+         reliably.
+         This fixes frame rate estimation for fragmented files in push mode.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796384
+
+2017-06-13 17:42:55 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+       * tests/check/elements/splitmux.c:
+         splitmuxsink: Added new async-finalize mode
+         This mode is useful for muxers that can take a long time to finalize a
+         file. Instead of blocking the whole upstream pipeline while the muxer is
+         doing its stuff, we can unlink it and spawn a new muxer+sink combination
+         to continue running normally.
+         This requires us to receive the muxer and sink (if needed) as factories,
+         optionally accompanied by their respective properties structures. Also
+         added the muxer-added and sink-added signals, in case custom code has to
+         be called for them.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783754
+
+2018-05-23 19:00:48 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't send gaps bigger than 1 second (now in push mode too)
+         This applies the same workaround to gaps that is being used in pull
+         mode.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778426
+
+2018-05-23 20:08:56 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Properly handle edit list in push mode
+         If there are empty segments in edit list, demux should
+         adjust "accumulated_base" to apply it into running time.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778426
+
+2018-05-22 22:14:03 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroska-mux: write colorimetry
+         This is a straightforward translation of 5dd39d8, can be trivially
+         checked by running:
+         gst-launch-1.0 -v videotestsrc ! video/x-raw, colorimetry=2:4:7:1 ! \
+         matroskamux ! matroskademux ! fakesink
+         and verifying that the colorimetry is correctly preserved.
+         https://bugzilla.gnome.org/show_bug.cgi?id=796344
+
+2018-03-31 17:19:03 +0200  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix buggy duration in edits with duration=0 in fragmented files without a mehd
+         https://bugzilla.gnome.org/show_bug.cgi?id=794858
+
+2018-05-23 13:14:27 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/rtpsession.h:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/udp/gstmultiudpsink.c:
+         docs: fix typos
+
+2018-03-31 18:42:47 +0900  Seungha Yang <pudding8757@gmail.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Clarify variable name
+         As defined by spec, use "empty edit". It's more straightforward.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778426
+
+2017-06-21 17:59:21 +0200  Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         qtdemux: add context for a preferred protection
+         qtdemux selected the first system corresponding to a working GStreamer
+         decryptor. With this change, before selecting that decryptor, qtdemux
+         will check if it has context (a preferred decryptor id) and if not, it
+         will request it.
+         The request includes track-id, available key system ids for the
+         available decryptors and even the events so that the init data is
+         accessible.
+         [eocanha@igalia.com: select the preferred protection system even if not available]
+         Test "4. ClearKeyVideo" in YouTube leanback EME conformance tests 2016 for
+         H.264[1] uses a media file[2] with cenc encryption which embeds 'pssh' boxes
+         with the init data for the Playready and Widevine encryption systems, but not
+         for the ClearKey encryption system (as defined by the EMEv0.1b spec[3] and with
+         the encryption system id defined in [4]).
+         Instead, the ClearKey encryption system is manually selected by the web page
+         code (even if not originally detected by qtdemux) and the proper decryption key
+         is dispatched to the decryptor, which can then decrypt the video successfully.
+         [1] http://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/2016.html?test_type=encryptedmedia-test&webm=false
+         [2] http://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/media/car_cenc-20120827-86.mp4
+         [3] https://dvcs.w3.org/hg/html-media/raw-file/eme-v0.1b/encrypted-media/encrypted-media.html#simple-decryption-clear-key
+         [4] https://www.w3.org/Bugs/Public/show_bug.cgi?id=24027#c2
+         https://bugzilla.gnome.org/show_bug.cgi?id=770107
+
+2017-05-20 16:55:40 +0000  Enrique Ocaña González <eocanha@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: also push buffers without encryption info instead of dropping them
+         Test "17. PlayReadyH264Video" in YouTube leanback EME conformance tests 2016
+         for H.264[1] uses a media file[2] with cenc encryption whose first two 'moof'
+         boxes have no encryption information (no 'saiz' and 'saio' boxes).
+         Those boxes are actually not encrypted and the current qtdemux implementation
+         was just dropping them, breaking the test use case.
+         This patch detects those kind of situations and just lets the unencrypted
+         buffers pass. Of course, this needs some collaboration by the decryptors,
+         which should also do the same and not to try to decrypt those clear buffers.
+         [1] http://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/2016.html?test_type=encryptedmedia-test&webm=false
+         [2] http://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/media/oops_cenc-20121114-142.mp4
+         https://bugzilla.gnome.org/show_bug.cgi?id=770107
+
+2018-05-21 11:49:08 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: use cdata.set_quoted() in more places
+
+2018-05-21 11:46:59 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+       * meson_options.txt:
+         meson: add 'nls' option to disable translations
+         And enable by default. Was implicitly disabled because
+         ENABLE_NLS was not defined.
+
+2016-02-09 14:00:00 -0800  Andre McCurdy <armccurdy@gmail.com>
+
+       * ext/taglib/gstid3v2mux.cc:
+         id3v2mux: ensure valid sentinal for gst_structure_get()
+         gst_structure_get() is declared with G_GNUC_NULL_TERMINATED, ie
+         __attribute__((__sentinel__)), which means gcc will generate a
+         warning if the last parameter passed to the function is not NULL
+         (where a valid NULL in this context is defined as zero with any
+         pointer type).
+         The C code callers to gst_structure_get() within gst-plugins-good
+         use the C NULL definition (ie ((void*)0)), which is a valid sentinel.
+         However gstid3v2mux.cc uses the C++ NULL definition (ie 0L), which
+         is not a valid sentinel without an explicit cast to a pointer type.
+         Upstream-Status: Pending
+         Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+
+2016-02-03 18:12:38 -0800  Andre McCurdy <armccurdy@gmail.com>
+
+       * ext/raw1394/gstdv1394src.c:
+       * ext/raw1394/gsthdv1394src.c:
+         raw1394: avoid including <sys/poll.h> directly
+         Note from Edward Hervey: Patch from git.yoctoproject.org
+         musl libc generates warnings if <sys/poll.h> is included directly.
+         Upstream-Status: Pending
+         Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+
+2018-02-23 13:38:32 +0100  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux_parse_segments: remove superfluous variable
+         https://bugzilla.gnome.org/show_bug.cgi?id=793751
+
+2018-04-23 13:29:30 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Remove custom get_next_time implementation
+         GstAggregator now does the same thing in the simple implementation.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795486
+
+2018-05-15 11:50:30 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Add tests for PLI and FIR
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2018-04-30 08:41:19 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+         rtpsession: make "clear-pt-map" action signal actually work
+         Needed for PLI + FIR unit tests in follow-up commit.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2016-10-06 16:08:38 +0200  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: Avoid unnecessary copy of stats structure
+         The code before copied GstStructure twice. The first time inside
+         gst_value_set_structure and the second time in g_value_array_append.
+         Optimized version does no copies, just transfers ownership to
+         GValueArray. It takes advantage of the fact that array has already
+         enough elements preallocated and the memory is zero initialized.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2018-05-15 10:35:09 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/replaygain/gstrgvolume.c:
+         Revert "BugFix : Change peak value to normalize audio file with fallback gain"
+         This reverts commit 36e49fd6f872f0b3f33083107a55fb7f671a47d0.
+         Breaks unit test, someone needs to investigate if it's the
+         patch's fault or if the test needs adjusting/updating.
+         https://bugzilla.gnome.org/show_bug.cgi?id=673970
+
+2016-12-13 10:13:52 +0100  Stian Selnes <stian@pexip.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Drop packet if trying to send from non-internal source
+         If obtain_internal_source() returns a source that is not internal it
+         means there exists a non-internal source with the same ssrc. Such an
+         ssrc collision should be handled by sending a GstRTPCollision event
+         upstream and choose a new ssrc, but for now we simply drop the packet.
+         Trying to process the packet further will cause it to be pushed
+         usptream (!) since the source is not internal (see source_push_rtp()).
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2018-05-14 00:29:24 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: tag disabled streams with FLAG_UNSELECT
+         So they're never picked as default, only by explicit
+         user action.
+         https://bugzilla.gnome.org/show_bug.cgi?id=690911
+
+2018-05-14 21:06:55 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Print expected/actual values in debug log on mismatch in prefill mode
+         This helps debugging a lot.
+
+2018-04-10 18:05:47 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Try media_ssrc if no src can be found for PLI sender_ssrc
+         Some RTP stacks out there does not set the sender_ssrc. In order to be
+         more robust, try to lookup the media_ssrc before dropping the PLI.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2017-08-25 11:59:00 +0200  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Fix on-feedback-rtcp race
+         If there is an external source which is about to timeout and be removed
+         from the source hashtable and we receive feedback RTCP packet with the
+         media ssrc of the source, we unlock the session in
+         rtp_session_process_feedback before emitting 'on-feedback-rtcp' signal
+         allowing rtcp timer to kick in and grab the lock. It will get rid of
+         the source and rtp_session_process_feedback will be left with RTPSource
+         with ref count 0.
+         The fix is to grab the ref to the RTPSource object in
+         rtp_session_process_feedback.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2017-11-27 10:56:47 +0100  Stian Selnes <stian@pexip.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: Add missing lock around sess->ssrcs iteration
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2017-08-25 11:22:47 +0200  John-Mark Bell <jmb@pexip.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: do not emit RBs for internal senders.
+         These are the sources we send from, so there is no reason to
+         report receive statistics for them (as we do not receive on them,
+         and the remote side has no knowledge of them).
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2018-04-10 18:22:57 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * tests/check/elements/rtpsession.c:
+         tests: rtpsession: fix indentation
+         https://bugzilla.gnome.org/show_bug.cgi?id=795139
+
+2018-05-12 08:03:28 +0200  Edward Hervey <edward@centricular.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2: Fix typo in debug messages
+         It's a decoder, not an encoder :)
+         https://bugzilla.gnome.org/show_bug.cgi?id=795941
+
+2018-03-22 18:00:37 +0100  Vivia Nikolaidou <vivia@toolsonair.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Added caption_%u pad template
+         For closed-caption-enabled muxers (e.g. qtmux)
+
+2018-05-10 13:57:30 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Initialize riff library
+         Avoids debugging message issues. Also just use the main riff header
+
+2018-05-08 20:31:41 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * tests/check/elements/qtdemux.c:
+       * tests/check/elements/qtdemux.h:
+         tests: qtdemux: Add test for stream change
+         Add test case to verify track-id change and stream change
+         https://bugzilla.gnome.org/show_bug.cgi?id=684790
+
+2018-05-08 20:30:18 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         qtdemux: Protect _expose_streams() from flush event
+         Flush during stream change can break autoplugging or the
+         flush event could be dropped.
+         https://bugzilla.gnome.org/show_bug.cgi?id=684790
+
+2018-05-08 20:26:41 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         qtdemux: Try to expose whenever got new moov or new stream-start
+         Whenever got new moov or new stream-start,
+         demux will try to expose new pad by following rule.
+         Comparing stream-id in the current moov with previous one, then
+         * If matched stream-id is found from previous one,
+         reuse existing pad (most common case)
+         * Otherwise, expose new pad with new stream-start
+         * No more used stream will be freed
+         https://bugzilla.gnome.org/show_bug.cgi?id=684790
+
+2018-05-08 20:10:39 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Remove duplication of initializing member variables
+         Most initialization of variables in gst_qtdemux_init() are duplicated in
+         gst_qtdemux_reset() function.
+         https://bugzilla.gnome.org/show_bug.cgi?id=684790
+
+2018-05-08 20:09:10 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Create stream whenever got new moov
+         Whenever demux got moov, demux will create new stream. Only exception is
+         duplicated track-id in a moov box. In that case the first stream
+         will be accepted. This patch is pre-work for rework of moov handling.
+         https://bugzilla.gnome.org/show_bug.cgi?id=684790
+
+2018-05-08 19:57:11 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Store stream-id to manage streams
+         In order to figure out stream change such as
+         track-id change or stream-id change, demux will store
+         stream-id per QtDemuxStream structure.
+         https://bugzilla.gnome.org/show_bug.cgi?id=684790
+
+2018-05-08 19:39:02 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         qtdemux: Use GList to manage QtDemuxStream
+         * Move to GList from static array
+         * Logging track-id instead of array index. It's more meaningful.
+         https://bugzilla.gnome.org/show_bug.cgi?id=684790
+
+2018-05-08 18:44:15 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Adjust the number of args of some functions
+         To be used with g_list_free_full in the next patch
+         https://bugzilla.gnome.org/show_bug.cgi?id=684790
+
+2018-05-08 18:22:58 +0900  Seungha Yang <seungha.yang@navercorp.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Add parentheses in macro
+         https://bugzilla.gnome.org/show_bug.cgi?id=684790
+
+2018-03-19 23:36:13 +0100  Marinus Schraal <mschraal@gnome.org>
+
+       * gst/isomp4/qtdemux.c:
+         isomp4: Use full date time if available
+         The ©day tag contains a full date time, use it for the DATE_TIME tag
+         instead of just the DATE tag. This overrules the unreliable qt creation
+         time.
+         https://bugzilla.gnome.org/show_bug.cgi?id=731029
+
+2018-03-15 22:59:39 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix doc comment markers
+
+2016-02-02 18:58:24 +0200  Kyrylo Polezhaiev <kirushyk@gmail.com>
+
+       * gst/icydemux/gsticydemux.c:
+         icydemux: avoid timestamp field initialisation for tag event
+         This field is not used and will be removed in 2.0 API.
+         https://bugzilla.gnome.org/show_bug.cgi?id=761462
+
+2014-10-05 15:51:18 +0200  Matej Knopp <matej.knopp@gmail.com>
+
+       * gst/audioparsers/gstdcaparse.c:
+         dcaparse: do not accept header with invalid channel count
+         https://bugzilla.gnome.org/show_bug.cgi?id=737928
+
+2018-05-05 19:27:24 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * meson.build:
+       * meson_options.txt:
+       * sys/v4l2/meson.build:
+         meson: Update option names to omit disable_ and with- prefixes
+         Also yield common options to the outer project (gst-build in our case)
+         so that they don't have to be set manually.
+
+2012-04-12 09:53:24 +0200  Anthony Violo <anthony.violo@ubicast.eu>
+
+       * gst/replaygain/gstrgvolume.c:
+         BugFix : Change peak value to normalize audio file with fallback gain
+         https://bugzilla.gnome.org/show_bug.cgi?id=673970
+
+2018-05-05 16:32:59 +0200  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpvrawpay.c:
+         rtpvrawpay: don't use buffer lists if everything fits into one buffer
+         People might use very large mtu sizes where every payload
+         fits into a single output packet.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795758
+
+2018-04-04 15:50:55 +0200  Kirill Marinushkin <kmarinushkin@de.adit-jv.com>
+
+       * configure.ac:
+         configure: Fix hard-coded enabled v4l2 probe on Linux/ARM
+         Currently, enable_v4l2_probe is hard-coded to "yes" on linux, platforms
+         arm and aarch64. This even overrides the --disable-v4l2-probe argument.
+         As a result, it is impossible to disable v4l2_probe. It becomes a problem
+         for use-cases, when startup time is critical, because the v4l2_probe
+         feature increases the initialization time.
+         This commit makes the v4l2_probe feature configurable.
+         On linux, platforms arm and aarch64, the default value is still "yes".
+         But now it can be disabled by the --disable-v4l2-probe argument.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795200
+
+2018-04-23 11:26:12 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Don't wake up the muxer unless there is data
+         https://bugzilla.gnome.org/show_bug.cgi?id=795332
+
+2018-04-23 11:19:18 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Save the current position in the output segment
+         https://bugzilla.gnome.org/show_bug.cgi?id=795332
+
+2018-04-19 17:53:51 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/flv/gstflvmux.c:
+       * tests/check/elements/flvmux.c:
+         flvmux: Wait for caps from both srcs before writing header
+         Wait for caps on all pads to start writing data even when source is live.
+         Includes unit test by Havard Graff that simulates it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=794722
+
+2018-04-13 13:29:06 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: rely on gst_v4l2_dup() to set no_initial_format and keep_aspect
+         gst_v4l2_dup() will now take care of setting
+         v4l2capture->no_initial_format and keep_aspect instead of doing it
+         manually.
+         Fix a typo as keep_aspect was set twice on v4l2output but never on
+         v4l2capture.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795028
+
+2018-04-24 14:06:10 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * ext/cairo/meson.build:
+       * ext/dv/meson.build:
+       * ext/flac/meson.build:
+       * ext/gdk_pixbuf/meson.build:
+       * ext/gtk/meson.build:
+       * ext/jack/meson.build:
+       * ext/jpeg/meson.build:
+       * ext/lame/meson.build:
+       * ext/libpng/meson.build:
+       * ext/mpg123/meson.build:
+       * ext/pulse/meson.build:
+       * ext/shout2/meson.build:
+       * ext/soup/meson.build:
+       * ext/speex/meson.build:
+       * ext/taglib/meson.build:
+       * ext/twolame/meson.build:
+       * ext/vpx/meson.build:
+       * ext/wavpack/meson.build:
+       * gst/alpha/meson.build:
+       * gst/apetag/meson.build:
+       * gst/audiofx/meson.build:
+       * gst/audioparsers/meson.build:
+       * gst/auparse/meson.build:
+       * gst/autodetect/meson.build:
+       * gst/avi/meson.build:
+       * gst/cutter/meson.build:
+       * gst/debugutils/meson.build:
+       * gst/deinterlace/meson.build:
+       * gst/dtmf/meson.build:
+       * gst/effectv/meson.build:
+       * gst/equalizer/meson.build:
+       * gst/flv/meson.build:
+       * gst/flx/meson.build:
+       * gst/goom/meson.build:
+       * gst/goom2k1/meson.build:
+       * gst/icydemux/meson.build:
+       * gst/id3demux/meson.build:
+       * gst/imagefreeze/meson.build:
+       * gst/interleave/meson.build:
+       * gst/isomp4/meson.build:
+       * gst/law/meson.build:
+       * gst/level/meson.build:
+       * gst/matroska/meson.build:
+       * gst/monoscope/meson.build:
+       * gst/multifile/meson.build:
+       * gst/multipart/meson.build:
+       * gst/replaygain/meson.build:
+       * gst/rtp/meson.build:
+       * gst/rtpmanager/meson.build:
+       * gst/rtsp/meson.build:
+       * gst/shapewipe/meson.build:
+       * gst/smpte/meson.build:
+       * gst/spectrum/meson.build:
+       * gst/udp/meson.build:
+       * gst/videobox/meson.build:
+       * gst/videocrop/meson.build:
+       * gst/videofilter/meson.build:
+       * gst/videomixer/meson.build:
+       * gst/wavenc/meson.build:
+       * gst/wavparse/meson.build:
+       * gst/y4m/meson.build:
+       * meson.build:
+       * sys/directsound/meson.build:
+       * sys/v4l2/meson.build:
+       * sys/ximage/meson.build:
+         Meson: Generate pc file for all plugins in good
+         https://bugzilla.gnome.org/show_bug.cgi?id=794568
+
+2018-04-25 10:58:41 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: use -Wl,-Bsymbolic-functions where supported
+         Just like the autotools build.
+
+2018-04-25 10:37:40 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Read caption from input buffer
+         And not from unallocated output buffer GstMapInfo
+         CID #1435131
+
+2018-02-07 11:00:18 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+       * gst/isomp4/gstqtmuxmap.c:
+       * gst/isomp4/gstqtmuxmap.h:
+         isomp4: qtmux: Add Closed Caption support
+         Supports CEA 608 and CEA 708 CC streams
+         Also supports usage in "Robust Prefill" mode if the incoming caption
+         stream is constant (i.e. there is one incoming CC buffer for each
+         video frame).
+         https://bugzilla.gnome.org/show_bug.cgi?id=606643
+
+2018-02-06 15:38:00 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+         isomp4: Make 'gmhd' atom usage more generic
+         Only the 'gmin' atom is required. Any other entry within it are
+         optional.
+         https://bugzilla.gnome.org/show_bug.cgi?id=606643
+
+2018-04-22 10:40:19 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * ext/jpeg/gstjpegenc.c:
+         jpegenc: Accept sof-marker=4
+         sof-marker is 4 when input is in the RGB colorspace.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795463
+
+2018-04-02 16:06:35 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecdec.h:
+       * tests/check/elements/rtpulpfec.c:
+         ulpfecdec: output perfect seqnums
+         ULP FEC, as defined in RFC 5109, has the protected and protection
+         packets sharing the same ssrc, and a different payload type, and
+         implies rewriting the seqnums of the protected stream when encoding
+         the protection packets. This has the unfortunate drawback of not
+         being able to tell whether a lost packet was a protection packet.
+         rtpbasedepayload relies on gaps in the seqnums to set the DISCONT
+         flag on buffers it outputs. Before that commit, this created two
+         problems:
+         * The protection packets don't make it as far as the depayloader,
+         which means it will mark buffers as DISCONT every time the previous
+         packets were protected
+         * While we could work around the previous issue by looking at
+         the protection packets ignored and dropped in rtpptdemux, we
+         would still mark buffers as DISCONT when a FEC packet was lost,
+         as we cannot know that it was indeed a FEC packet, even though
+         this should have no impact on the decoding of the stream
+         With this commit, we consider that when using ULPFEC, gaps in
+         the seqnums are not a reliable indicator of whether buffers should
+         be marked as DISCONT or not, and thus rewrite the seqnums on
+         the decoding side as well to form a perfect sequence, this
+         obviously doesn't prevent the jitterbuffer from doing its job
+         as the ulpfec decoder is downstream from it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=794909
+
+2018-04-17 17:57:16 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * tests/examples/rtsp/test-onvif.c:
+         Revert "rtspsrc: Fix up sendonly/recvonly attribute handling"
+         This reverts commit af273b4de9eb292c0b6af63665e10ca015895902.
+         While RFC 3264 (SDP) says that sendonly/recvonly are from the point of view of
+         the requester, the actual RTSP RFCs (RFC 2326 / 7826) disagree and say
+         the opposite, just like the ONVIF standard.
+         Let's follow those RFCs as we're doing RTSP here, and add a property at
+         a later time if needed to switch to the SDP RFC behaviour.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793964
+
+2018-04-16 21:27:47 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/audioparsers/gstflacparse.c:
+         flacparse: Drain the parser when a CAPS event is received
+         After a CAPS event, in theory a new stream can start and it might start
+         with the FLAC headers again. We can't detect FLAC headers in the middle
+         of the stream, so we drain the parser to be able to detect either FLAC
+         headers after the CAPS event or the continuation of the previous stream.
+         This fixes for example
+         gst-launch-1.0 audiotestsrc num-buffers=200 ! flacenc ! c. \
+         audiotestsrc num-buffers=200 freq=880 ! flacenc ! c. \
+         concat name=c ! rtpgstpay ! udpsink host=127.0.0.1 port=5000
+         gst-launch-1.0 udpsrc multicast-group=127.0.0.1 port=5000 \
+         caps=application/x-rtp,media=application,clock-rate=90000,encoding-name=X-GST ! \
+         rtpgstdepay ! flacparse ! flacdec ! audioconvert ! pulsesin
+
+2018-04-16 10:52:56 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * README:
+       * common:
+         Automatic update of common submodule
+         From 3fa2c9e to ed78bee
+
+2018-04-05 16:05:12 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/meson.build:
+       * ext/qt/gstqtglutility.cc:
+       * ext/qt/meson.build:
+       * tests/examples/meson.build:
+       * tests/examples/qt/meson.build:
+       * tests/examples/qt/qmlsink/CMakeLists.txt:
+       * tests/examples/qt/qmlsink/meson.build:
+       * tests/examples/qt/qmlsink/play.pro:
+       * tests/examples/qt/qmlsink/qmlsink.qrc:
+       * tests/examples/qt/qmlsrc/grabqml.pro:
+       * tests/examples/qt/qmlsrc/meson.build:
+       * tests/examples/qt/qmlsrc/qmlsrc.qrc:
+         meson: add build files for the qml plugin
+         Tested on linux with X11/wayland and semi-tested on Windows.
+         Windows crashes on item destruction however this is better than nothing.
+         Fix up some win32 build issues on the way with mismatched {} and
+         G_STMT_{START,END}
+
+2018-04-13 23:02:26 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/elements/flvmux.c:
+         flvmux test: refactor looped test.
+         Looping the test 500 times to only execute the test once every
+         33 times means we inited and deinited gstreamer 467 times
+         for no reason at all, which was annoying when running the test
+         with valgrind.
+
+2018-04-13 23:01:20 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: unref return of aggregator_pad_peek_buffer
+         We ended up leaking every single buffer going through the
+         muxer, which is far from ideal
+
+2018-04-13 22:49:43 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Fix leak
+         gst_qt_mux_can_renegotiate () gets called everywhere following
+         that pattern:
+         return gst_qt_mux_can_renegotiate (ref(self));
+         This means the reference must be released both in the success
+         and failure cases, it was only done in the success case.
+
+2018-04-13 22:44:14 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: aggregate should not push EOS itself
+         Instead it is expected to return GST_FLOW_EOS, and let the
+         base class handle that.
+
+2018-04-13 21:19:02 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/gst-plugins-good.supp:
+         valgrind supps: ignore gnutls leaking a certificate
+         After investigating, we do dispose of the TLS connections
+         appropriately in the souphttpsrc test, which in turn
+         calls gnutls_deinit, but certificates get leaked anyway.
+
+2018-04-13 20:35:24 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/elements/souphttpsrc.c:
+         souphttpsrc test: free g_get_current_dir return
+
+2018-04-13 20:31:07 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/gst-plugins-good.supp:
+         valgrind supps: bring getaddrinfo suppression from -base
+
+2018-04-13 20:28:35 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/gst-plugins-good.supp:
+         valgrind supps: ignore more twolame conditional moves
+
+2018-04-13 17:37:47 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/elements/rtpulpfec.c:
+         rtpulpfec tests: Fix leaks
+
+2018-02-16 23:40:50 +0100  Alicia Boya García <aboya@igalia.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Add comment about Opus clipping
+         https://bugzilla.gnome.org/show_bug.cgi?id=793523
+
+2018-04-11 20:28:00 +0000  Whoopie <whoopie79@gmx.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Disable DMABuf for emulated formats
+         libv4l2 does not prevent exporting DMABuf even when emulated formats are
+         in use. As a side effect, userspace ends up with buffers of the original
+         formats which will cause issues.
+         https://bugzilla.gnome.org/show_bug.cgi?id=795097
+
+2018-04-08 20:42:16 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Only use BT2020_12 for BT2020 v4l2 colorspace
+         BT2020_12 is not represented in V4L2, so drivers providing full colority
+         for BT2020 will set V4L2_XFER_FUNC_709 transfer function. To fix the
+         issue, we bump this to BT2020_12 if the resoltion is 4K, but we should
+         only do that if the colorspace is BT2020 to start with, otherwise it's
+         not possible to use normal BT709 for 4K 8bit formats.
+
+2018-04-08 13:43:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Always set the colorimetry in S_FMT
+         So far we were only setting colorimetry for OUTPUT devices (v4l2sink or
+         m2m sink pad). This prevented selecting through caps negotiation the
+         colorimetry for CAPTURE devices (v4l2src or m2m src pad). This is rarely
+         selectable, but trying is harmless.
+
+2018-04-11 21:41:58 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/monoscope/gstmonoscope.c:
+         monoscope: Only fixate pixel-aspect-ratio if the field exists
+
+2018-04-11 17:54:38 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Don't send fragment-opened-closed message if the reference ctx is NULL
+         It can happen during teardown that the reference context becomes NULL.
+         In that case, trying to send the fragment-opened-closed message would
+         lead to a crash.
+
+2018-04-11 09:12:09 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Run gst_iterator_foreach() as long as it returns GST_ITERATOR_RESYNC
+         CID 1434160
+
+2018-04-11 08:51:32 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix comparision for extra caption atom
+         We want to make sure we have *enough* data for the potential 2nd
+         caption atom.
+         CID #1434161
+
+2018-04-11 08:42:54 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Handle bogus caption samples
+         Corrupted files could potentially have multiple cdat/cdt2 atoms in
+         a sample entry, which is unclear how to handle.
+         Ignore repeated ones.
+         CID #1434162
+         CID #1434159
+
+2018-04-10 21:15:48 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/monoscope/gstmonoscope.c:
+         monoscope: Fixate pixel-aspect-ratio too and make sure the final caps are completely fixated
+         Otherwise e.g. this fails with assertions:
+         gst-launch-1.0 audiotestsrc ! audioconvert ! monoscope ! videoconvert ! \
+         videoscale ! video/x-raw,width=800,height=600 ! ximagesink
+
+2018-03-08 10:10:01 +0100  Edward Hervey <bilboed@bilboed.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Add comments and doc about prefill mode
+
+2018-02-06 14:36:50 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Refactor pad re-negotiation code
+         It was similar for all pads
+         https://bugzilla.gnome.org/show_bug.cgi?id=606643
+
+2018-01-31 15:10:03 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux_types.c:
+         qtdemux: Detect and expose CEA 608/708 Closed Caption tracks
+         https://bugzilla.gnome.org/show_bug.cgi?id=606643
+
+2018-04-04 01:48:44 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtprtxsend.c:
+         rtxsend: fix wrong memory layout assumption
+         The code responsible for creating retransmitted buffers
+         assumed the stored buffer had been created with
+         rtp_buffer_new_allocate when copying the extension data,
+         which isn't necessarily the case, for example when
+         the rtp buffers come from a udpsrc.
+         https://bugzilla.gnome.org/show_bug.cgi?id=794958
+
+2018-04-02 23:04:06 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+         rtpbin: new signal "get-storage"
+         Similar to the get-session and get-internal-session signals,
+         we expose a get-storage signal in addition to the
+         get-internal-storage signal to give access to the actual
+         element for applications that need to set properties on the
+         element, in particular "size-time"
+         https://bugzilla.gnome.org/show_bug.cgi?id=794910
+
+2018-03-29 19:19:21 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Add new reset-muxer property
+         With this the muxer is not set to NULL after each segment but instead
+         only flush events are sent to it to reset the EOS state.
+         As a result, the muxer will keep stream state and e.g. mpegtsmux will
+         keep the packet continuity counter continuous between segments as needed
+         by hlssink2.
+         https://bugzilla.gnome.org/show_bug.cgi?id=794816
+
+2018-04-02 12:48:50 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/icles/Makefile.am:
+       * tests/icles/meson.build:
+       * tests/icles/v4l2src-test.c:
+         tests: remove broken and now pointless v4l2src-test
+         This tests APIs that don't exist any longer and also doesn't
+         work at all, and was last touched in a meaningful way in 2006.
+
+2018-03-21 00:19:37 +0900  Seungha Yang <pudding8757@gmail.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+         v4l2: Fix unknown type name ‘off_t’ error
+         Fix following build error
+         gstv4l2object.h:197:17: error: unknown type name ‘off_t’
+         gint fd,  off_t offset);
+         ^
+         https://bugzilla.gnome.org/show_bug.cgi?id=794533
+
+2017-05-25 03:44:39 +0200  Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: reject segment seeks
+         https://bugzilla.gnome.org/show_bug.cgi?id=784681
+
+2018-02-13 11:50:05 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Handle variant of vorbis in mp4
+         Comes from gpac apparently. The codec_data uses the same packing
+         mechanism as matroska.
+         https://bugzilla.gnome.org/show_bug.cgi?id=738244
+
+2018-03-22 15:20:47 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Check sample count is valid in PIFF parsing
+         The value stored in cenc_aux_sample_count wasn't in sync with the
+         parsing code that followed which checks whether all entries are
+         valid and present.
+         Only write the actual sample count when we know for sure.
+         CID #1427087
+
+2018-03-04 15:14:08 +0100  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * configure.ac:
+       * ext/qt/gstqtglutility.cc:
+         qt: Get EGL native display from QPA if platform header is available
+         https://bugzilla.gnome.org/show_bug.cgi?id=792378
+
+2018-03-06 02:14:34 +0100  Petr Kulhavy <brain@jikos.cz>
+
+       * gst/udp/gstudpsrc.c:
+       * gst/udp/gstudpsrc.h:
+         udpsrc: switch to using a buffer pool
+         This exposes a new property, mtu, which is used to determine the
+         initial size of buffers from the buffer pool. If received data
+         exceeds this, the element gracefully handles that in a manner similar
+         to what we had previously: a large memory gets filled and reallocated
+         at the next call to "fill".
+         The default size is set to 1500, which should cover most use cases.
+         With contributions from Mathieu Duponchelle <mathieu@centricular.com>
+         https://bugzilla.gnome.org/show_bug.cgi?id=772841
+
+2016-11-15 09:39:31 +0100  Petr Kulhavy <brain@jikos.cz>
+
+       * gst/udp/gstudpsrc.h:
+         udpsrc: optimize GstUdpSrc object for cache performance
+         Optimize GstUdpSrc for cache performance.
+         Move the hot properties, which are used by the read function, to the top:
+         @used_socket, @addr, @cancellable, @skip_first_bytes, @timeout,
+         @retrieve_sender_address.
+         Remove the unused property @ttl.
+         Where needed reorder so that holes are avoided (the 64-bit @timeout)
+         https://bugzilla.gnome.org/show_bug.cgi?id=772841
+
+2018-03-05 12:48:15 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix seeking on streams with frame reordering
+         The samples table is sorted by DTS, not PTS. As such we can only get the
+         correct result when using a binary search on it, if we search for the
+         DTS.
+         Also if we only ever search for the frame, where the following frame is
+         the first one with a PTS after the search position, we will generally
+         stop searching too early if frames are reordered.
+         In forwards playback this is not really a problem (after the decoder
+         reordered the frames, clipping is happening), in reverse playback
+         it means that we can output one or more frames too few as we stop too
+         early and the decoder would never receive it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=782118
+
+2018-03-20 11:36:32 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpreddec.c:
+       * gst/rtp/gstrtpredenc.c:
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+       * gst/rtp/rtpstoragestream.c:
+       * tests/check/elements/rtpred.c:
+       * tests/check/elements/rtpulpfec.c:
+         rtp: Fix compilation with non-C99 compilers
+         By moving variable declarations out of loop headers.
+
+2018-03-20 09:24:19 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * meson.build:
+         Back to development
+
+=== release 1.14.0 ===
+
+2018-03-19 20:18:22 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.14.0
+
+2018-03-19 20:18:22 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         Update docs
+
+2018-03-19 18:39:08 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpulpfecdec.c:
+         rtpulpfecdec: fix build with older gcc
+         As on Ubuntu Trusty.
+         https://bugzilla.gnome.org/show_bug.cgi?id=794493
+
+2018-03-19 10:58:28 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Allow splitting at exactly the time/bytes threshold
+         76e458a119926424e9dd5acf3210a592a314d713 changed the conditions from
+         "queued > threshold" to "queued >= threshold", which broke hlssink2 and
+         resulting in too small fragments being created although keyframes would
+         be at *exactly* the configured threshold.
+         https://bugzilla.gnome.org/show_bug.cgi?id=794440
+
+2018-03-17 20:29:35 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/rtpulpfeccommon.h:
+         rtpulpfec: fix unconditional use of __attribute__ ((packed))
+         Fix compilation with MSVC. We still assume that attribute
+         is supported by all other relevant compilers, which seems
+         to be the case since we haven't had any complaints about
+         similar code in rtpsbcpay.
+
+2018-03-17 13:04:47 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+       * gst/rtp/rtpulpfeccommon.c:
+         rtpulpfec: don't use non-portable notation for 64-bit int constants
+         Use GLib macro instead, even if it's a bit unwieldy.
+
+2018-03-17 12:55:57 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpulpfecdec.c:
+         rtpulpfecdec: don't use __builtin_ctzll unconditionally
+         Fixes build with MSVC, and possibly other compilers too.
+
+=== release 1.13.91 ===
+
+2018-03-13 19:16:42 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.13.91
+
+2018-03-13 19:16:42 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         Update docs
+
+2018-03-12 13:21:08 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         docs: rtpbin: add some Since markers for new properties
+
+2018-03-10 18:57:38 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * sys/directsound/meson.build:
+         meson: Add deviceprovider changes to directsoundsink
+         These were missed when they were added to Makefile.am
+
+2018-03-08 10:12:16 +0100  Michael Tretter <m.tretter@pengutronix.de>
+
+       * configure.ac:
+         configure.ac: enable largefile support if possible
+         https://bugzilla.gnome.org/show_bug.cgi?id=793103
+
+2018-03-07 14:16:02 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+         v4l2: Fix support for 32bit mmap
+         https://bugzilla.gnome.org/show_bug.cgi?id=793103
+
+=== release 1.13.90 ===
+
+2018-03-03 22:19:36 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.13.90
+
+2018-03-03 22:19:36 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         Update docs
+
+2018-03-01 18:24:33 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/flv/gstflvmux.c:
+       * tests/check/elements/flvmux.c:
+         flvmux: Duration & unit tests
+         The muxed buffers will not carry the duration of the
+         incoming buffers.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793457
+
+2018-03-01 17:15:02 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/flv/gstflvmux.c:
+         flvmux: Set PTS based on running time
+         https://bugzilla.gnome.org/show_bug.cgi?id=793457
+
+2018-03-01 18:13:20 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Ignore sendonly/recvonly attributes unless a backchannel is configured
+         This works around a bug in various ONVIF cameras that implement the
+         attributes the wrong way around. They still won't work with a
+         backchannel but at least normal playback will work for the time being.
+         It restores pre-1.14 behaviour where we would fail to preroll on any SDP
+         that lists a recvonly stream. For 1.16 a better solution should be
+         found.
+         The problem here is that the ONVIF spec has the meaning of the two
+         attributes the wrong way around in the examples, compared to RFC4566.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793715
+
+2018-03-01 18:16:24 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * meson.build:
+         meson: enable more warnings
+         https://bugzilla.gnome.org/show_bug.cgi?id=793961
+
+2018-03-01 00:34:20 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/flv/gstflvmux.c:
+         Port to latest GstAggregator segment API
+         The aggregator segment is now exposed on the src pad
+         https://bugzilla.gnome.org/show_bug.cgi?id=793945
+
+2018-03-01 15:34:13 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * sys/directsound/gstdirectsoundplugin.c:
+         directsoundsink: Downgrade rank to match directsoundsrc in -bad
+         As stated in commit c2956036b8da4b8f22a63a4f5a254be03e870aa6 in -bad,
+         the wasapi elements are now better than directsound, and should be
+         preferred if they are available.
+         For a later release, once the elements have more testing, we can
+         consider moving them to -good.
+
+2018-02-28 19:21:53 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Only mark new clusters as keyframe if they start on a keyframe or we're muxing only audio
+         Based on a patch by Nicola Murino <nicola.murino@gmail.com>
+         https://bugzilla.gnome.org/show_bug.cgi?id=792775
+
+2018-02-28 19:19:10 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: Clip maximum cluster duration to the maximum possible value
+         Only up to timescale * G_MAXINT16 is possible as cluster duration, which
+         is already higher than our default value. Using higher values would
+         cause overflows and broken files.
+         Based on the investigation by Nicola Murino <nicola.murino@gmail.com>
+         https://bugzilla.gnome.org/show_bug.cgi?id=792775
+
+2018-02-26 13:03:59 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroska-mux: Refuse caps changes after starting to write headers
+         Matroska does not support changing the stream type and stream properties
+         after the headers were started to be written, and for example H264
+         codec_data changes can't be supported.
+         https://bugzilla.gnome.org/show_bug.cgi?id=782949
+
+2018-02-27 16:33:53 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/elements/rtpred.c:
+         tests: fix redenc tests
+         The default of the allow-no-red-blocks property was changed in a
+         previous commit, thus breaking the test assumptions
+
+2018-02-27 13:13:49 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/rtpulpfeccommon.c:
+         rtp: fix another debug log printf format warning on 32-bit systems
+         rtpulpfeccommon.c:432:27: error: format ‘%lx’ expects argument of type
+         ‘long unsigned int’, but argument 10 has type ‘guint64 {aka long long unsigned int}’
+         https://bugzilla.gnome.org/show_bug.cgi?id=793732
+
+2018-02-26 17:02:52 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpptdemux.c:
+         rtpptdemux: provide example usage for ignored-payload-types
+
+2018-02-26 16:53:08 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpptdemux.c:
+         rtpbin, rtpptdemux: Add missing Since markers
+
+2018-02-26 15:57:28 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/gstrtpreddec.c:
+       * gst/rtp/gstrtpredenc.c:
+       * gst/rtp/gstrtpstorage.c:
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+       * gst/rtp/gstrtpulpfecenc.h:
+         FEC elements: document, remove irrelevant properties
+         The ulpfecenc "mux-seq" and "ssrc" properties were initially added
+         because the element did more than implement ULPFEC. As it was
+         decided that FLEXFEC would be implemented in a separate element,
+         both properties are now unneeded and confusing.
+         Change the default for the ulpfecenc multi-packet property,
+         as it is expected that most users of this element will be protecting video
+         streams.
+         Change the default property for the rtpredenc allow-no-red-blocks
+         property, as it should also be its default mode of operation.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793843
+
+2018-02-24 20:05:05 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtp/gstrtpgstdepay.c:
+         rtpgstdepay: do not warn when caps were not yet received
+         It is expected that when connecting to a stream that has
+         already started, the caps will only arrive at the interval
+         specified on rtpgstpay, we shouldn't be warning as this is
+         a normal mode of operation.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793798
+
+2018-02-22 21:53:40 +0100  Arnaud Bonatti <arnaud.bonatti@gmail.com>
+
+       * gst/rtp/gstrtpulpfecdec.c:
+         rtpulpfec: fix debug log printf format warning on 32-bit platforms
+         https://bugzilla.gnome.org/show_bug.cgi?id=793732
+
+2018-02-22 14:58:12 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/gst-plugins-good-plugins.signals:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * gst/rtp/gstrtpreddec.c:
+       * gst/rtp/gstrtpredenc.c:
+       * gst/rtp/gstrtpstorage.c:
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+         docs: hook up new RTP FEC elements
+         https://bugzilla.gnome.org/show_bug.cgi?id=792696
+
+2018-02-22 14:57:58 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.signals:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         docs: update for git master
+
+2018-02-22 10:54:02 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * .gitignore:
+       * tests/check/elements/.gitignore:
+         .gitignore more test binaries
+
+2018-02-21 20:46:10 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/Makefile.am:
+         tests: also dist new fec test header file
+
+2018-02-21 20:44:26 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/Makefile.am:
+         rtp: dist new header files
+         Fixes make distcheck
+
+2018-02-21 18:52:44 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpreddec.c:
+       * gst/rtp/gstrtpstorage.c:
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecenc.c:
+       * gst/rtp/rtpulpfeccommon.c:
+       * gst/rtp/rtpulpfeccommon.h:
+         rtp: fec: fix build with gstreamer debug log system disabled
+
+2018-02-21 19:59:04 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpptdemux.c:
+         rtpptdemux: do no assume sink caps are non NULL
+
+2018-02-21 18:51:17 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * tests/check/Makefile.am:
+         check: Fix ulpfec test build
+         The test name was updated but not the build definition
+
+2017-11-28 06:02:05 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+         rtpbin: Expose FEC support signals
+         Also slightly refactor complete_session_src
+         https://bugzilla.gnome.org/show_bug.cgi?id=792696
+
+2017-11-17 03:52:03 +0100  Mikhail Fludkov <misha@pexip.com>
+
+       * gst/rtp/Makefile.am:
+       * gst/rtp/gstrtp.c:
+       * gst/rtp/gstrtpreddec.c:
+       * gst/rtp/gstrtpreddec.h:
+       * gst/rtp/gstrtpredenc.c:
+       * gst/rtp/gstrtpredenc.h:
+       * gst/rtp/gstrtpstorage.c:
+       * gst/rtp/gstrtpstorage.h:
+       * gst/rtp/gstrtpulpfecdec.c:
+       * gst/rtp/gstrtpulpfecdec.h:
+       * gst/rtp/gstrtpulpfecenc.c:
+       * gst/rtp/gstrtpulpfecenc.h:
+       * gst/rtp/meson.build:
+       * gst/rtp/rtpredcommon.c:
+       * gst/rtp/rtpredcommon.h:
+       * gst/rtp/rtpstorage.c:
+       * gst/rtp/rtpstorage.h:
+       * gst/rtp/rtpstoragestream.c:
+       * gst/rtp/rtpstoragestream.h:
+       * gst/rtp/rtpulpfeccommon.c:
+       * gst/rtp/rtpulpfeccommon.h:
+       * tests/check/Makefile.am:
+       * tests/check/elements/packets.h:
+       * tests/check/elements/rtpred.c:
+       * tests/check/elements/rtpstorage.c:
+       * tests/check/elements/rtpulpfec.c:
+       * tests/check/meson.build:
+         rtp: Implement ULPFEC (RFC 5109)
+         We expose a set of new elements:
+         * ULPFEC encoder / decoder
+         * A storage element, which should be placed before jitterbuffers,
+         and is used to store packets in order to attempt reconstruction
+         after the jitterbuffer has sent PacketLost events
+         * RED encoder / decoder (RFC 2198), these are necessary to
+         use FEC in webrtc, as browsers will propose and expect ulpfec
+         packets to be wrapped in red packets
+         With contributions from:
+         Mathieu Duponchelle <mathieu@centricular.com>
+         Sebastian Dröge <sebastian@centricular.com>
+         https://bugzilla.gnome.org/show_bug.cgi?id=792696
+
+2017-11-28 01:11:54 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpptdemux.c:
+       * gst/rtpmanager/gstrtpptdemux.h:
+         rtpptdemux: Add ignored-payload-types property
+         Packets with these payload types will be dropped. A use case
+         for this is FEC, where we want FEC packets to go through the
+         jitterbuffer, but not be output by rtpbin.
+         https://bugzilla.gnome.org/show_bug.cgi?id=792696
+
+2017-11-20 18:08:38 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpptdemux.c:
+         rtpptdemux: Add ssrc to output caps
+         It may be useful downstream
+         https://bugzilla.gnome.org/show_bug.cgi?id=792696
+
+2018-02-21 11:12:10 +0100  Arnaud Bonatti <arnaud.bonatti@gmail.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtk: fix compiler warning with recent glib
+         https://bugzilla.gnome.org/show_bug.cgi?id=793688
+
+2018-02-21 11:35:33 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qt: don't use libEGL functions when we don't link to libEGL
+         Use the provided wrapper available from libgstgl.
+         https://bugzilla.gnome.org/show_bug.cgi?id=793547
+
+2018-02-18 21:38:13 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/monoscope/gstmonoscope.c:
+       * gst/monoscope/gstmonoscope.h:
+         monoscope: Forward the SEGMENT event from the chain function
+         Otherwise we'll break the event order and forward the SEGMENT event
+         before sending a CAPS event.
+
+2018-02-16 12:25:29 +0000  James Stevenson <james@stev.org>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix missing read property of backchannel
+         Add missing read property code for backchannel
+         https://bugzilla.gnome.org/show_bug.cgi?id=793507
+
+2018-02-16 09:42:59 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/rtsp/meson.build:
+         examples: rtsp: fix meson build take 2
+
+2018-02-16 11:30:01 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/examples/rtsp/meson.build:
+         rtsp: Fix meson.build of the example
+
+2018-01-26 16:33:21 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Implement ONVIF backchannel support via TCP
+
+2017-10-13 18:05:54 +0300  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * configure.ac:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+       * tests/examples/Makefile.am:
+       * tests/examples/meson.build:
+       * tests/examples/rtsp/Makefile.am:
+       * tests/examples/rtsp/meson.build:
+       * tests/examples/rtsp/test-onvif.c:
+         rtspsrc: Implement ONVIF backchannel support
+         Set backchannel=onvif to enable, and use the 'push-backchannel-sample'
+         action signal with the correct stream id.
+
+2018-02-16 01:49:57 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+       * gst/multifile/gstsplitmuxsrc.h:
+         splitmuxsrc: Improve not-linked handling.
+         Don't report not-linked unless all pads have
+         returned not-linked.
+
+2018-02-15 19:44:19 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * configure.ac:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * meson.build:
+         Back to development
+
+=== release 1.13.1 ===
+
+2018-02-15 17:06:10 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * NEWS:
+       * configure.ac:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.13.1
+
+2018-02-15 17:05:23 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-gtk.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         docs: update plugin docs
+
+2018-02-15 13:32:20 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * po/bg.po:
+       * po/cs.po:
+       * po/da.po:
+       * po/de.po:
+       * po/el.po:
+       * po/fr.po:
+       * po/hr.po:
+       * po/hu.po:
+       * po/nb.po:
+       * po/nl.po:
+       * po/pl.po:
+       * po/ru.po:
+       * po/sr.po:
+       * po/sv.po:
+       * po/tr.po:
+       * po/uk.po:
+       * po/vi.po:
+       * po/zh_CN.po:
+         po: update translations
+
+2018-02-14 16:38:07 +0100  Patrick Radizi <patrickr@axis.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: allow timestamps to move backwards
+         The original solution for #784002 incorrectly assumed that timestamps
+         may not move backwards and changed timestamps that did so.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784002
+
+2018-02-15 00:58:38 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/lame/gstlamemp3enc.c:
+       * gst/flv/gstindex.c:
+       * sys/v4l2/gstv4l2src.c:
+         docs: remove pointless Since: 0.10.x markers
+
+2017-09-27 16:01:35 +0200  Alban Bedel <alban.bedel@avionic-design.de>
+
+       * gst/rtp/gstrtpvorbisdepay.c:
+         rtpvorbisdepay: fix unbounded memory usage
+         All received configurations are parsed and added to a list, this lead
+         to an unbounded memory usage. As the configuration is resent every
+         second this quickly lead to a large memory usage.
+         Add a check to only add the config if it is not already available in
+         the list. This fix only handle the typical case of a well behaved
+         stream, a malicious server could still send many useless
+         configurations to raise the client memory usage.
+
+2018-02-12 18:41:41 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/inspect/plugin-qmlgl.xml:
+         docs: add qt plugin
+         https://bugzilla.gnome.org/show_bug.cgi?id=754094
+
+2018-02-12 18:34:16 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * configure.ac:
+       * ext/Makefile.am:
+       * ext/meson.build:
+       * tests/examples/meson.build:
+         qt: hook up to build
+         https://bugzilla.gnome.org/show_bug.cgi?id=754094
+
+2018-02-12 18:13:17 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+         Move qt plugin from -bad
+         https://bugzilla.gnome.org/show_bug.cgi?id=754094
+
+2018-02-12 15:44:35 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * configure.ac:
+         configure: fix build with --disable-external
+
+2018-02-10 20:31:49 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/inspect/plugin-gtk.xml:
+         docs: add moved gtk plugin to docs
+
+2018-02-10 20:28:46 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/gst-plugins-good-plugins.interfaces:
+       * docs/plugins/gst-plugins-good-plugins.prerequisites:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+         docs: update for git master
+
+2018-02-12 11:02:12 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/gtk/meson.build:
+       * ext/meson.build:
+       * meson.build:
+       * tests/examples/meson.build:
+         gtk: hook up to meson build
+
+2018-02-10 13:20:43 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * configure.ac:
+       * ext/Makefile.am:
+       * ext/gtk/Makefile.am:
+       * tests/examples/Makefile.am:
+       * tests/examples/gtk/.gitignore:
+       * tests/examples/gtk/Makefile.am:
+         gtk: hook up to autotools build
+
+2018-02-10 12:49:36 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+         Move gtk plugin from -bad
+         https://bugzilla.gnome.org/show_bug.cgi?id=754094
+
+2018-02-09 11:26:56 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix comment typo in previous commit
+
+2018-02-09 11:20:38 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: More 'meta' atom parsing fixes
+         Turns out everybody is doing it their own way, so peek into the
+         meta atom itself to figure out which spec it is following
+
+2018-02-02 13:51:49 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Add support for muxing svmi atom for stereoscopic video information
+         https://bugzilla.gnome.org/show_bug.cgi?id=793120
+
+2018-02-09 08:59:56 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Minor cleanup
+         Just move variables to the blocks where they are used.
+         That function is massive, could do with some splitting up for
+         readability :(
+
+2018-02-09 08:54:05 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Cope with difference between QTFF and ISO BMFF specs
+         The 'meta' atom is defined differently in QTFF and BMFF, so try
+         to guess which spec the current stream applies to by looking
+         at the major file type.
+
+2018-02-09 08:35:52 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux_dump.c:
+         isomp4: Make 'hdlr' atom dump more flexible
+         The smallest possible is 24 (and not 25) bytes.
+         The last "name" field can according to QTFF specifications not be present
+         at all. The parser will handle this fine and so will the rest of
+         the qtdemux code.
+
+2018-02-09 08:35:25 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/audiofx/audiopanoramaorc-dist.c:
+       * gst/deinterlace/tvtime-dist.c:
+       * gst/videobox/gstvideoboxorc-dist.c:
+       * gst/videomixer/videomixerorc-dist.c:
+         Update ORC files
+
+2018-02-08 19:09:45 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: make version numbers ints and fix int/string comparison
+         WARNING: Trying to compare values of different types (str, int).
+         The result of this is undefined and will become a hard error
+         in a future Meson release.
+
+2017-10-01 18:21:26 +0200  Jérôme Laheurte <jerome@jeromelaheurte.net>
+
+       * sys/osxvideo/cocoawindow.m:
+       * sys/osxvideo/osxvideosink.m:
+         osxvideosink: fix build on macOS versions < 12.0
+         Use value instead of version macro when testing for mac OS version,
+         since the define for the newer version may not be defined when
+         compiling against older versions.
+         https://bugzilla.gnome.org/show_bug.cgi?id=788402
+
+2018-02-07 20:15:00 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qt: don't #include platform specific gstglcontext_*.h headers
+         They aren't public headers
+
+2018-02-04 11:47:05 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * configure.ac:
+       * tests/check/Makefile.am:
+         autotools: use -fno-strict-aliasing where supported
+         https://bugzilla.gnome.org/show_bug.cgi?id=769183
+
+2017-12-04 20:12:40 +0900  Justin Kim <justin.kim@collabora.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/multifile/gstsplitmuxsink.c:
+         qtmux: send stream warning when refusing video caps
+         If codec_data is changed, the stream is no longer valid.
+         Rather than keeping running when refusing new caps,
+         this patch send a warning  to the bus.
+         Also fix up splitmuxsink to ignore this warning while changing caps.
+         https://bugzilla.gnome.org/show_bug.cgi?id=790000
+
+2017-11-29 21:30:11 +0900  Justin Kim <justin.kim@collabora.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: update output caps regardless format
+         `codec_data` should be transfered if any information of
+         SPS/PPS is changed.
+         https://bugzilla.gnome.org/show_bug.cgi?id=790000
+
+2018-01-31 19:11:16 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux_dump.c:
+       * gst/isomp4/qtdemux_dump.h:
+       * gst/isomp4/qtdemux_types.c:
+         isomp4: Add gmhd/gmin debugging
+         * gmhd is a container, mark it as such so we can see/dump
+         what is contained within
+         * Add dumping for the Base Media Information atom (gmin)
+
+2015-09-23 10:01:32 +0200  Matthieu Crapet <mcrapet@gmail.com>
+
+       * ext/jpeg/gstjpegenc.c:
+       * ext/jpeg/gstjpegenc.h:
+         jpegenc: add snapshot property
+         Like pngenc, automatically send an EOS message.
+         Example of bin:
+         appsrc ! jpegenc snapshot=true ! filesink location=out.jpg
+         This is especially useful for limited/slow hardware.
+         Otherwise calling gst_video_convert_sample() is a better option
+         (internally uses videoconvert and videoscale).
+         https://bugzilla.gnome.org/show_bug.cgi?id=755453
+
+2018-01-31 15:02:50 +0000  Philippe Normand <philn@igalia.com>
+
+       * gst/interleave/interleave.c:
+         interleave: fix memory leak of GAP buffers
+         https://bugzilla.gnome.org/show_bug.cgi?id=793067
+
+2018-01-31 11:38:35 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux_dump.c:
+         qtdemux_dump: Demote verbose logging to TRACE level
+
+2018-01-31 11:22:23 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux_dump.c:
+         qtdemux: Re-enable full debug logging of stsz entries
+         No idea why it was disabled (was the case since 2007)
+
+2018-01-30 20:34:32 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/taglib/meson.build:
+       * meson.build:
+         meson: use -fno-strict-aliasing where supported
+         https://bugzilla.gnome.org/show_bug.cgi?id=769183
+
+2017-12-12 00:14:02 +0900  Seungha Yang <pudding8757@gmail.com>
+
+       * gst/isomp4/qtdemux.h:
+         qtdemux: Remove white space at end of line
+         https://bugzilla.gnome.org/show_bug.cgi?id=791483
+
+2017-12-12 00:11:24 +0900  Seungha Yang <pudding8757@gmail.com>
+
+       * gst/isomp4/Makefile.am:
+       * gst/isomp4/gstisoff.c:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+       * gst/isomp4/qtdemux_debug.h:
+       * gst/isomp4/qtdemux_dump.c:
+       * gst/isomp4/qtdemux_lang.c:
+       * gst/isomp4/qtdemux_types.c:
+         qtdemux: Apply qtdemux debug category to gstisoff
+         .. instead of the use of default debug category.
+         And, make new header to declare the debug category
+         https://bugzilla.gnome.org/show_bug.cgi?id=791483
+
+2018-01-25 00:46:57 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: properly set total duration on outgoing segment
+         We would accidentally pass through the duration value from the
+         demuxer from a single fragment, which causes problems when
+         feeding the stream from splitmuxsrc to rtsp-server. Streaming
+         would stop after one fragment due to that.
+         https://bugzilla.gnome.org/show_bug.cgi?id=792861
+
+2018-01-25 00:42:52 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: don't respond to duration query with CLOCK_TIME_NONE
+         total_duration is initialised to CLOCK_TIME_NONE, not 0, so check
+         for that as well in order not to return an invalid duration to
+         a duration query. Doesn't fix anything particular observed in
+         practice, just seemed inconsistent.
+
+2018-01-25 20:48:42 +0100  Alicia Boya García <aboya@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Add more prose to the comment of gst_qtdemux_find_sample()
+         https://bugzilla.gnome.org/show_bug.cgi?id=792910
+
+2011-02-09 12:48:00 +0000  Oleksij Rempel <linux@rempel-privat.de>
+
+       * ext/vpx/gstvpxdec.c:
+         vpx: add VP8_DEBUG_TXT_* flags for postprocessing
+         https://bugzilla.gnome.org/show_bug.cgi?id=641399
+
+2018-01-25 21:22:10 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * sys/directsound/gstdirectsoundsink.h:
+         directsoundsink: Add missing \ in multi-line #define
+
+2018-01-22 15:07:38 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * sys/directsound/Makefile.am:
+       * sys/directsound/gstdirectsounddevice.c:
+       * sys/directsound/gstdirectsounddevice.h:
+       * sys/directsound/gstdirectsoundplugin.c:
+       * sys/directsound/gstdirectsoundsink.c:
+       * sys/directsound/gstdirectsoundsink.h:
+         directsoundsink: Add support for a DeviceProvider
+         https://bugzilla.gnome.org/show_bug.cgi?id=792782
+
+2018-01-23 18:37:09 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/multifile/gstmultifilesrc.c:
+         multifilesrc: fix up uri handler a little
+         Fix path escaping when creating URI from location in get_uri().
+         Return FALSE with an error when URI can't be parsed in set_uri().
+         https://bugzilla.gnome.org/show_bug.cgi?id=783581
+
+2017-06-15 13:37:28 +0200  Dimitrios Katsaros <patcherwork@gmail.com>
+
+       * gst/multifile/gstmultifilesrc.c:
+         multifilesrc: implement uri handler
+         With this patch we can now provide a set of files
+         created by multifilesink as a source for uri elements.
+         e.g. gst-launch-1.0 playbin uri=multifile://img%25d.ppm
+         Note that for the %d pattern you need to replace % with %25.
+         This is to be compliant with URL naming standards.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783581
+
+2018-01-19 15:05:26 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Make sure timecode uses the same timescale as video
+         Don't blindly derive it from the frame rate, but try to get the per-pad
+         configured timescale first (if it exists)
+         https://bugzilla.gnome.org/show_bug.cgi?id=792680
+
+2018-01-18 18:36:27 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Allow configuring trak timescale per pad/trak
+         It generally makes not much sense to configure it for all pads/traks at
+         once as this value is usually different for each of them. As such, add a
+         new property on the pads in addition to the existing property on the
+         whole muxer.
+         https://bugzilla.gnome.org/show_bug.cgi?id=792649
+
+2018-01-23 09:46:32 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/flv/gstflvmux.c:
+         Update for renamed aggregator pad API
+         https://bugzilla.gnome.org/show_bug.cgi?id=791204
+
+2018-01-22 12:24:18 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix up sendonly/recvonly attribute handling
+         We can't handle recvonly streams, sendonly streams are perfectly fine.
+         The direction is the one from the point of view of the SDP offerer
+         (i.e. the RTSP server), and a recvonly stream would be one where the
+         server expects us to send media.
+         RFC 3264, section 5.1:
+         If the offerer wishes to only send media on a stream to its peer, it
+         MUST mark the stream as sendonly with the "a=sendonly" attribute.
+         This is mixed up in the ONVIF streaming specification examples, but
+         actual implementations and conformance tools seem to not care at all
+         about the attributes.
+         https://bugzilla.gnome.org/show_bug.cgi?id=792376
+
+2017-11-11 13:49:22 +0900  paul.kim <paul.hyunil@lge.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Reset retry_count to 0 when GST_FLOW_FLUSHING
+         If a lot of seek method is called very quickly, sometimes data reading
+         and do_request occurs while seek flush event is occurring and error
+         occurs because retry_count
+         reaches to the max. Thus, reset retry_count if flush occurs after
+         do_request and read_buffer.
+         https://bugzilla.gnome.org/show_bug.cgi?id=790199
+
+2018-01-18 15:09:04 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * tests/check/elements/aacparse.c:
+         tests: aacparser: Test that short raw frames don't get concatenated
+         https://bugzilla.gnome.org/show_bug.cgi?id=792644
+
+2018-01-18 14:23:07 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+       * gst/audioparsers/gstaacparse.c:
+         aacparse: When parsing raw input, accept frames of any size
+         Raw AAC streams might have very small frames, e.g. 6 byte frames
+         when encoding silence. These frames are then smaller than aacparse's
+         default min_frame_size of 10 bytes (ADTS_MAX_SIZE).
+         When passthrough is disabled or aacparse has to output ADTS, GstBaseParse
+         will concatenate these short frames to the following frame before
+         handling them to aacparse, which processes each input buffer as a single
+         frame, producing bad output.
+         To avoid this problem, set the min_frame_size to 1 when receiving a raw
+         stream.
+         https://bugzilla.gnome.org/show_bug.cgi?id=792644
+
+2017-05-02 21:24:06 -0300  Adrián Pardini <github@tangopardo.com.ar>
+
+       * ext/shout2/gstshout2.c:
+         shout2send: print actual username in debug log out
+         https://bugzilla.gnome.org/show_bug.cgi?id=782093
+
+2018-01-15 18:13:37 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * tests/check/elements/rtpbin.c:
+         rtpbin: fix leak of elements requested by signals
+         When the signal returns a floating reference, as its return type
+         is transfer full, we need to sink it ourselves before passing
+         it to gst_bin_add (which is transfer floating).
+         This allows us to unref it in bin_remove_element later on, and
+         thus to also release the reference we now own if the signal
+         returns a non-floating reference as well.
+         As we now still hold a reference to the element when removing it,
+         we also need to lock its state and setting it to NULL before
+         unreffing it
+         Also update the request_aux_sender test.
+         https://bugzilla.gnome.org/show_bug.cgi?id=792543
+
+2018-01-17 11:10:37 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: fix division by 0 for complex video formats
+         So complex video formats have 0 as pstride. Don't try to divide the
+         stride in such cases.
+         https://bugzilla.gnome.org/show_bug.cgi?id=792596
+
+2018-01-17 11:08:25 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: display stride and width values if stride is too small
+         https://bugzilla.gnome.org/show_bug.cgi?id=792596
+
+2018-01-16 13:19:29 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/multifile/gstmultifilesink.c:
+         multifilesink: document unit of "max-file-duration" property
+
+2018-01-12 12:21:37 +0100  Florent Thiéry <florent.thiery@ubicast.eu>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: fix typo in documentation
+         https://bugzilla.gnome.org/show_bug.cgi?id=792458
+
+2018-01-12 09:53:37 +0100  Peter Seiderer <ps.report@gmx.net>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: add property set/get PROP_CAPTURE_IO_MODE error handling
+         https://bugzilla.gnome.org/show_bug.cgi?id=791841
+
+2018-01-12 09:46:30 +0100  Peter Seiderer <ps.report@gmx.net>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: fold property set/get PROP_OUTPUT_IO_MODE case into default
+         https://bugzilla.gnome.org/show_bug.cgi?id=791841
+
+2018-01-12 09:49:14 +0100  Peter Seiderer <ps.report@gmx.net>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: add property set/get PROP_CAPTURE_IO_MODE error handling
+         https://bugzilla.gnome.org/show_bug.cgi?id=791841
+
+2018-01-12 09:44:03 +0100  Peter Seiderer <ps.report@gmx.net>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: fold property set/get PROP_OUTPUT_IO_MODE case into default
+         https://bugzilla.gnome.org/show_bug.cgi?id=791841
+
+2018-01-11 10:44:18 +0100  Peter Seiderer <ps.report@gmx.net>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: fix capture-io-mode property get
+         https://bugzilla.gnome.org/show_bug.cgi?id=791841
+
+2018-01-11 17:47:39 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Maintain downstream caps order
+         The g_list_insert_sorted() will behave like prepend when the compare
+         function returns 0. In our case, we want to maintain the order hence
+         append. This fixes this issue and improve the sorting algorithm to make
+         a 10x10 prefered over 10x200 with a preference of 10x8 (and similar
+         cases which was badly handled). This fixes generally fixes issue were a
+         sub-optimal format / size is picked.
+         https://bugzilla.gnome.org/show_bug.cgi?id=792435
+
+2017-12-21 23:02:30 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Also re-enabled paused task
+         When we only run _finish(), the task is never stopped externally,
+         instead it's only paused from the inside. We still want to restart
+         it in this case.
+
+2018-01-08 15:23:24 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * ext/flac/gstflacdec.c:
+       * ext/flac/gstflacdec.h:
+         flacdec: flush flac decoder on lost sync.
+         This to allow the decoder to start searching for a new
+         frame again.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791473
+
+2017-12-21 22:56:51 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Call stop on object before renegotiation
+         Otherwise renegotiation fails as we are still streaming.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791338
+
+2017-12-21 22:55:49 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Remove dead code
+         gst_v4l2_object_stop() will free and nullify the pool, so the
+         following if will never be true.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791338
+
+2017-12-21 22:29:06 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Delay capture pool activation
+         This is support CODA driver which prevents setting the output format if
+         the capture is streaming.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791338
+
+2017-12-13 20:23:46 +0000  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Add dynamic resolution change support
+         This implements a "big hammer" reallocation method. We effectively
+         drain and stop both side of the decoder and restart. This though is
+         the most generic method. This change should enable on most drivers
+         adaptive streaming.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752962
+
+2017-12-30 01:52:13 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: zlib is not actually a hard requirement
+
+2017-09-28 18:00:38 -0300  Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
+
+       * ext/jpeg/gstjpegdec.c:
+         jpeg: Fixup frames without an EOI marker
+         Some cameras fail to send an end-of-image marker (EOI)
+         and can't be properly decoded by either JPEG or libjpeg.
+         This commit parses the frame, making sure it has an EOI.
+         If there isn't one, the EOI gets added to the buffer.
+         A similar fixup is done in the rtpjpegdepay element,
+         and it makes sense to do it in jpegdec as well.
+         Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
+         https://bugzilla.gnome.org/show_bug.cgi?id=791988
+
+2017-12-26 13:50:24 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: skip translations if gettext is not available
+
+2017-12-24 13:14:06 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/inspect/plugin-rtp.xml:
+         docs: add rtpL8pay/depay to docs
+
+2017-12-24 13:11:00 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/gst-plugins-good-plugins.signals:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+         docs: update for recent changes
+
+2015-05-15 17:00:26 +0100  Tim Allen <tim.allen@ge.com>
+
+       * gst/rtp/Makefile.am:
+       * gst/rtp/gstrtp.c:
+       * gst/rtp/gstrtpL8depay.c:
+       * gst/rtp/gstrtpL8depay.h:
+       * gst/rtp/gstrtpL8pay.c:
+       * gst/rtp/gstrtpL8pay.h:
+       * gst/rtp/meson.build:
+         rtp: add L8 audio support
+
+2017-12-23 12:45:17 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: fix typo in multicast join error message
+
+2017-12-23 12:44:31 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: also proxy multicast-iface property to RTCP udpsrc
+
+2015-11-02 00:41:28 +0100  Sebastian Rasmussen <sebrn@hotmail.com>
+
+       * gst/udp/gstmultiudpsink.c:
+         multiudpsink: don't try to set IPV6_TCLASS on IPV4 sockets
+         Avoids ERROR log message.
+         https://bugzilla.gnome.org/show_bug.cgi?id=757449
+
+2015-11-02 00:41:28 +0100  Sebastian Rasmussen <sebrn@hotmail.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/elements/udpsink.c:
+         tests: udpsink: add check that sets QoS on IPv4/6 sockets
+         https://bugzilla.gnome.org/show_bug.cgi?id=757449
+
+2017-12-22 10:21:28 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2deviceprovider.c:
+         v4l2deviceprovider: Don't do slow probes
+         This is problematic in the current design at it seriously slow down
+         startup of applications. As of now, no known application uses the
+         colorimetry and the interlace-modes for anything (the two fields that
+         won't be probed). So let's disable it, in the long term we'll try and
+         find a way to interact with the provider so applicaiton could opt-in
+         these slow probing methods for more advance configuration.
+
+2017-12-22 10:15:48 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Don't redefine mmap64
+         On Linux, there exist a case where mmap64 is already a define to mmap,
+         so avoid the redefine warning here.
+
+2017-12-19 17:37:58 +0800  Ting-Wei Lan <lantw@src.gnome.org>
+
+       * configure.ac:
+       * meson.build:
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Don't use mmap64 if off_t is 64-bit
+         The difference between mmap and mmap64 is the type of 'offset' argument.
+         mmap64 always uses a 64-bit interger as offset, while mmap uses off_t,
+         whose size can vary on different operating systems or architectures.
+         However, not all operating systems support mmap64. Fortunately, although
+         FreeBSD only has mmap, its off_t is always 64-bit regardless of
+         architectures, so we can simply use mmap when sizeof(off_t) == 8.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791779
+
+2017-12-22 09:17:04 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         Revert "v4l2object: Use mmap64 to match libv4l2 signature"
+         This reverts commit b61bba48488c0a627d90f04cc9917d8c4f3f0d9b.
+
+2017-12-19 17:37:58 +0800  Ting-Wei Lan <lantw@src.gnome.org>
+
+       * configure.ac:
+       * meson.build:
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Check for mmap64 before using it
+         mmap64 is not available on FreeBSD.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791779
+
+2017-12-20 15:23:26 -0500  Vincent Penquerc'h <vincent.penquerch@collabora.com>
+
+       * gst/flv/gstflvmux.c:
+       * gst/flv/gstflvmux.h:
+         flv: flvmux ported to the GstAggregator
+         This makes it possible to create a flv file from a live source and not stop
+         when there are packet drops.
+         https://bugzilla.gnome.org/show_bug.cgi?id=782920
+
+2017-12-19 16:47:52 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/udp/gstmultiudpsink.c:
+         multiudpsink: Call gst_base_sink_wait_preroll on unlock
+         This means that packets will not be lost on fast pause/playing cycles.
+         Also refactor the code a little to simplify it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=774945
+
+2017-12-19 16:22:52 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/examples/gtk/Makefile.am:
+         gtk example: Fix cflags in Makefile.am
+
+2017-12-19 15:46:52 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/udp/gstmultiudpsink.c:
+         multiudpsink: Remove unused variable
+
+2017-12-19 13:03:28 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk: don't include uninstalled header
+
+2017-12-17 20:54:06 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/qt/Makefile.am:
+         gl: update plugins to use GstGL from -base
+
+2017-12-17 20:54:06 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/gtk/Makefile.am:
+       * ext/gtk/meson.build:
+       * tests/examples/gtk/Makefile.am:
+         gl: update plugins to use GstGL from -base
+
+2017-12-19 11:57:52 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix two leaks
+         * gst_event_new_stream_start() does not take ownership of the stream_id
+         * the pipeline_request_id string that is created was not being freed
+
+2017-12-07 22:08:42 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/videocrop/gstvideocrop.c:
+         videocrop: Add GstVideoCropMeta support
+         If downstream supports this meta, it will add or update it from
+         the GstBuffer in-place rather then copying.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791453
+
+2017-12-13 09:22:17 +0000  Sean DuBois <sean@siobud.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.h:
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/webm-mux.c:
+         Add AV1 to matroska plugin
+         https://bugzilla.gnome.org/show_bug.cgi?id=784160
+
+2017-12-15 14:48:09 +0100  fengalin <fengalin@free.fr>
+
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-read-common.c:
+       * tests/check/elements/matroskademux.c:
+       * tests/check/elements/matroskamux.c:
+         matroska: fix memory leaks due to toc related updates
+         https://bugzilla.gnome.org/show_bug.cgi?id=790686
+
+2017-12-15 11:40:13 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/check/elements/matroskamux.c:
+         matroskamux: Fix various memory leaks in the unit test
+         https://bugzilla.gnome.org/show_bug.cgi?id=790686
+
+2017-12-14 19:05:36 +0100  fengalin <fengalin@free.fr>
+
+       * tests/check/elements/matroskademux.c:
+       * tests/check/elements/matroskamux.c:
+         matroska-mux: migrate test to gst_harness
+         ... following the guide lines from Håvard Graff (see https://gstconf.ubicast.tv/videos/moar-better-tests/).
+         https://bugzilla.gnome.org/show_bug.cgi?id=790686
+
+2017-12-01 18:17:06 +0100  fengalin <fengalin@free.fr>
+
+       * gst/matroska/matroska-ids.h:
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-mux.h:
+       * gst/matroska/matroska-read-common.c:
+       * gst/matroska/matroska-read-common.h:
+       * tests/check/elements/matroskademux.c:
+       * tests/check/elements/matroskamux.c:
+         matroska: re-activate and update TOC support
+         TOC support in mastroskamux has been deactivated for a couple of years. This commit updates it to recent GstToc evolutions and introduces toc unit tests for both matroska-mux and matroska-demux.
+         There are two UIDs for Chapters in Matroska's specifications:
+         - The ChapterUID is a mandatory unsigned integer which internally refers to a given chapter. Except for title & language which use dedicated fields, this UID can also be used to add tags to the Chapter. The tags come in a separate section of the container.
+         - The ChapterStringUID is an optional UTF-8 string which also uniquely refers to a chapter but from an external perspective. It can act as a "WebVTT cue identifier" which "can be used to reference a specific cue, for example from script or CSS".
+         During muxing, the ChapterUID is generated and checked for unicity, while the ChapterStringUID receives the user defined UID. In order to be able to refer to chapters from the tags section, we maintain an internal Toc tree with the generated ChapterUID.
+         When demuxing, the ChapterStringUIDs (if available) are assigned to the GstTocEntries UIDs and an internal toc mimicking the toc is used to keep track of the ChapterUIDs and match the tags with the appropriate GstTocEntries.
+         https://bugzilla.gnome.org/show_bug.cgi?id=790686
+
+2017-12-14 18:28:00 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/examples/v4l2/v4l2src-renegotiate.c:
+         v4l2src: Fix compiler error in example caused by re-declaring `index`
+         ../tests/examples/v4l2/v4l2src-renegotiate.c:57:13: error: ‘index’ redeclared as different kind of symbol
+         static gint index = 0;
+         ^
+
+2017-12-14 14:49:01 +1100  Matthew Waters <matthew@centricular.com>
+
+       * common:
+         Automatic update of common submodule
+         From e8c7a71 to 3fa2c9e
+
+2017-12-13 14:39:47 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2deviceprovider.c:
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2radio.c:
+       * sys/v4l2/gstv4l2sink.c:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2object: Use a debug object for tracing
+         This way we can pass the pad name instead of the element for tracing
+         which helps identifying which v4l2object is used withing M2M element
+         like decoder, encoder and transform. For the reference, pads are name
+         <parent-name>:<pad-name>.
+
+2017-12-13 12:06:21 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Push a GAP event if there's a second *or more*
+         And not "more than a second"
+
+2017-12-13 11:35:37 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't push GAP event if first buffer is within 1s
+         If we saw empty segments, we previously unconditionally pushed a
+         GAP event downstream regardless of the duration of that empty
+         segment.
+         In order to avoid issues with initial negotiation of downstream elements
+         (which would negotiate to something before receiving any data due to
+         that initial GAP event), check if there's at least a second of difference
+         (like we do for other GAP-related checks in qtdemux) before
+         deciding to push a GAP event downstream.
+
+2017-12-13 10:21:17 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't set pared=True on underspecified audio/mpeg
+         This *really* needs to go through a parser to figure out what the
+         exact content type is.
+
+2017-12-11 15:27:08 -0600  Michael Catanzaro <mcatanzaro@igalia.com>
+
+       * gst/equalizer/gstiirequalizer.c:
+         equalizer: Fix -Wincompatible-pointer-types warning
+         This is caused by the new type propagation for g_object_ref.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791494
+
+2017-12-09 16:15:24 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/.gitignore:
+         tests: ignore rtph264 test binary
+
+2017-08-25 15:19:37 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * tests/check/elements/udpsrc.c:
+         tests: udpsrc: verify the correct amount of bytes is sent to the socket
+         https://bugzilla.gnome.org/show_bug.cgi?id=786799
+
+2017-08-25 14:59:06 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * tests/check/elements/udpsrc.c:
+         tests: udpsrc: ensure test won't timeout if the buffers are already received
+         Sometimes all the buffers are received before the time we lock the
+         check_mutex, in which case g_cond_wait will wait forever for another
+         one. Just check if this is the case before waiting.
+         https://bugzilla.gnome.org/attachment.cgi?id=358397
+
+2017-08-25 14:45:52 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * tests/check/elements/udpsrc.c:
+         tests: udpsrc: fix test_udpsrc to actually run and fix locking
+         Previously this would silently be skipped because 1600 != 1400
+         and there is no assertion on this call.
+         Also unlock check_mutex after use.
+         https://bugzilla.gnome.org/show_bug.cgi?id=786799
+
+2017-09-21 18:23:54 +0300  John Nikolaides <jnikolaides@toolsonair.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: added a "split now" action signal
+         Now, the video file can be split at an arbitrary time chosen by the user.
+         https://bugzilla.gnome.org/show_bug.cgi?id=787922
+
+2017-12-08 00:31:32 +0000  Alvaro Margulis <alvaro.margulis@cirpack.com>
+
+       * gst/udp/gstmultiudpsink.c:
+         multiudpsink: fix bind address leak
+         https://bugzilla.gnome.org/show_bug.cgi?id=790986
+
+2017-12-07 11:15:19 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/audioparsers/gstflacparse.c:
+       * gst/audioparsers/gstflacparse.h:
+         Revert "flacparse: fix header rewriting being ignored"
+         This caused broken metadata and also looks a bit dodgy.
+         Revert until we can figure out a solution that works for
+         all cases and doesn't break anything.
+         This reverts commit adeee44b07a173b9ab4253216caba8f66dd43abb.
+         https://bugzilla.gnome.org/show_bug.cgi?id=727802
+         https://bugzilla.gnome.org/show_bug.cgi?id=785558
+
+2017-12-05 15:14:04 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Handle drivers that only round up height
+         Commit 1f31715c9861 ("v4l2videodec: use visible size, not coded size,
+         for downstream negotiation filter") added support for removing the
+         padding obtained as the difference between width/height from G_FMT and
+         visible width/height from G_SELECTION from the probed caps obtained
+         via TRY_FMT.
+         This patch fixes the padding removal for drivers that only round up
+         height, but not width, to the padded frame size. This might happen
+         because horizontal padding can be handled by line stride (bytesperline),
+         but there is no such thing as plane stride in the V4L2 API for
+         single-buffer planar formats.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791271
+
+2017-11-01 08:21:37 -0600  Matt Staples <staples255@gmail.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Add a signal to allow outgoing messages to be modified or dropped
+         This feature allows applications to implement extensions to the RTSP
+         protocol, such as those defined in the ONVIF Streaming Specification.
+         https://bugzilla.gnome.org/show_bug.cgi?id=762884
+
+2017-08-25 11:57:26 +0200  Haakon Sporsheim <haakon@pexip.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/elements/rtpsession.c:
+         rtpsession: Handle zero length feedback packets
+         https://bugzilla.gnome.org/show_bug.cgi?id=791074
+
+2017-07-10 15:19:34 +0200  Florian Zwoch <fzwoch@gmail.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix debug log for 'hvcC' codec_data
+         https://bugzilla.gnome.org/show_bug.cgi?id=784749
+
+2017-12-01 13:04:41 +0100  Havard Graff <havard.graff@gmail.com>
+
+       * tests/check/elements/rtpsession.c:
+         tests: rtpsession: refactor tests to use GstHarness
+         This patch simplifies the tests (44% less code) and
+         makes them much more readable.
+         The provided SessionHarness also makes it much easier
+         to write new tests for rtpsession.
+         https://bugzilla.gnome.org/show_bug.cgi?id=791070
+
+2017-11-24 10:36:01 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/audioparsers/gstflacparse.c:
+         flacparse: Request at least the full header size when parsing headers
+         Otherwise baseparse will incrementally send us bigger buffers until the
+         full header size is reached, which is not only pointless but also means
+         that baseparse will reallocate and copy into a bigger buffer for every
+         input buffers. In pull mode that's done in 64kb increments, in push mode
+         usually in much smaller increments, causing a lot of overhead for
+         example when parsing high-quality coverart.
+
+2017-11-29 11:29:31 +0100  Florent Thiéry <florent.thiery@ubicast.eu>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Fix dmabuf support detection
+         This resulted in improper selection of dmabuf on unsupported drivers.
+         The checked ioctl errno was not correct.
+         https://bugzilla.gnome.org/show_bug.cgi?id=790940
+
+2017-11-27 20:10:51 +1100  Matthew Waters <matthew@centricular.com>
+
+       * common:
+         Automatic update of common submodule
+         From 3f4aa96 to e8c7a71
+
+2017-11-27 14:44:58 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         gl/caopengllayer: use public GstGLContext instead of Cocoa-specific one
+         Allows keeping the GstGLCAOpenGLLayer public but not the winsys-specific
+         context/display/window.
+
+2017-11-26 15:13:15 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * configure.ac:
+         autotools: stop controlling symbol visibility with -export-symbols-regex
+         Instead, use -fvisibility=hidden and explicit exports via GST_EXPORT.
+         This should result in consistent behaviour for the autotools and
+         Meson builds.
+
+2017-11-24 15:37:44 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: Do more checks for seekability
+         When receiving a seek event, check whether we can actually seek based
+         on the information the server provided.
+         Also add more documentation on what the seekable field means
+
+2017-11-25 00:53:42 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Always update reserved-duration-remaining
+         If a reserved-max-duration is set, we should always track
+         and update the reserved-duration-remaining estimate, even
+         if we're not sending periodic moov updates downstream for
+         full robust muxing.
+
+2015-04-07 23:53:19 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+       * tests/check/elements/splitmux.c:
+         splitmuxsink: Use muxer reserved space properties if present.
+         If the use-robust-muxing property is set, check if the
+         assigned muxer has reserved-max-duration and
+         reserved-duration-remaining properties, and if so set
+         the configured maximum duration to the reserved-max-duration
+         property, and monitor the remaining space to start
+         a new file if the reserved header space is about to run out -
+         even though it never ought to.
+
+2017-11-24 08:00:21 +0100  Edward Hervey <edward@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk: Fix possibility of NULL variable
+         It's quite unlikely since it's initialized in instance initialization.
+         CID #1417721
+
+2017-11-24 16:56:03 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * tests/check/elements/splitmux.c:
+         splitmux: Fix file switch-on-caps-change.
+         Switching to a new fragment because the input caps have
+         changed didn't properly end the previous file. Use the normal
+         EOS sequence to ensure that happens. Add a test that it works.
+
+2017-11-24 16:53:40 +1100  Jan Schmidt <jan@centricular.com>
+
+       * ext/jpeg/gstjpegenc.c:
+       * ext/jpeg/gstjpegenc.h:
+         jpegenc: Update output caps on input caps change
+         If the input changes width/height that should be reflected
+         in the output caps, so make sure they get updated
+
+2017-11-23 22:58:40 +1100  Jan Schmidt <jan@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         Revert "gl: Use GstGLDisplayEGL directly instead of creating a GstGLDisplayVIVFb subclass"
+         This reverts commit 47fd4d391e775c11f529705bb0f457a9d25ba5e7.
+         This patch is incorrect. It doesn't actually compile, and causes a crash
+         because the viv-fb window implementation needs a native EGL handle
+         to pass to fbCreateWindow, but the GstGLDisplayEGL handleis actually
+         an EGLDisplay now (and gets cast to the wrong type)
+
+2017-09-05 15:55:03 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: don't insert SPS/PPS inline for hvc1 output
+         Only for byte-stream or hev1. For hvc1 the SPS/PPS are in the
+         caps as codec_data field and in this case they shouldn't be in
+         the stream data as well. The output caps should be updated with
+         the new codec_data if needed, for hvc1.
+
+2017-09-05 15:47:42 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+       * gst/rtp/gstrtph265depay.h:
+         rtph265depay: store negotiated output format as enum
+         We keep the boolean byte_stream around since it's nicer for
+         readability and most of the code just cares about byte_stream
+         or not. This is useful for future-proofing the code for when
+         we add support for hev1 output as well.
+
+2017-08-29 17:05:51 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: add support for hvc1 as output format
+
+2017-08-08 18:58:11 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: don't add trailing zeros to VPS/PPS/SPS
+         This would happen if input is byte-stream with four-byte
+         sync markers instead of three-byte ones. The code that
+         scans for sync markers will place the start of the NALU
+         on the third-last byte of the NALU sync marker, which
+         means that any additional zeros may be counted as belonging
+         to the previous NALU instead of being part of the next sync
+         marker. Fix that so we don't send VPS/SPS/PPS with trailing
+         zeros in this case.
+         See https://bugzilla.gnome.org/show_bug.cgi?id=732758
+
+2017-06-16 12:41:49 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: assemble AUs into downstream-allocated memory
+         When merging NALs into AUs, use downstream-provided allocator
+         to allocate memory and copy NALs directly into that memory when
+         assembling them.
+
+2017-06-16 12:30:13 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+       * gst/rtp/gstrtph265depay.h:
+         rtph265depay: try to negotiate an allocator with downstream
+
+2017-06-16 12:13:32 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: simplify buffer accumulation control flow
+         There is no difference between pushing out a buffer directly
+         with gst_rtp_base_depayload_push() and returning it from the
+         process function. The base class will just call _depayload_push()
+         on the returned buffer as well.
+         So instead of marshalling buffers through three layers and back,
+         just push them from one place in handle_nal() and always return
+         NULL from the process vfunc. This simplifies the code a little.
+         Also rename _push_fragmentation_unit() to _finish_fragmentation_unit()
+         for clarity. Push sounds like it means being pushed out, whereas
+         it might just be pushed into an adapter.
+         This change has the side-effect that multiple NALs in a single STAP
+         (such as SPS/PPS) may no longer be pushed out as a single buffer if
+         we output NALs in byte-stream format (i.e. not aggregate AUs), but
+         that shouldn't really make any difference to anyone.
+
+2017-06-16 11:18:16 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: fix crash with empty sprops-parameters
+         https://bugzilla.gnome.org/show_bug.cgi?id=780040
+
+2017-06-16 12:20:34 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: minor clean-up
+         Declutter caps update code a bit.
+
+2017-08-08 13:10:15 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/rtp-payloading.c:
+         tests: rtp-payloading: add unit test for rtph264pay codec_data
+         Make sure no trailing zero bytes sneak into our SPS or PPS.
+         https://bugzilla.gnome.org/show_bug.cgi?id=732758
+
+2014-07-05 06:21:48 +0000  Philip Craig <phil@blackmoth.com.au>
+
+       * gst/rtp/gstrtph264pay.c:
+         rtph264pay: don't add trailing zeros to PPS/SPS
+         This would happen if input is byte-stream with four-byte
+         sync markers instead of three-byte ones. The code that
+         scans for sync markers will place the start of the NALU
+         on the third-last byte of the NALU sync marker, which
+         means that any additional zeros may be counted as belonging
+         to the previous NALU instead of being part of the next sync
+         marker. Fix that so we don't send SPS/PPS with trailing
+         zeros in this case.
+         https://bugzilla.gnome.org/show_bug.cgi?id=732758
+
+2017-05-20 15:50:22 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtph264.c:
+       * tests/files/Makefile.am:
+       * tests/files/h264.rtp:
+         tests: rtph264depay: add test for using downstream memory allocator
+
+2017-06-03 00:58:05 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: assemble AUs into downstream-allocated memory
+         When merging NALs into AUs, use downstream-provided allocator
+         to allocate memory and copy NALs directly into that memory when
+         assembling them.
+
+2017-06-02 21:27:40 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph264depay.h:
+         rtph264depay: try to negotiate an allocator with downstream
+
+2017-06-02 20:54:20 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: minor clean-up
+         Declutter caps update code a bit.
+
+2017-11-23 08:00:58 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Run gst-indent
+
+2017-11-23 07:59:07 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/replaygain/rganalysis.c:
+         rganalysis: Fix left shift of signed values
+         left shifting signed values is undefined.
+         Instead of doing "x << offs" which is undefined, do the equivalent
+         "x * (1 << offs)" which is well defined
+
+2017-11-23 07:57:44 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Check presence of bitrate tags
+         Check whether the tag was present before printing it out
+         CID #1418501
+
+2017-11-21 09:33:49 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Use the proper maximum value for seekable
+         it's a gfloat, not a gdouble
+
+2017-11-18 02:27:50 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Use new GST_SEQNUM_INVALID constant
+
+2017-11-18 02:01:58 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxpartreader.c:
+         splitmuxsrc: Don't return FALSE from event handling.
+         Returning FALSE because we drop an event means that
+         internal sources like qtdemux might throw an error
+         and break the whole pipeline. The only time it can
+         happen is either flushing or shutdown, and those
+         will be handled anyway.
+
+2017-10-22 18:26:12 +0800  Jun Xie <jun.xie@samsung.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: reset reused QtDemuxStream while parsing a new 'trak'
+         if QtDemuxStream is reused, then we need to reset it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=788759
+
+2017-11-13 10:43:11 +0900  Seungha Yang <pudding8757@gmail.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/qtdemux.c:
+         isomp4: Add official fourcc for VP8 codec
+         fourcc for VP8 codec is "vp08" defined by spec. To follow it,
+         add it to demux and change legacy VP8 fourcc "VP80" to "vp08" in mux.
+         Also, enable sync table in case of VP8 codec.
+         See also https://www.webmproject.org/vp9/mp4/
+         https://bugzilla.gnome.org/show_bug.cgi?id=790026
+
+2017-11-13 10:38:06 +0900  Seungha Yang <pudding8757@gmail.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmuxmap.c:
+       * gst/isomp4/qtdemux.c:
+         isomp4: Add support VP9 codec
+         Add fourcc for VP9 codec and support it by qtdemux and qtmux
+         See also https://www.webmproject.org/vp9/mp4/
+         https://bugzilla.gnome.org/show_bug.cgi?id=790026
+
+2017-11-13 13:51:20 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: Remove bogus error message
+         It's just informational
+
+2017-11-10 15:51:05 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/rtp/gstrtpmpvpay.c:
+         rtpmpvpay: Don't create empty buffer list
+         If there's nothing to send, just return
+
+2017-03-13 18:14:12 +0900  paul.kim <paul.hyunil@lge.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Remove range header when seek to 0
+         This fixes the previous range header is remained if seek to 0 is
+         attempted.
+         https://bugzilla.gnome.org/show_bug.cgi?id=779957
+
+2017-11-08 16:34:01 +0100  Edward Hervey <edward@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Fix seeking back to 0
+         This is a regression introduced by "03db374 - souphttpsrc: retry
+         request on early termination from the server"
+         The problem was that when seeking back to 0, we would not end up calling
+         add_range_header() which in addition to adding range headers *ALSO* sets
+         the read_position to the requested one.
+         This would result in a wide variety of later failures, like reading
+         again and again instead of stopping properly.
+
+2017-11-07 18:03:53 +0900  Seungha Yang <pudding8757@gmail.com>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-ids.c:
+       * gst/matroska/matroska-ids.h:
+         matroskademux: Add parsing Colour element
+         ... and forward colorimetry to downstream. The Colour element describes
+         various color information (similar to 'colr' box in isobmff).
+         Note that, due to the comparatively limited syntax for color information
+         in vpx codecs, the color information in mkv/wemb container level
+         should be used for sophisticated color handling (e.g., HDR video).
+         https://bugzilla.gnome.org/show_bug.cgi?id=790023
+
+2017-10-19 14:02:37 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+       * sys/v4l2/gstv4l2deviceprovider.c:
+         v4l2deviceprovider: Ignore touch sensing devices
+         With GST_V4L2_USE_LIBV4L2=1, my laptop's touchpad shows up as a video
+         source device in gst-device-monitor, but attempting to stream from it
+         fails because the device doesn't actually support any video formats.
+         name  : Synaptics RMI4 Touch Sensor
+         class : Video/Source
+         caps  : video/x-raw, format=(string)I420, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)0, height=(int)0, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1;
+         video/x-raw, format=(string)YV12, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)0, height=(int)0, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1;
+         video/x-raw, format=(string)BGR, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)0, height=(int)0, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1;
+         video/x-raw, format=(string)RGB, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)0, height=(int)0, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1;
+         properties:
+         udev-probed = true
+         device.bus_path = /sys/devices/rmi4-00/rmi4-00.fn54/video4linux/v4l-touch0
+         sysfs.path = /sys/devices/rmi4-00/rmi4-00.fn54/video4linux/v4l-touch0
+         device.subsystem = video4linux
+         device.product.name = "Synaptics\ RMI4\ Touch\ Sensor"
+         device.capabilities = :capture:
+         device.api = v4l2
+         device.path = /dev/v4l-touch0
+         v4l2.device.driver = rmi4_f54
+         v4l2.device.card = "Synaptics\ RMI4\ Touch\ Sensor"
+         v4l2.device.bus_info = rmi4:rmi4-00.fn54
+         v4l2.device.version = 265480 (0x00040d08)
+         v4l2.device.capabilities = 2501902337 (0x95200001)
+         v4l2.device.device_caps = 354418689 (0x15200001)
+         gst-launch-1.0 v4l2src device=/dev/v4l-touch0 ! ...
+         v4l2-ctl -d /dev/v4l-touch0 --list-formats reports:
+         ioctl: VIDIOC_ENUM_FMT
+         Index       : 0
+         Type        : Video Capture
+         Pixel Format: 'TD16'
+         Name        : 16-bit signed deltas
+         Index       : 1
+         Type        : Video Capture
+         Pixel Format: 'TD08'
+         Name        : 8-bit signed deltas
+         Index       : 2
+         Type        : Video Capture
+         Pixel Format: 'TU16'
+         Name        : 16-bit unsigned touch data
+         https://bugzilla.gnome.org/show_bug.cgi?id=789197
+
+2017-11-03 13:27:50 -0400  Youness Alaoui <kakaroto@kakaroto.homelinux.net>
+
+       * gst/rtp/gstrtpg722pay.c:
+         rtpg722pay: Add encoding-params to the src caps template
+         The G722 payload only accepts G722 audio with channels=1, so it must
+         specify the encoding-params=1 in its src caps, otherwise it causes issues
+         with farstream which thinks it supports 2 channels G722 and when
+         confronted with a remote that has G722/8000/2, it will negotiate it
+         and error out with a not-negotiated when the caps don't intersect
+         at runtime.
+         https://bugzilla.gnome.org/show_bug.cgi?id=789878
+
+2017-10-06 17:36:34 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2allocator: Add support for data_offset
+         In MPLANE mode, the driver may set data_offset, which represent some
+         padding at the start of the buffer used internally. This portion of the
+         data need to be skipped, though it is included in bytesused.
+         This patch removes frame size sanity check as the method used will no
+         longer work. This check was simply there to help detect broken kernel
+         drivers. It would be re-implement by estimating the plane size, which is
+         not totally trivial and may be too much work for a simple debug check.
+         https://bugzilla.gnome.org/show_bug.cgi?id=733501
+
+2017-07-17 17:09:18 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Add "accept-certificate" signal for manually checking a TLS certificate for validity
+         https://bugzilla.gnome.org/show_bug.cgi?id=785024
+
+2017-10-30 19:15:56 +0900  Sangkyu Park <sk1122.park@samsung.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Print RTSP/SDP messages to gstreamer log instead of stdout
+         - 'debug' property is deprecated
+         - All RTSP messages are printed to gstreamer log with 'log' level.
+         https://bugzilla.gnome.org/show_bug.cgi?id=788917
+
+2017-11-01 15:29:58 +0900  Justin Kim <justin.kim@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsesson: downgrade message level to debug when detected XR
+         When XR packet is detected, warning message leads to misunderstandings.
+         Until RFC3611 is implemented in gst-plugins-base, the level needs to
+         be downgraded to avoid confusion.
+         https://bugzilla.gnome.org/show_bug.cgi?id=789746
+
+2017-10-24 20:12:29 +0530  Ashish Kumar <kr.ashish@samsung.com>
+
+       * gst/isomp4/atomsrecovery.c:
+         gst-plugins-good: atoms_recovery: Handled buffer mapping failure
+         https://bugzilla.gnome.org/show_bug.cgi?id=789413
+
+2017-07-08 22:11:49 -0700  Thiago Santos <thiagossantos@gmail.com>
+
+       * gst/isomp4/atomsrecovery.c:
+       * gst/isomp4/atomsrecovery.h:
+       * gst/isomp4/gstqtmoovrecover.c:
+         atomsrecovery: read from mdat only what is on headers
+         It is possible that the mdat has more data than what was stored in the
+         headers file. If we put that to the output the file will have bogus data
+         at the end and some players will complain.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784258
+
+2017-07-05 22:23:21 -0700  Thiago Santos <thiagossantos@gmail.com>
+
+       * gst/isomp4/atomsrecovery.c:
+         isomp4: atomsrecovery: handle common and large atom headers
+         Do not assume all files are large files. Check and use the short or
+         extended atom size field only if needed.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784258
+
+2017-10-20 11:08:24 +0200  Andreas Frisch <afrisch@make.tv>
+
+       * configure.ac:
+         pngdec: fix build with libpng versions between 1.2 and 1.5.1 (revised)
+         https://bugzilla.gnome.org/show_bug.cgi?id=765927
+
+2017-10-19 18:23:34 +0200  Andreas Frisch <fraxinas@dreambox.guru>
+
+       * configure.ac:
+       * ext/libpng/gstpngdec.c:
+         pngdec: fix build with libpng versions between 1.2 and 1.5.1
+         https://bugzilla.gnome.org/show_bug.cgi?id=765927
+
+2017-10-19 16:17:45 +0200  Andreas Frisch <fraxinas@dreambox.guru>
+
+       * ext/libpng/gstpngdec.c:
+         pngdec: Extract icc profiles and send them downstreams for colormanagement elements
+         https://bugzilla.gnome.org/show_bug.cgi?id=765927
+
+2017-10-16 14:20:47 +0200  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtsp: Add missing Since marker
+
+2017-10-13 12:25:22 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/qt/qtplugin.pro:
+         qt: update qmake .pro file
+         Update for renaming of plugin file, and add some
+         missing source files.
+
+2017-06-13 18:51:32 +0200  Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+
+       * ext/gdk_pixbuf/gstgdkpixbufdec.c:
+         gstgdkpixbufdec: stop pretending to decode gifs.
+         If you can't decode an animated gif, you can't decode a gif,
+         so stop squatting GST_RANK_SECONDARY for that format, libav
+         does a better job.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784683
+
+2017-09-28 22:51:57 +0200  Philippe Renon <philippe_renon@yahoo.fr>
+
+       * sys/directsound/gstdirectsoundsink.c:
+         directsoundsink: simplify how DirecSoundBuffer is cleared
+         we always want to clear the whole buffer so no need to
+         start from offset even if the offset is always zero.
+         https://bugzilla.gnome.org/show_bug.cgi?id=788847
+
+2017-09-28 22:49:31 +0200  Philippe Renon <philippe_renon@yahoo.fr>
+
+       * sys/directsound/gstdirectsoundsink.c:
+         directsoundsink: fix comment
+         https://bugzilla.gnome.org/show_bug.cgi?id=788847
+
+2017-09-28 22:48:41 +0200  Philippe Renon <philippe_renon@yahoo.fr>
+
+       * sys/directsound/gstdirectsoundsink.c:
+         directsoundsink: don't call set_volume with private scaled volume
+         use get_volume() instead to get unscaled volume
+         https://bugzilla.gnome.org/show_bug.cgi?id=788847
+
+2017-09-28 22:46:23 +0200  Philippe Renon <philippe_renon@yahoo.fr>
+
+       * sys/directsound/gstdirectsoundsink.c:
+         directsoundsink: remove duplicate volume initialization
+         https://bugzilla.gnome.org/show_bug.cgi?id=788847
+
+2017-10-10 18:04:50 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix compiler warning
+         qtdemux.c: In function ‘gst_qtdemux_configure_stream’:
+         qtdemux.c:7764:34: error: suggest parentheses around ‘&&’ within ‘||’ [-Werror=parentheses]
+         if ((stream->n_samples == 1) && (stream->first_duration == 0)
+         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+2017-09-22 18:41:52 +0200  Nael Ouedraogo <nael.ouedraogo@crf.canon.fr>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix assert when moof containing one sample
+         Avoid computing frame rate when a stream contain moof with only one
+         sample, to avoid an assert. The moof is considered as still picture.
+         The same is already done for one sample given in the moov.
+         https://bugzilla.gnome.org/show_bug.cgi?id=782217
+
+2017-10-09 14:17:25 +0200  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Avoid potentially dereferencing NULL pointer
+         CID 1418986
+
+2017-10-08 00:07:43 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: fix debug message on pt mismatch
+
+2017-10-07 21:11:41 +0000  Nicolas Dufresne <nicolas@ndufresne.ca>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Fix driver capability dectection
+         Use the right set of caps when checking if caps intersect. That makes
+         the check only select the supported devices.
+
+2017-09-20 01:46:15 +0000  Nicolas Dufresne <nicolas@ndufresne.ca>
+
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc/dec: Don't leak template caps
+
+2017-10-07 21:17:53 +0000  Nicolas Dufresne <nicolas@ndufresne.ca>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videodec: Protect against null pool in _stop
+         This may happen if the negotiation fails, as we will have never
+         created the pools.
+
+2017-10-07 15:55:24 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtsp/gstrtspsrc.c:
+         rtpbin, rtspsrc: fix compiler warnings about 64-bit integer signednes
+         "warning: this decimal constant is unsigned only in ISO C90" with
+         gcc 4.8.4 (Ubuntu/Linaro 4.8.4-2ubuntu1~14.04.3)
+
+2017-10-07 15:39:18 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: fix build without libv4l
+         https://bugzilla.gnome.org/show_bug.cgi?id=779466
+
+2017-10-07 14:06:38 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpsbcdepay.c:
+         rtpsbcdepay: Fix potential NULL pointer dereference
+         CID 1418864
+
+2017-10-07 01:21:19 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/audiofx/audioecho.c:
+         audioecho: Micro-optimize
+         Gives 1.28x speedup in surround-delay=false mode
+
+2017-10-06 23:59:43 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/audiofx/audioecho.c:
+         audioecho: Don't do linear interpolation between samples
+         Linear interpolation adds quite some noise, and it's unlikely that
+         anybody will ever need sub-sample accurate delays. Proper resampling
+         before that will lead to better results.
+
+2017-09-29 22:19:42 -0400  Enrico Jorns <ejo@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: auto-detect dmabuf export for V4L2_IO_AUTO on capture side
+         Issue an invalid VIDIOC_EXPBUF ioctl to the driver to check if the
+         driver supports dmabuf export. If the driver does not implement the
+         IOCTL, the error is ENOTTY. Any other error codes mean that the driver
+         implements VIDIOC_EXPBUF.
+         https://bugzilla.gnome.org/show_bug.cgi?id=779466
+
+2017-09-24 14:35:01 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Only set pixel-aspect-ratio if specified
+         If it's not specified, we should let the decoder figure it out.
+         Apparently the code was already in place, all was to make the code
+         conditional.
+         https://bugzilla.gnome.org/show_bug.cgi?id=787795
+
+2017-09-23 15:44:09 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Don't pull passed the EOS
+         When a truncated FLV is provided and processed in pull mode, we
+         may endup trying to pull passed EOS, causing a rather confusing
+         warning as the pull offset is an integer overflow.
+         https://bugzilla.gnome.org/show_bug.cgi?id=787795
+
+2017-09-23 15:41:30 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Ignore invalid H.264 codec data
+         This code basically skip over codec_data with empty payload. In
+         this case, the codec_data variable is the size of the header for
+         the CODEC part of Video Tag. The remaining is supposed to be the
+         H.264 codec data, hence should not be empty.
+         https://bugzilla.gnome.org/show_bug.cgi?id=787795
+
+2017-09-23 15:38:07 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: Avoid integer overflow on invalid CTS
+         If the CTS is negative an would lead to a negtive PTS, clip
+         the CTS so the PTS will be 0.
+         https://bugzilla.gnome.org/show_bug.cgi?id=787795
+
+2017-10-05 14:36:28 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+         docs: Update for git changes
+
+2017-10-05 14:35:27 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Fix build
+
+2017-07-13 14:46:55 -0400  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Handle TCP as lower transport with RTSP 2.0
+         Meaning that the interleave fields have to be updated as
+         if streams setup was working when using pipelined setup
+         request. Otherwise there is a mismatch between the server
+         channel count and our own.
+         This also makes RTSP 2.0 over HTTP working.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781446
+
+2017-04-20 17:45:39 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtsp: Start implementing support for RTSP 2.0
+         - Handle version negotation:
+         Added a `default-version` property so that the user can configure
+         what to use in case the server does not support version negotation
+         (which actually exist)
+         - Handle pipelined requests, which allow avoiding full round trip to
+         setup the RTP streams (request are sent in a raw, and response are
+         handled as they arrive).
+         - Handle the new Media-Properties header
+         - Handle the new Seek-Style header
+         - Handle the new Accept-Ranges header
+         Handling of IPV6 should already be OK.
+         We are still missing (at least) the following features (which do not
+         seem really mandatory as they require a "persistent connection between
+         server and client"):
+         - Server to Client TEARDOWN command (Not so usefull fmpov)
+         - PLAY_NOTIFY (not needed for our server yet)
+         - Support for the new REDIRECT features
+         and probably some more protocol changes might not be handled yet.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781446
+
+2017-05-03 11:19:03 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Use a macro to debug RTSP messages
+         Simplifying the code a little.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781446
+
+2017-10-03 16:30:10 -0700  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
+
+       * ext/gdk_pixbuf/gstgdkpixbufsink.c:
+       * gst/level/gstlevel.c:
+       * gst/matroska/matroska-mux.c:
+       * gst/multifile/gstmultifilesink.c:
+       * gst/replaygain/gstrganalysis.c:
+       * gst/spectrum/gstspectrum.c:
+         Use proper GtkDoc notation for NULL/FALSE/TRUE
+
+2017-10-02 12:35:48 -0700  Cassandra Rommel <cassandra.rommel@gmail.com>
+
+       * ext/qt/gstqtglutility.cc:
+         gl: Use GstGLDisplayEGL directly instead of creating a GstGLDisplayVIVFb subclass
+         This simplifies the code a lot without any functional changes apart from
+         not closing the display connection. Closing the display connection is
+         not safe to do as it is shared between all other code in the same
+         process and no reference counting or anything happens at the platform
+         layer.
+
+2017-10-01 16:09:13 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Ignore medias marked as sendonly
+         We're never going to receive anything from them, so don't create pads
+         for them. These medias are destinations where *we* could send something.
+
+2017-09-05 11:41:35 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpsbcdepay.c:
+       * gst/rtp/gstrtpsbcdepay.h:
+         sbcdepay: Add property to ignore input timestamps
+         This then just counts samples and calculates the output timestamps based
+         on that and the very first observed timestamp. The timestamps on the
+         buffers are continued to be used to detect discontinuities that are too
+         big and reset the counter at that point.
+         When receiving data via Bluetooth, many devices put completely wrong
+         values into the RTP timestamp field. For example iOS seems to put a
+         timestamp in milliseconds in there, instead of something based on the
+         current sample offset (RTP clock-rate == sample rate).
+         https://bugzilla.gnome.org/show_bug.cgi?id=787297
+
+2017-09-21 13:59:00 +0530  Ponnam Srinivas <p.srinivas@samsung.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: Fix Memory leak in error case
+         https://bugzilla.gnome.org/show_bug.cgi?id=787937
+
+2017-09-22 16:55:21 +0530  Deepak Srivastava <srivastava.d@samsung.com>
+
+       * gst/deinterlace/gstdeinterlace.c:
+         deinterlace: Fixed memory leak in error code path
+         https://bugzilla.gnome.org/show_bug.cgi?id=788041
+
+2017-09-20 09:37:59 +0530  Ponnam Srinivas <p.srinivas@samsung.com>
+
+       * ext/libpng/gstpngenc.c:
+         pngenc: fix memory leak in error code path
+         Don't leak row_pointers if frame can't be mapped.
+         https://bugzilla.gnome.org/show_bug.cgi?id=787885
+
+2017-09-19 17:55:58 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Don't leak codec name
+
+2017-08-05 12:23:30 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2bufferpool.h:
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2bufferpool: Don't stop streaming when pool is flushing
+         The purpose of being able to flush the buffer pool is only to
+         unlock any blocked operation. Doing streamoff/streamon had the
+         side effect of turning off and on the camera. As we do a flush_start
+         / flush_stop sequence when shutting down, that would cause a really
+         quick sequence of streamoff/streamon/streamoff/close which was
+         causing some cameras to stop working.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783945
+
+2017-09-17 16:18:48 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+         rtpjitterbuffer: implement basic chain_list function
+         Doesn't do anything fancy yet, but still avoids lots of
+         unnecessary locking/unlocking that would happen if the
+         default chain_list fallback function in GstPad got invoked.
+
+2017-09-17 12:50:30 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/multifile/gstmultifilesink.c:
+         multifilesink: use new gst_buffer_list_calculate_size()
+
+2017-09-14 13:00:56 +0200  Patrick Radizi <patrickr@axis.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtpbin: add option for sanity checking timestamp offset
+         Timestamp offsets needs to be checked to detect unrealistic values
+         caused for example by NTP clocks not in sync. The new parameter
+         max-ts-offset lets the user decide an upper offset limit. There
+         are two different cases for checking the offset based on if
+         ntp-sync is used or not:
+         1) ntp-sync enabled
+         Only negative offsest are allowed since a positive offset would
+         mean that the sender and receiver clocks are not in sync.
+         Default vaule of max-ts-offset = 0 (disabled)
+         2) ntp-sync disabled
+         Both positive and negative offsets are allowed.
+         Default vaule of max-ts-offset = 3000000000
+         The reason for different default values is to be backwards
+         compatible.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785733
+
+2017-09-14 11:20:17 +0200  Patrick Radizi <patrickr@axis.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+       * gst/rtpmanager/gstrtpbin.h:
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtpbin: add option for increasing ts_offset gradually
+         Instant large changes to ts_offset may cause timestamps to move
+         backwards and also cause visible effects in media playback. The new
+         option max-ts-offset-adjustment lets the application control the rate to
+         apply changes to ts_offset.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784002
+
+2017-09-06 07:59:56 +0000  Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+         qmlglsink: Expose itemInitialized as property
+         Instead of just signalling when ready exposing the state
+         as a property allows us to bind at any time if player is
+         loaded async.
+
+2017-09-13 16:05:08 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Ensure all caps a fixated
+         The code relied on the list compare function to fixate the caps
+         but if the caps only has one structure, the compare function will
+         never get called. Capture device for which there is only one
+         structure in the caps would then get some assertion and later
+         fail badly.
+         Instead, fixate before inserting into the list and split the reading
+         and the fixation of the structures.
+
+2017-09-13 11:52:09 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Don't leak the par value
+
+2017-09-13 11:38:44 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/examples/v4l2/v4l2src-renegotiate.c:
+         v4l2-renegotiate: Don't leak the option context
+
+2017-09-13 11:33:33 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/examples/v4l2/v4l2src-renegotiate.c:
+         v4l2src-renegotiate: Don't leak pipeline desc string
+
+2017-09-13 11:32:09 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/examples/v4l2/v4l2src-renegotiate.c:
+         v4l2-renegotiate: Change --enable-dmabuf into --io-mode=
+         This gives allow testing dmabuf importation but also exportation buy
+         letting user pick anything from the io-mode property on v4l2src.
+
+2017-09-11 20:24:27 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: search_cluster should find preceding cluster before target
+         ... since failing this constraint takes search_pos by surprise which might
+         then end up in an infinite loop.
+         Fixes https://bugzilla.gnome.org/show_bug.cgi?id=787538
+
+2017-09-07 14:33:57 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/gstrtprtxreceive.c:
+       * gst/rtpmanager/gstrtprtxsend.c:
+         rtprtx{send,receive}: improve the debug messages
+         * use INFO/DEBUG/LOG/TRACE equaly and meaningfully;
+         previously rtprtxsend:LOG and rtprtxreceive:LOG would generate
+         a totally different amount of log traffic and sometimes it was
+         impossible to see the information you wanted without useless
+         spam being printed around
+         * improve the wording, give a reasonable and self-explanatory
+         amount of information
+         * print SSRCs in hex
+         * avoid G_FOO_FORMAT for readability (we are just printing integers)
+
+2017-09-07 09:39:13 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/qt/gstplugin.cc:
+       * ext/qt/qtplugin.pro:
+         qt: fix build with qmake
+         Move the package defines for GST_PLUGIN_DEFINE from the
+         command line into the source file to avoid quoting issues
+         (-DPACKAGE_NAME="foo" means the quotes won't actually make
+         it to the compiler and then it no longer gets a string constant).
+
+2017-09-05 16:20:44 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+         Request minimum buffer even if need_pool is FALSE
+         When tee is used, it will not request a pool, but still it wants to
+         know how many buffers are required.
+         https://bugzilla.gnome.org/show_bug.cgi?id=730758
+
+2017-09-05 16:20:44 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/qt/gstqtsink.cc:
+         Request minimum buffer even if need_pool is FALSE
+         When tee is used, it will not request a pool, but still it wants to
+         know how many buffers are required.
+         https://bugzilla.gnome.org/show_bug.cgi?id=730758
+
+2017-09-05 15:30:40 +0100  Ian Jamison <ian.dev@arkver.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Handle BT2020 for colorspace and transfer
+         This was not fully handled in switches and
+         ub gst_v4l2_object_get_colorspace();
+         https://bugzilla.gnome.org/show_bug.cgi?id=787313
+
+2017-09-05 15:29:24 +0100  Ian Jamison <ian.dev@arkver.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Fix colorimetry transfer lookup for 4K video
+         https://bugzilla.gnome.org/show_bug.cgi?id=787160
+
+2017-09-06 11:25:53 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Check if caps have changed after try_fmt
+         try_fmt will update the caps colorimetry and interlace-mode. Before this
+         call, those field are missing. The caps equality check was always
+         failing when a spurious reconfigure event was received.
+
+2017-09-06 23:55:38 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmuxmap.c:
+         qtmux: Allow MPEG layer 1/2, AC3 and Opus in qtmux
+         qtmux is supposed to be the muxer that allows all formats,
+         with others (mp4mux and friends) being profile-restricted.
+
+2017-09-05 12:56:44 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: fix keyunit detection
+         https://bugzilla.gnome.org/show_bug.cgi?id=787254
+
+2017-09-05 15:42:17 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/jpeg/gstjpegdec.c:
+         jpegdec: Fix decoding of streams that don't signal exactly twice the height
+         ... and also progressive streams.
+
+2017-09-05 13:28:16 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/jpeg/gstjpegdec.c:
+         jpegdec: Handle interlaced MJPEG streams
+         These come with two JPEG images per buffer of half height than signalled
+         in the container.
+         Changes based on Tim-Philipp Müller's 0.10 branch:
+         https://cgit.freedesktop.org/~tpm/gst-plugins-good/log/?h=jpegdec-interlaced
+         https://bugzilla.gnome.org/show_bug.cgi?id=568555
+
+2017-09-01 15:00:12 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gtkgstglwidget.c:
+         gtkglsink: expose the created display and context correctly
+         1. Propagate the GstGLDisplay we create
+         2. Add the created GstGLContext to the propagated GstGLDisplay
+         Otherwise with multi-branch GL pipelines involving gtkglsink, things
+         will fall apart and errors will be genarated somewhere.
+
+2017-09-04 17:06:39 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/audioparsers/gstdcaparse.c:
+         dcaparse: Really fix "usage before unmap"
+         Previous patch would try to unref a buffer that was pushed downstream.
+         Instead only unref when/if needed and keep usage of the cleanup: goto
+         block
+
+2017-09-03 15:23:10 +0530  Arun Raghavan <arun@arunraghavan.net>
+
+       * gst/audioparsers/gstdcaparse.c:
+         dcaparse: Don't unmap buffer before accessing data from it
+         The previous patch added a check for a substream header after
+         gst_buffer_unmap(), which is incorrect.
+
+2017-06-24 18:47:14 +0200  Matej Knopp <matej.knopp@gmail.com>
+
+       * gst/audioparsers/gstdcaparse.c:
+         dcaparse: preserve DTS HD substream
+
+2017-09-01 15:56:04 +0200  Edward Hervey <edward@centricular.com>
+
+       * ext/qt/gstqtgl.h:
+         qt: Only include qtgui-config.h on qt >= 5.9.0
+         The file does not exist in previous versions
+
+2017-08-31 14:40:44 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtgl.h:
+         qt: the defines for QT_OPENGL_ES_2 have moved
+         Update the includes to account for that
+
+2017-04-26 13:50:41 +0200  Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+       * ext/qt/qtwindow.cc:
+         qt: ensure GL_DRAW_FRAMEBUFFER
+
+2017-08-14 18:18:07 +0530  Arun Raghavan <arun@arunraghavan.net>
+
+       * gst/rtp/gstrtpsbcpay.h:
+         rtpsbcpay: Fix some tabs that crept in somehow
+
+2017-08-29 19:13:58 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: Also log local and SR RTP running times when doing ntp-sync=true
+
+2017-08-24 17:06:38 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/rtpmanager/gstrtpbin.c:
+         rtpbin: also create session when creating the send_rtcp_src_%u pad
+         If one requests the send_rtcp_src_%u pad before a recv_rtcp_sink_%u pad,
+         the session/pad would never be created and NULL was returned.
+         Switching the request order would work.
+         https://bugzilla.gnome.org/show_bug.cgi?id=786718
+
+2017-08-26 12:59:35 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/files/Makefile.am:
+       * tests/files/cbr_stream.mp3:
+       * tests/files/stream.mp2:
+       * tests/files/vbr_stream.mp3:
+         tests: mpg123audiodec: add files needed by unit tests
+
+2017-08-26 10:10:19 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/gst-plugins-good.supp:
+       * tests/check/pipelines/.gitignore:
+       * tests/check/pipelines/lame.c:
+       * tests/check/pipelines/twolame.c:
+         tests: add basic unit test for twolame as well
+
+2017-08-26 09:59:22 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/pipelines/lame.c:
+         tests: lame: fix build
+
+2017-08-26 09:52:33 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/v4l2/.gitignore:
+         tests: ignore another binary
+
+2017-08-26 09:41:13 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * REQUIREMENTS:
+       * configure.ac:
+       * docs/plugins/Makefile.am:
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/gst-plugins-good-plugins.interfaces:
+       * docs/plugins/inspect/plugin-twolame.xml:
+       * ext/Makefile.am:
+       * ext/meson.build:
+       * ext/twolame/meson.build:
+       * po/POTFILES.in:
+         twolame: hook up to build system
+         https://bugzilla.gnome.org/show_bug.cgi?id=774252
+
+2017-08-26 09:21:44 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+         Moving twolame mp2 encoder plugin from -ugly
+         https://bugzilla.gnome.org/show_bug.cgi?id=774252
+
+2017-08-26 09:03:08 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * REQUIREMENTS:
+       * configure.ac:
+       * docs/plugins/Makefile.am:
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/gst-plugins-good-plugins.interfaces:
+       * docs/plugins/inspect/plugin-lame.xml:
+       * ext/Makefile.am:
+       * ext/lame/Makefile.am:
+       * ext/lame/meson.build:
+       * ext/meson.build:
+       * po/POTFILES.in:
+       * tests/check/Makefile.am:
+       * tests/check/gst-plugins-good.supp:
+       * tests/check/meson.build:
+         lame: hook up to build system
+         https://bugzilla.gnome.org/show_bug.cgi?id=774252
+
+2017-08-25 21:13:58 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+         Moving lame mp3 encoder plugin from -ugly
+         https://bugzilla.gnome.org/show_bug.cgi?id=774252
+
+2017-08-22 12:39:43 +0100  Julien Isorce <jisorce@oblong.com>
+
+       * ext/qt/gstqsgtexture.cc:
+       * ext/qt/gstqtglutility.cc:
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/qtwindow.cc:
+         qt: fix broken build due to commit 2fd84a6c for gstgl
+         https://bugzilla.gnome.org/show_bug.cgi?id=784779
+
+2017-07-07 16:15:12 +0100  Julien Isorce <jisorce@oblong.com>
+
+       * ext/gtk/Makefile.am:
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gtkgstglwidget.c:
+       * tests/examples/gtk/glliveshader.c:
+         gl: do not include GL headers in public gstgl headers
+         Except for gst/gl/gstglfuncs.h
+         It is up to the client app to include these headers.
+         It is coherent with the fact that gstreamer-gl.pc does not
+         require any egl.pc/gles.pc. I.e. it is the responsability
+         of the app to search these headers within its build setup.
+         For example gstreamer-vaapi includes explicitly EGL/egl.h
+         and search for it in its configure.ac.
+         For example with this patch, if an app includes the headers
+         gst/gl/egl/gstglcontext_egl.h
+         gst/gl/egl/gstgldisplay_egl.h
+         gst/gl/egl/gstglmemoryegl.h
+         it will *no longer* automatically include EGL/egl.h and GLES2/gl2.h.
+         Which is good because the app might want to use the gstgl api only
+         without the need to bother about gl headers.
+         Also added a test: cd tests/check && make libs/gstglheaders.check
+         https://bugzilla.gnome.org/show_bug.cgi?id=784779
+
+2017-08-20 20:41:19 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * tests/check/meson.build:
+         meson: Link mpeg123audiodec test against gstfft
+         Fixing build error:
+         /run/build/gst-plugins-good/_flatpak_build/../tests/check/elements/mpg123audiodec.c:150: undefined reference to `gst_fft_s32_new'
+         /run/build/gst-plugins-good/_flatpak_build/../tests/check/elements/mpg123audiodec.c:151: undefined reference to `gst_fft_s32_window'
+         /run/build/gst-plugins-good/_flatpak_build/../tests/check/elements/mpg123audiodec.c:151: undefined reference to `gst_fft_s32_fft'
+         /run/build/gst-plugins-good/_flatpak_build/../tests/check/elements/mpg123audiodec.c:147: undefined reference to `gst_fft_s32_free'
+
+2017-08-20 17:15:33 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/pipelines/tagschecking.c:
+         tests: tagschecking: remove gst-check-xmp-* temp files when done
+         Also fix temp file creation a bit.
+
+2017-08-20 15:49:12 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+         docs: update for changes in git
+
+2017-08-20 15:48:24 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-good-plugins-sections.txt:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/inspect/plugin-mpg123.xml:
+         mpg123: add to docs
+
+2017-08-20 13:56:19 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * REQUIREMENTS:
+       * configure.ac:
+       * ext/Makefile.am:
+       * ext/meson.build:
+       * ext/mpg123/meson.build:
+       * tests/check/Makefile.am:
+       * tests/check/elements/.gitignore:
+       * tests/check/meson.build:
+         mpg123: hook up to build system
+         https://bugzilla.gnome.org/show_bug.cgi?id=774252
+
+2017-08-20 13:48:48 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+         Moving mpg123 plugin from -ugly
+
+2017-08-17 12:23:25 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * README:
+       * common:
+         Automatic update of common submodule
+         From 48a5d85 to 3f4aa96
+
+2017-08-14 15:28:22 +0800  Sky Juan <skyjuan@realtek.com>
+
+       * gst/audioparsers/gstac3parse.c:
+         ac3parse: fix not-linked handling causing glitches when selecting stream
+         Fix chain function not handling not-linked from baseparse.
+         When an input data is separated into 2 buffers, the second buffer
+         would not be pushed into the adapter if baseparse returns not-linked
+         for first buffer.
+         This caused glitches when switching streams and selecting
+         a stream that was previously unselected.
+         https://bugzilla.gnome.org/show_bug.cgi?id=786268
+
+2017-08-16 13:57:50 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+       * gst/goom2k1/filters.c:
+       * gst/goom2k1/filters.h:
+       * gst/goom2k1/goom_core.c:
+         goom2k1: Convert source files to UTF-8
+         Causes problems with the new gtk-doc 1.26 otherwise,
+         but is a good idea in any case.
+         https://bugzilla.gnome.org/show_bug.cgi?id=786364
+
+2017-08-14 03:08:41 -0500  Eduard Sinelnikov <eduard@reporty.com>
+
+       * gst/wavparse/gstwavparse.c:
+       * gst/wavparse/gstwavparse.h:
+         wavparse: Add support for growing WAV files
+         With some fixes by me.
+
+2017-08-14 17:39:15 +0530  Arun Raghavan <arun@arunraghavan.net>
+
+       * gst/rtp/gstrtpsbcpay.c:
+         rtpsbcpay: Fix compile error
+
+2017-05-21 16:01:14 +0200  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+         qmlglsink: Add itemInitialized signal to QML item
+         This is useful for autoplay for example. With autoplay, it is necessary to
+         wait until the scene graph is fully set up. This signal is emitted once the
+         QML item node is ready. So, inside a connected slot, the pipeline's state
+         can be set to PLAYING to automatically start playback as soon as the QML
+         script is loaded.
+         https://bugzilla.gnome.org/show_bug.cgi?id=786246
+
+2017-08-14 10:36:56 +0000  Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+       * gst/rtp/gstrtpsbcpay.c:
+         rtpsbcpay: fix if buffer size exceeds MTU
+         The plugin queued buffer data if not all buffer data fit
+         into a single RTP packet. Now RTP packets are pushed as long
+         as enough data is available.
+
+2017-07-27 17:21:48 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * ext/vpx/gstvpxenc.c:
+         vpxenc: discard frames that have been dropped by libvpx
+         This fixes a memory leak. When dropframe-threshold has been set,
+         libvpx may output less frames than the input ones, which causes
+         some GstVideoCodecFrames to queue up in GstVideoEncoder's internal
+         frame queue with no chance of ever being all released. And because
+         the frames keep references to the input buffers, the input buffer
+         pool keeps allocating new buffers and memory usage grows very fast.
+         For example the following pipeline's memory usage grows at a rate
+         of about 1GB per minute!
+         videotestsrc ! capsfilter caps=video/x-raw,width=1920,height=1080,framerate=30/1,format=I420 ! \
+         vp8enc target-bitrate=1000000 end-usage=cbr dropframe-threshold=95 ! fakesink
+         https://bugzilla.gnome.org/show_bug.cgi?id=783086
+
+2017-08-08 13:11:58 +0200  Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+
+       * gst/rtpmanager/rtpstats.c:
+       * gst/rtpmanager/rtpstats.h:
+         rtpstats: fix unsigned integer comparisons.
+         Callers of the API (rtpsource, rtpjitterbuffer) pass clock_rate
+         as a signed integer, and the comparison "<= 0" is used against
+         it, leading me to think the intention was to have the field
+         be typed as gint32, not guint32.
+         This led to situations where we could call scale_int with
+         a MAX_UINT32 (-1) guint32 as the denom, thus raising an
+         assertion.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785991
+
+2017-08-10 14:44:35 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/taglib/meson.build:
+         taglib: use -fvisibility=hidden with this C++ plugin in meson too
+         Also pass args as cpp_args.
+
+2017-03-22 15:25:17 +0100  Michael Olbrich <m.olbrich@pengutronix.de>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: allow larger files
+         For really long files such as contiguous recordings of a whole day, the
+         50MB limit is not sufficient.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781458
+
+2017-08-10 16:08:06 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix offsets for reading lpcm specific fields
+         We were reading at the completely wrong positions, 16 bytes later in the
+         data.
+         Also add support for high-aligned samples.
+
+2017-08-10 14:01:09 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: don't export symbols by default
+         Only plugin entry points should be exported.
+         Currently plugins might export more symbols with
+         the meson build, as we don't have the exports
+         regexp there that we pass to libtool.
+
+2017-08-10 15:14:31 +0530  Deepak Srivastava <srivastava.d@samsung.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: Fix memory leak in wavparse element
+         Fixing of leaking the text field of the GstWavParseNote and
+         GstWavParseLabl structure.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785429
+
+2017-08-08 10:37:12 +0000  Cyril Lashkevich <notorca@gmail.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Don't mark jpeg frames as deltas
+         JPEG formats are encoded, but they never have keyframe flag. But in
+         fact they are keyframes
+         https://bugzilla.gnome.org/show_bug.cgi?id=785990
+
+2017-08-06 13:06:45 +0100  Philippe Normand <philn@igalia.com>
+
+       * sys/osxvideo/Makefile.am:
+         osxvideo: rename library according to the plugin name
+         https://bugzilla.gnome.org/show_bug.cgi?id=785880
+
+2017-08-02 17:16:21 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Don't drop buffer ref on qbuf
+         This function no longer take ownership of the buffer.
+         CID 1414800
+
+2017-08-02 17:13:55 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2: Enable VP9 format
+         This was missing, preventing the encoder and decoder to work
+         properly. This also adds support for camera that would produce
+         VP9 (if that exists).
+
+2017-08-02 12:28:38 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.h:
+       * sys/v4l2/gstv4l2h263enc.h:
+       * sys/v4l2/gstv4l2h264enc.h:
+       * sys/v4l2/gstv4l2mpeg4enc.h:
+       * sys/v4l2/gstv4l2sink.h:
+       * sys/v4l2/gstv4l2src.h:
+       * sys/v4l2/gstv4l2transform.h:
+       * sys/v4l2/gstv4l2videodec.h:
+       * sys/v4l2/gstv4l2videoenc.h:
+       * sys/v4l2/gstv4l2vp8enc.h:
+       * sys/v4l2/gstv4l2vp9enc.h:
+         v4l2: Remove spurious CATEGORY_EXTERN
+         These have been copy pasted all over the place and are not used anymore.
+         All object have it's own category now. This fixes build warning since
+         the VP9 decoder had vp8 category declared.
+
+2017-08-02 10:39:46 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2h264enc.c:
+       * sys/v4l2/gstv4l2mpeg4enc.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/gstv4l2videoenc.h:
+       * sys/v4l2/gstv4l2vp8enc.c:
+       * sys/v4l2/gstv4l2vp9enc.c:
+         v4l2videoenc: Move the profile/level negotation in the base class
+         This removes duplicated code across different codec.
+
+2017-08-02 09:36:08 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2h263enc.c:
+       * sys/v4l2/gstv4l2h264enc.c:
+       * sys/v4l2/gstv4l2mpeg4enc.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/gstv4l2videoenc.h:
+       * sys/v4l2/gstv4l2vp8enc.c:
+       * sys/v4l2/gstv4l2vp9enc.c:
+         v4l2videoenc: Turn gst_v4l2_is_video_enc into a helper
+         This reduces the amount of code needed in each codec class.
+
+2017-08-01 16:01:11 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2vp8enc.c:
+       * sys/v4l2/gstv4l2vp8enc.h:
+       * sys/v4l2/gstv4l2vp9enc.c:
+       * sys/v4l2/gstv4l2vp9enc.h:
+       * sys/v4l2/meson.build:
+         v4l2: Add VP8/9 encoder support
+
+2017-07-31 11:56:05 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Use mmap64 to match libv4l2 signature
+         https://bugzilla.gnome.org/show_bug.cgi?id=785628
+
+2017-08-01 09:22:43 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: Copy flags and timestamp when importing
+         Whenever we import from downstream pool (userptr or dmabuf-import), we
+         should copy over the flags and timestamp, otherwise downstream will not
+         get proper synchronization or will not be able to notice frames that has
+         corruption in it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785680
+
+2017-07-31 16:09:30 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2h263enc.c:
+       * sys/v4l2/gstv4l2h263enc.h:
+       * sys/v4l2/meson.build:
+         v4l2: Add H263 Encoder support
+
+2017-07-27 13:51:25 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/Makefile.am:
+         v4l2: Add missing no-inst header
+
+2017-07-26 15:18:01 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2mpeg4enc.c:
+       * sys/v4l2/gstv4l2mpeg4enc.h:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/gstv4l2videoenc.h:
+       * sys/v4l2/meson.build:
+         v4l2: Add interface for MPEG4 encoding
+
+2017-07-27 10:51:07 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2h264enc.c:
+       * sys/v4l2/gstv4l2h264enc.h:
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2transform.h:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videodec.h:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/gstv4l2videoenc.h:
+         v4l2: Ignore register issue and keep probing
+         Don't stop registering the other dynamic plugins if one registration
+         fails.
+
+2017-07-27 14:21:34 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/law/mulaw-decode.c:
+         mulawdec: Unmap input buffer if failing to map the output buffer
+
+2017-07-27 09:22:25 +0530  Satya Prakash Gupta <sp.gupta@samsung.com>
+
+       * gst/law/alaw-decode.c:
+         alawdec: Fix Memory leak in error case
+         https://bugzilla.gnome.org/show_bug.cgi?id=785435
+
+2017-07-26 20:36:15 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/ext/v4l2-common.h:
+       * sys/v4l2/ext/v4l2-controls.h:
+       * sys/v4l2/ext/videodev2.h:
+         v4l2: Update external files with latest
+         This is copied from the linux kernel with only some include changes so
+         it works outside the kernel headers.
+
+2017-07-18 10:41:40 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/matroska/matroska-mux.c:
+         matroskamux: For audio tracks, take the default duration from the first buffer
+         ... if we don't have any better idea from the caps. This allows writing
+         SimpleBlocks for a majority of audio streams where the duration of
+         frames is usually fixed. And as a side effect, allows VLC to play
+         streams with Opus as it only works with SimpleBlocks currently:
+         https://trac.videolan.org/vlc/ticket/18545
+         https://bugzilla.gnome.org/show_bug.cgi?id=784969
+
+2017-07-24 16:45:40 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2object.h:
+         v4l2: Fix compilation without libv4l2
+
+2017-07-24 16:13:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2: Keep ref to element in allocator/pool
+         Removes the FIXME/Question in the buffer pool and add a ref to the
+         element in the GstAllocator too. This ref is strictly required to keep
+         the GstV4l2Object structure around.
+
+2017-07-24 14:27:05 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+         v4l2object: Removed unused members
+
+2017-07-24 14:19:02 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+       * sys/v4l2/gstv4l2allocator.h:
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2h264enc.c:
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2radio.c:
+       * sys/v4l2/gstv4l2sink.c:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: Add run-time environment to enable libv4l2
+         The library has started preventing a lot of interesting use cases,
+         like CREATE_BUFS, DMABuf, usage of TRY_FMT. As the libv4l2 is totally
+         inactive and not maintained, we decided to disable it. As a convenience
+         we added a run-time environment that let you enable it for testing.
+         GST_V4L2_USE_LIBV4L2=1
+         This of course only works if you have enabled libv4l2 at build time.
+
+2017-07-17 10:04:02 +0200  Nicola Murino <nicola.murino@gmail.com>
+
+       * ext/jpeg/gstjpegenc.c:
+         jpegenc: declare quality property changeable in PLAYING state
+         https://bugzilla.gnome.org/show_bug.cgi?id=785012
+
+2017-07-21 23:34:59 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Fix colorimetry validation
+         While not documented, gst_video_colorimetry_matches() only accepts well
+         known names. Looking at the code and unit test, this seems to be on
+         purpose, so fixing by parsing the string and compating the colorimetry
+         structures.
+
+2017-07-21 15:40:24 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2encoder: Fix negotiation error handling
+         The subclass negotiated function will call set_format, if that fails the
+         pool will not be created. We ended up with an assertion.
+         GStreamer-CRITICAL **: gst_buffer_pool_set_active: assertion 'GST_IS_BUFFER_POOL (pool)' failed
+
+2017-07-19 22:25:49 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2src.c:
+         v4l2src: Speedup camera startup by skipping try_fmt
+         In this commit, we enabled skip_try_fmt_probes quirk in order to speed
+         up the start which is known to be disastrously slow with certain USB
+         cameras.
+         This has the side effect that we needed to rewrite the entire
+         negotiation process in a way that we iterate over the possible caps
+         until we find one that works.
+         The new negotiation method consist of extracting a preferred structure
+         from the peer caps and using this to fixate and sort the caps. To
+         reflect the old behaviour, we sort all resolution strictly bigger
+         to the preferred one with the closes one first. The rest is appended,
+         keeping the same order. We then normalize the caps in case there was
+         some list of interlace-mode or colorimetry left. We finally iterate
+         over all fixed caps and try it. 99% of the time, the first or the
+         second one should work, whit the result of a single S_FMT being issues.
+         From there, it will be relatively easy to introduce new negotiation
+         algorithm. The current algorithm is made for optimal image quality
+         with a scaling sink that sets it's window resolution as preference.
+         This the case if for:
+         v4l2src ! videoconvert ! videoscale ! ximagesink
+         Other strategy would be needed to optimize for non-scaling sink like
+         ximagesink or kmssink when the driver does not scale.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785156
+
+2017-07-19 22:09:38 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+         v4l2object: Introduce quirk to skip slow probes
+         skip_try_fmt_probes quirk is set, V4L2 object will not probe for
+         interlace-mode and colorimetry to avoid relying on try_fmt. This quirk
+         will be used by v4l2src to avoid desastrous startup time with slow
+         USB webcams.
+         When this quirk is enabled, caller will have to iterate over the
+         negotiated caps as it may contains unsupported formats. If the peer
+         didn't choose a specific interlace-mode, or colorimetry, the value
+         chosen by the driver is set into the caps. For this reason, when this
+         mode is enabled, gst_v4l2_object_set_format() will require writable
+         caps.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785156
+
+2017-07-19 22:07:32 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: always set the GstV4l2Error on error
+         Some of the error case were conditional to using try_fmt or not.
+         This is slightly unexpected, always set the error so the caller
+         can decide.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785156
+
+2017-07-19 22:05:49 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Minor style fix and useful trace
+         https://bugzilla.gnome.org/show_bug.cgi?id=785156
+
+2017-07-19 22:03:29 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Fix try/s_fmt errors
+         According to the spec,TRY_FMT cannot return EBUSY, though it can
+         return EINVAL if it was not possible to update the format to
+         something supported.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785156
+
+2017-07-19 22:01:26 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Validate colorimetry in S/TRY_FMT
+         This is in preparation for removing slow TRY_FMT probes for
+         colorimetry. As we won't have tried that colorimetry we cannot
+         assume the driver will accept it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785156
+
+2017-07-19 21:56:14 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Validate field in S/TRY_FMT
+         This is in preparation from removing the slow TRY_FMT probes for
+         interlacing. As we won't have tried that interlace-mode already
+         we need to validate that the driver isn't refusing it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=785156
+
+2017-07-21 19:01:19 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/icles/test-accurate-seek.c:
+         tests: icles: fix build
+         Can't do additions/subtractions on void* pointers.
+
+2017-07-21 11:04:17 -0400  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * tests/icles/test-accurate-seek.c:
+         tests:icles: Fix previous patch by implementing our memmem
+         Using the string version of it will fail on '\0'.
+
+2017-07-21 10:17:00 -0400  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * tests/icles/test-accurate-seek.c:
+         tests:icles: Do not use memmem GNU extension function
+         As it is not avalaible on windows/msvc and we can use pure GLib for that
+
+2017-07-20 17:21:05 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/directsound/Makefile.am:
+         directsound: Fix .c file name in Makefile
+         This was broken by accident, bad search and replace.
+
+2017-07-20 11:02:10 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * Makefile.am:
+       * sys/waveform/Makefile.am:
+         waveform: Fix DLL name to match plugin name
+         https://bugzilla.gnome.org/show_bug.cgi?id=785168
+
+2017-07-20 10:38:32 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * Makefile.am:
+       * sys/directsound/Makefile.am:
+       * sys/directsound/meson.build:
+         directsound: Fix DLL name to match plugin name
+         https://bugzilla.gnome.org/show_bug.cgi?id=785168
+
+2017-07-19 12:38:03 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: preferably send open-ended segment rather than repeated segment events
+
+2017-07-19 11:27:32 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix seeking in fragmented file without mfra random access info
+         ... which no longer worked due to unconditionally clearing sample info and
+         ending up in inconsistent state.  Let's tread a bit more carefully and also
+         allow for the old seek handling that resorts to scanning if no mfra info
+         is available.
+
+2017-07-19 10:42:46 +0200  Nicolas Dechesne <nicolas.dechesne@linaro.org>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: add some useful debug messages
+         Add a couple of useful debug traces , they happened to be useful to
+         debug/investigate a 4K video playback issue with v4l2, so let's make these
+         changes more permanent.
+         Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
+         https://bugzilla.gnome.org/show_bug.cgi?id=785109
+
+2017-07-18 11:28:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: Fix 4K colorimetry
+         Since 1.6, the transfer function for BT2020 has been changed from BT709
+         to BT2020_12. It's the same function, but with more precision. As a side
+         effect, the V4L2 colorpsace didn't match GStreamer colorspace. When
+         GStreamer ended up making a guess, it would not match anything supported
+         by V4L2 anymore. This this by using BT2020_12 for BT2020 colorspace and
+         BT2020 transfer function in replacement of BT709 whenever a 4K
+         resolution is detected.
+
+2017-07-14 16:21:38 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Only check CROPCAP for par once
+         The pixel aspect ratio is documented to not change unless the TV
+         Standard is changed. So this mean that this will be uniform across all
+         possible format and resolutions.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784674
+
+2017-07-18 10:01:13 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/check/elements/matroskamux.c:
+         Revert "matroskamux: adjust unit test to modified behaviour"
+         This reverts commit 8fe478c8a7746cd2c63f20d23e97e26e1a0e6192.
+         We're back to previous behaviour
+
+2017-07-18 00:26:11 +0200  Nicola Murino <nicola.murino@gmail.com>
+
+       * gst/matroska/matroska-mux.c:
+       * gst/matroska/matroska-mux.h:
+         matroskamux: add properties to control cluster duration
+         https://bugzilla.gnome.org/show_bug.cgi?id=784971
+
+2017-07-17 20:47:26 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: UVC driver is named uvcvideo these days
+         The quirk to avoid probing interlacing didn't work anymore as the driver
+         is now name uvcvideo. This should slightly speed up camera startup.
+
+2017-07-12 21:02:39 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Remove unused defines
+
+2017-07-12 20:53:51 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/v4l2_calls.c:
+         v4l2: Make gst_v4l2_get_capabilities static
+         It's not used outside of v4l2_calls.c
+
+2017-07-12 20:49:47 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2allocator.c:
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2colorbalance.h:
+       * sys/v4l2/gstv4l2deviceprovider.c:
+       * sys/v4l2/gstv4l2h264enc.c:
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2radio.c:
+       * sys/v4l2/gstv4l2transform.c:
+       * sys/v4l2/gstv4l2tuner.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/gstv4l2vidorient.c:
+       * sys/v4l2/v4l2_calls.c:
+       * sys/v4l2/v4l2_calls.h:
+         v4l2: Merge v4l2_calls.h into gstv4l2object.h
+         First step of a larger cleanup, all function from v4l2_calls are in fact
+         methods on GstV4l2Object. This split makes the code really confusing.
+         This also remove no longer unused macros.
+
+2017-07-15 14:57:49 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123audiodec: fix caps leak
+         The pad template takes its own ref, so we should unref the caps.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784982
+
+2017-07-15 12:48:19 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * po/meson.build:
+         meson: po: use glib preset and read language list from LINGUAS
+         Supported since meson 0.37, so we can use it now.
+
+2017-07-14 12:12:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Trace unknown fourcc as text
+         This makes it easier to find out what is not supported.
+
+2017-07-14 11:54:57 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2: Don't probe for unneeded format
+         For v4l2videodec/enc, we generate elements per formats, and in
+         this case we can speed up the start up by only probing the format
+         we care about.
+
+2017-07-13 12:32:00 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Implement stable element names
+         Before that, each m2m node would be wrapped as a single, multi-format
+         decoder element. As a unique name was needed, we where using the device
+         name, which changes between re-boots. This led to unpredictable element
+         names. In this patch, we generate an element per codec, using
+         v4l2<codec>dec name. If there is multiple decoder for the same format,
+         the following elements will be named v4l2<node><codec>dec.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784908
+
+2017-07-13 14:50:44 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Post an element message with the HTTP headers on the bus too
+         Instead of just sending a sticky event with them downstream. This allows
+         getting the HTTP headers easily in the application, and especially also
+         on errors.
+
+2017-07-13 12:47:02 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix parsing of RLE depth
+         Regression introduced by 86b427dc70562f891a551ffc9f96cefe1cafcddd
+         https://bugzilla.gnome.org/show_bug.cgi?id=784812
+
+2017-07-12 15:29:32 +1000  Jan Schmidt <jan@centricular.com>
+
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/gstqtsink.h:
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+         qt: Use a proxy object for access to the QML widget
+         QML can destroy the video widget at any time, leaving
+         us with a dangling pointer. Use a lock and a proxy
+         object to cope with that, and block in the widget
+         destructor if there are ongoing calls into the widget.
+
+2017-07-10 18:57:11 +0200  Philippe Renon <philippe_renon@yahoo.fr>
+
+       * ext/shout2/gstshout2.h:
+         shout2: use gint and guint in place of int and uint
+         this fixes a compilation error with gcc 7.1.0 on mys2 where uint is not defined
+         https://bugzilla.gnome.org/show_bug.cgi?id=784758
+
+2017-07-07 21:15:57 +0900  Yasushi SHOJI <yashi@atmark-techno.com>
+
+       * gst/rtp/gstrtpgsmpay.c:
+         rtpgsmpay: fix accidental garbage data before actual payload
+         Do not allocate payload size outbuf if appending payload buffer.
+         The commit 137672ff1824948bda4b1b1967de8c24a0055b67 attached payload
+         to the output buffer but forgot to remove payload allocation.  That
+         effectively doubled payload size and add zero'ed or random bytes.
+         Makes the following pipeline work again:
+         gst-launch-1.0 -v audiotestsrc wave=2 ! gsmenc ! rtpgsmpay ! rtpgsmdepay ! gsmdec ! autoaudiosink
+         https://bugzilla.gnome.org/show_bug.cgi?id=784616
+
+2017-07-01 18:57:47 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: segment seek position is expressed in buffer time
+         ... so it need not be corrected again for stream start
+
+2017-07-09 10:54:27 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/avi/gstavidemux.c:
+         avidemux: provide average bitrate tag
+
+2017-07-07 23:49:44 -0700  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
+
+       * tests/examples/v4l2/v4l2src-renegotiate.c:
+         examples: v4l2: fix wrong initializations brought by 4e8ad583022671c5
+         https://bugzilla.gnome.org/show_bug.cgi?id=682770
+
+2015-02-27 13:03:42 -0300  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/examples/v4l2/Makefile.am:
+       * tests/examples/v4l2/meson.build:
+       * tests/examples/v4l2/v4l2src-renegotiate.c:
+         examples: v4l2: add example for v4l2src renegotiation
+         Based on work from Thiago Santos <thiagoss@osg.samsung.com>
+         https://bugzilla.gnome.org/show_bug.cgi?id=682770
+
+2017-07-07 11:58:10 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: find python3 via python3 module
+         https://bugzilla.gnome.org/show_bug.cgi?id=783198
+
+2017-07-05 14:44:41 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/Makefile.am:
+         tests: rtpbin: fix build in uninstalled setup
+
+2017-07-04 17:42:25 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtpbin.c:
+         rtpsession: Send EOS if all internal sources sent bye
+         The ones which are not internal should not matter, and we should
+         wait for all sources to have sent their BYEs.
+         And add unit test
+         https://bugzilla.gnome.org/show_bug.cgi?id=773218
+
+2017-07-04 12:24:41 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: Only send EOS if all sources have been marked bye
+         Now that multiple sender RTPSource can share the same RTPSession, we
+         must not send an EOS unless they're all marked bye.
+
+2017-07-04 11:49:29 -0400  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * ext/libcaca/gstcacasink.c:
+         caca: Do not include, unused, sys/time.h
+         Which moreover makes building on windows (mingw/msvc) fail:
+         https://ci.appveyor.com/project/thiblahute/gst-build-ge9m5
+
+2017-07-03 11:47:13 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtprtxreceive.c:
+         rtprtxreceive: Add memory and boudary checks
+         This element was not checking if mapping the RTP buffer and the payload
+         worked, and was not checking if the RTX payload was large enough.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784484
+
+2017-07-04 14:58:00 +0900  Seungha Yang <sh.yang@lge.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Unset limit on the number of connection if soup session sharing is used
+         Soup allows only up to two connections per host in a session,
+         if we use default value. When session sharing is used, however,
+         more connections might be required in a session.
+         (e.g., multi-audio adaptive streaming case)
+         https://bugzilla.gnome.org/show_bug.cgi?id=784495
+
+2017-07-03 20:27:29 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: fix use-after-free on seek event
+         Get seqnum before unreffing the seek event.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784486
+
+2017-07-01 18:59:14 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: robustify time tracking for sparse subtitle stream
+
+2017-07-01 18:59:07 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: correctly track chunk size of subtitle stream
+         ... thereby ensuring correct chunk offset tracking for all streams.
+
+2017-06-27 15:59:18 +0100  Julien Isorce <jisorce@oblong.com>
+
+       * gst/rtpmanager/rtpstats.h:
+         rtpstats: fix assertion 'denom > 0' failed
+         gst_util_uint64_scale_int takes a gint as denom parameter
+         whereas ctx->clock_rate is a guint32.
+         It happens when gst_rtp_packet_rate_ctx_reset set clock_rate
+         to -1.
+         So just define clock_rate as gint like it is done in rtpsource.h
+         https://bugzilla.gnome.org/show_bug.cgi?id=784250
+
+2017-06-28 14:05:27 -0500  Matt Fischer <matt.fischer@garmin.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2: Block recursive calls to resurect_buffer
+         When resurrecting a buffer, the subsequent free call can result
+         in the group-released handler being called again, which causes
+         a recursive loop.  This patch blocks the signal handler during
+         the time that it executes, ensuring that the loop will not occur.
+         https://bugzilla.gnome.org/show_bug.cgi?id=759292
+
+2017-06-20 16:39:36 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+       * tests/check/elements/souphttpsrc.c:
+         tests: souphttpsrc: Avoid deprecated ssl-ca-file property
+         SoupSession's ssl-ca-file property is deprecated. Use the recommended
+         tls-database property.
+         This is a bit more complex as it requires creating a GTlsFileDatabase
+         object for an absolute (!) path to the CA certificates file.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784005
+
+2017-06-20 16:37:55 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+       * tests/check/elements/souphttpsrc.c:
+         tests: souphttpsrc: Avoid deprecated server ssl properties
+         The ssl-cert-file and ssl-key-file properties are deprecated. Use the
+         soup_server_set_ssl_cert_file function to load the files.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784005
+
+2017-06-20 16:34:41 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+       * tests/check/elements/souphttpsrc.c:
+         tests: souphttpsrc: Make ssl_cert/key_file static
+         Just a bit of cleanup.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784005
+
+2017-06-20 16:28:35 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+       * tests/files/test-cert.pem:
+         tests: souphttpsrc: Update test-cert.pem
+         Recent GnuTLS disregards the Common Name and only looks at the Subject
+         Alternative Name extension. Since our test-cert has no SAN extension,
+         validation fails.
+         Generate a new certificate with SAN. In addition to 127.0.0.1, for good
+         measure make it valid for localhost and ::1, too.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784005
+
+2017-06-29 15:22:39 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Allow any type of proxy
+         Currently we only allowed HTTP proxy. Don't filter for the scheme, just check
+         if it looks like an URI. Soup will warn if the URI is invalid or if
+         proxy protocol is not supported. This enables using SOCKS 4/5 which is
+         directly implemented into GIO.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783012
+
+2017-05-24 15:07:51 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: increase by one the number of allocated buffers
+         Increasing this number fix a buffer starvation problem I'm hitting
+         with a "v4l2src ! kmssink" pipeline.
+         kmssink requests 2 buffer as it keeps a reference on the last rendered
+         one. So we were allocating 3 buffers for the pipeline.
+         Once the first 2 buffers have been pushed we ended up with:
+         - one buffer queued in v4l2
+         - one being pushed
+         - one kept as last rendered
+         If this 3rd buffer is released after that v4l2 used the first one to
+         capture we end up with a buffer starvation problem as no buffer is currently
+         queued in v4l2 for capture.
+         Fixing this by adding one extra buffer to the pipeline so when one
+         buffer is being pushed downstream the other can already be queued to
+         capture the next frame.
+         We were already adding 3 buffers if downstream didn't reply to the
+         allocation query. I reduced this number to 2 to compensate the extra
+         buffer which is now always added.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783049
+
+2017-06-29 18:59:58 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Create send/recv mutexes once, not on every connect()
+         Also fixes a crash caused by freeing an uninitialized mutex in an error
+         case.
+         https://bugzilla.gnome.org//show_bug.cgi?id=784282
+
+2017-06-27 18:20:17 -0500  Matt Fischer <matt.fischer@garmin.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+         v4l2allocator: Fix memory leak with dmabuf
+         This patch fixes a memory leak that is caused if the dmabuf file
+         descriptor dup fails.  Previously, _cleanup_failed_alloc() would
+         not unref the memory because mems_allocated had not yet been
+         incremented.
+         https://bugzilla.gnome.org/show_bug.cgi?id=784302
+
+2017-06-28 19:46:04 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/isomp4/qtdemux_types.c:
+         qtdemux: specify '_swr' atom as a container atom
+         ... so it is parsed as an mp4 style metadata atom as written by muxer
+
+2017-06-27 20:14:57 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/isomp4/atoms.c:
+         qtmux: initialize mdhd language code as undefined
+
+2017-06-22 15:34:42 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.h:
+         rtpjitterbuffer: Add a faststart-min-packets property
+         When set this property will allow the jitterbuffer to start delivering
+         packets as soon as N most recent packets have consecutive seqnum. A
+         faststart-min-packets of zero disables this feature. This heuristic is
+         also used in rtpsource which implements the probation mechanism and a
+         similar heuristic is used to handle long gaps.
+         https://bugzilla.gnome.org/show_bug.cgi?id=769536
+
+2017-06-23 16:18:57 -0400  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * meson.build:
+         meson: Allow using glib as a subproject
+
+2017-06-26 11:09:48 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/audiofx/meson.build:
+       * tests/examples/cairo/meson.build:
+       * tests/examples/equalizer/meson.build:
+       * tests/examples/jack/meson.build:
+       * tests/examples/level/meson.build:
+       * tests/examples/meson.build:
+       * tests/examples/rtp/meson.build:
+       * tests/examples/shapewipe/meson.build:
+       * tests/examples/spectrum/meson.build:
+       * tests/examples/v4l2/meson.build:
+       * tests/meson.build:
+         meson: build examples
+         https://bugzilla.gnome.org/show_bug.cgi?id=784134
+
+2017-06-26 09:47:55 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: fix with-package-name option
+         https://bugzilla.gnome.org/show_bug.cgi?id=784082
+
+2017-06-26 09:38:46 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/icles/meson.build:
+         meson: tests: icles: simplify build file
+
+2017-06-26 00:22:05 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/icles/meson.build:
+       * tests/meson.build:
+         meson: build tests/icles/
+         https://bugzilla.gnome.org/show_bug.cgi?id=784134
+
+2017-06-19 21:13:42 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: correctly calculate overall first_ts to ensure stream sync
+         ... by minding and compensating for the dts_adjustment that may have
+         been introduced in the PTS timeline.
+
+2017-06-10 15:14:41 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/matroska/matroska-demux.c:
+       * gst/matroska/matroska-demux.h:
+         matroskademux: track highest known cluster position and time
+         ... to use as a fallback initial duration estimate and to provide for
+         interpolation when scanning for position.
+
+2017-06-10 13:46:20 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: improve and simplify searching for cluster and position
+         ... avoiding inefficiency proportional to file size
+
+2017-06-08 16:55:29 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: increase chunk size when scanning for cluster
+
+2017-06-08 16:39:06 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * gst/matroska/matroska-demux.c:
+         matroskademux: maintain variable state when searching for position
+         ... so skipping to next cluster happens efficiently
+
+2017-06-24 00:21:00 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/meson.build:
+       * ext/raw1394/meson.build:
+         meson: build raw1394 plugin
+         https://bugzilla.gnome.org/show_bug.cgi?id=784134
+
+2017-06-23 23:50:00 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/aalib/meson.build:
+       * ext/meson.build:
+         meson: build aalib plugin
+         https://bugzilla.gnome.org/show_bug.cgi?id=784134
+
+2017-06-23 23:38:27 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/libcaca/meson.build:
+       * ext/meson.build:
+         meson: build caca plugin
+         https://bugzilla.gnome.org/show_bug.cgi?id=784134
+
+2017-06-23 20:01:59 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+         docs: update for git master
+
+2017-06-23 19:52:04 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * README:
+       * configure.ac:
+       * meson.build:
+       * po/POTFILES.in:
+       * sys/Makefile.am:
+       * sys/meson.build:
+       * sys/sunaudio/Makefile.am:
+       * sys/sunaudio/gstsunaudio.c:
+       * sys/sunaudio/gstsunaudiomixer.c:
+       * sys/sunaudio/gstsunaudiomixer.h:
+       * sys/sunaudio/gstsunaudiomixerctrl.c:
+       * sys/sunaudio/gstsunaudiomixerctrl.h:
+       * sys/sunaudio/gstsunaudiomixeroptions.c:
+       * sys/sunaudio/gstsunaudiomixeroptions.h:
+       * sys/sunaudio/gstsunaudiomixertrack.c:
+       * sys/sunaudio/gstsunaudiomixertrack.h:
+       * sys/sunaudio/gstsunaudiosink.c:
+       * sys/sunaudio/gstsunaudiosink.h:
+       * sys/sunaudio/gstsunaudiosrc.c:
+       * sys/sunaudio/gstsunaudiosrc.h:
+       * tests/check/Makefile.am:
+       * tests/check/elements/.gitignore:
+       * tests/check/elements/sunaudio.c:
+       * tests/check/meson.build:
+         sys: remove sunaudio plugin
+         Even though hooked up to the build system, it's clear that no one
+         has ever built or used this with GStreamer 1.x. It wants to link
+         against libgstinterfaces, which no longer exists. And uses 0.10-style
+         raw audio caps. And the last meaningful change was done in 2009.
+         Let's just remove it.
+
+2017-06-23 19:35:28 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/meson.build:
+       * sys/oss4/meson.build:
+         meson: build oss4 plugin
+         https://bugzilla.gnome.org/show_bug.cgi?id=784134
+
+2017-06-23 19:23:52 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * sys/meson.build:
+       * sys/oss/meson.build:
+         meson: build oss plugin
+         https://bugzilla.gnome.org/show_bug.cgi?id=784134
+
+2017-06-22 11:38:56 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Actually use the receive lock when receiving, not the send lock
+
+2017-06-22 01:01:40 +1000  Jan Schmidt <jan@centricular.com>
+
+       * tests/examples/qt/qmlsink/CMakeLists.txt:
+         qmlsink example: Add CMakeLists.txt
+         Make it possible to build using cmake instead of qmake
+
+2017-06-22 01:01:40 +1000  Jan Schmidt <jan@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         qt: Remove misleading reference to GTK in qtitem.cc
+
+2017-06-15 11:46:54 -0400  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * ext/flac/gstflactag.c:
+         flactag: Fix warning with the newly added GstStateChange values
+         https://bugzilla.gnome.org/show_bug.cgi?id=783798
+
+2017-06-15 19:09:26 +0200  Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: do not checksum the stream id
+         https://bugzilla.gnome.org/show_bug.cgi?id=783307
+
+2017-06-15 23:31:24 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmuxmap.c:
+       * gst/isomp4/qtdemux.c:
+         qtmux: add support for muxing PNG
+         Demuxer already supported it.
+
+2017-06-15 10:40:51 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: Use a mutex for protecting against concurrent send/receives
+         We currently send data to the RTSP connection from multiple threads:
+         whenever a command is to be handled and whenever RTCP is generated. This
+         can cause data corruption or worse if both happen at the same time.
+         As such, protect gst_rtsp_connection_send() and gst_rtsp_connection_receive()
+         calls with a mutex. While this means that we hold a mutex during the IO
+         operation, this is not actually a problem as the IO operation can be
+         interrupted (gst_rtsp_connection_flush()) at any time and is blocking by
+         itself anyway.
+
+2017-06-15 11:50:44 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+         qtmux: Un-merge the last two stsc entries after serializing
+         The last entry will most likely get new samples added to it in "robust"
+         muxing mode, changing the samples_per_chunk and thus making it wrong to
+         keep the last two entries merged. It will run into an assertion later
+         when adding a new sample to the chunk.
+         Thanks to gdiener@cardinalpeak.com for the analysis of the bug and
+         proposal for a solution.
+
+2017-06-14 00:09:25 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: Actually clip to upstream size instead of size of the data chunk
+         There might be other chunks after the data chunk, so clipping the chunk
+         size with the data size can lead to a negative number and all following
+         calculations go wrong and cause crashes or worse.
+         This was introduced in 3ac119bbe2c360e28c087cf3852ea769d611b120.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783760
+
+2017-06-13 17:40:19 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmux: Drop allocation queries
+         They can cause us to deadlock, while we're waiting for a new frame and
+         upstream is waiting for the allocation query to be answered before
+         sending a frame
+         https://bugzilla.gnome.org/show_bug.cgi?id=783753
+
+2017-06-01 02:03:27 +0200  Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+       * gst/rtsp/gstrtspsrc.h:
+         rtspsrc: uniquify stream ids
+         https://bugzilla.gnome.org/show_bug.cgi?id=783307
+
+2017-06-07 12:47:59 -0400  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * tests/check/meson.build:
+         meson: Do not use path separator in test names
+         Avoiding warnings like:
+         WARNING: Target "elements/audioamplify" has a path separator in its name.
+
+2017-06-06 11:29:29 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/examples/v4l2/camctrl.c:
+         Fix v4l2 example
+
+2017-06-05 16:55:13 +0900  Jimmy Ohn <yongjin.ohn@lge.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: remove not needed code
+         remove not needed code about res variable.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783422
+
+2017-06-02 14:01:17 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Make sure min_buffers is valid
+         When upstream does no use the v4l2videoenc pool, we need to activate
+         that internal pool. Though, we relied the driver to provide a minimum
+         required buffer, which Qualcomm Venus driver don't currently provide.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783361
+
+2017-06-02 11:30:15 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph265depay.c:
+         rtph265depay: fix caps leak
+
+2017-05-26 16:30:06 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: simplify buffer accumulation control flow
+         There is no difference between pushing out a buffer directly
+         with gst_rtp_base_depayload_push() and returning it from the
+         process function. The base class will just call _depayload_push()
+         on the returned buffer as well.
+         So instead of marshalling buffers through three layers and back,
+         just push them from one place in handle_nal() and always return
+         NULL from the process vfunc. This simplifies the code a little.
+         Also rename _push_fragmentation_unit() to _finish_fragmentation_unit()
+         for clarity. Push sounds like it means being pushed out, whereas
+         it might just be pushed into an adapter.
+         This change has the side-effect that multiple NALs in a single STAP
+         (such as SPS/PPS) may no longer be pushed out as a single buffer if
+         we output NALs in byte-stream format (i.e. not aggregate AUs), but
+         that shouldn't really make any difference to anyone.
+
+2017-05-30 22:23:10 +0200  Juan Navarro <juan.navarro@gmx.es>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: print value of unknown RTCP Payload Type
+         This adds printing the actual value of any unknown RTCP PT
+         to the already existing WARNING log message.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783248
+
+2017-05-26 17:52:19 +0200  Edward Hervey <edward@centricular.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Don't leak VideoCodecState
+         CID #1409852
+
+2017-05-26 17:48:01 +0200  Edward Hervey <edward@centricular.com>
+
+       * ext/dv/gstdvdemux.c:
+         dvdemux: Remove un-needed variable check
+         if pad wasn't present by now everything would have broken before
+         CID #1409854
+
+2017-05-25 15:26:37 +0200  Piotr Drąg <piotrdrag@gmail.com>
+
+       * po/POTFILES.in:
+         po: update POTFILES
+         https://bugzilla.gnome.org/show_bug.cgi?id=783093
+
+2017-05-25 10:09:04 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * ext/qt/qtwindow.cc:
+         glframebuffer: check frame buffer status need use specific fbo target
+         https://bugzilla.gnome.org/show_bug.cgi?id=783065
+
+2017-05-24 14:19:27 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videoenc.c:
+         v4l2videoenc: Remove unused function
+
+2017-05-21 15:29:11 +0200  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/ext/types-compat.h:
+         v4l2: Don't redefine __bitwise if already set
+         https://bugzilla.gnome.org/show_bug.cgi?id=728438
+
+2017-05-23 14:40:56 -0400  Ayaka <ayaka@soulik.info>
+
+       * sys/v4l2/Makefile.am:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2h264enc.c:
+       * sys/v4l2/gstv4l2h264enc.h:
+       * sys/v4l2/gstv4l2videoenc.c:
+       * sys/v4l2/gstv4l2videoenc.h:
+       * sys/v4l2/meson.build:
+         v4l2: Add Video Encoder support
+         This implements H264 encoding support using generic V4L2 interface. It is
+         reported to work with Samsung MFC driver, IXM.6 CODA driver and
+         Qualcomm mainline Venus driver. Other platform should be supported as
+         none of this work is platform specific.
+         The implementation consist of a GstV4l2VideoEnc base class, which
+         implements the core streaming functionality. This base class is implemented
+         by GstV4l2H264Enc class that implements the caps negotiation specific to
+         H264 profiles and level. This implementation supports hardware with multiple
+         H264 encoder. Though, to make it simplier to use, the first discovered H264
+         encoder will be named v4l2h264enc. Other encoder found during discovery will
+         have a unique name like v4l2video0h264enc.
+         This work is the combined work of multiple developpers in the last 3
+         years. Thanks to all of the contributors:
+         Ayaka <ayaka@soulik.info>
+         Frédéric Sureau <frederic.sureau@vodalys.com>
+         Jean-Michel Hautbois <jean-michel.hautbois@veo-labs.com>
+         Nicolas Dufresne <nicolas.dufresne@collabora.com>
+         Pablo Anton <pablo.anton@vodalys-labs.com>
+         https://bugzilla.gnome.org/show_bug.cgi?id=728438
+
+2017-05-23 14:36:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Remove unused forward declaration
+         https://bugzilla.gnome.org/show_bug.cgi?id=728438
+
+2015-10-05 16:30:46 +0100  Ayaka <ayaka@soulik.info>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2pool: Fix wrong error message
+         https://bugzilla.gnome.org/show_bug.cgi?id=728438
+
+2015-10-05 16:20:19 +0100  Ayaka <ayaka@soulik.info>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: increase pre-allocated encoded buffer size
+         As of today, the MFC encoder often need to exceed that 1 MB
+         size for encoded buffer we fixed earlier for decoding.
+         https://bugzilla.gnome.org/show_bug.cgi?id=728438
+
+2017-05-24 16:32:30 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpopusdepay.c:
+         rtpopusdepay: minor perf improvements
+         Use the ::process_rtp_packet() vfunc to avoid mapping the
+         RTP buffer twice.
+         gst_rtp_buffer_get_payload_buffer() returns a new sub-buffer
+         which will always be writable, so no need to make it writable.
+
+2017-05-24 16:14:54 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtpopusdepay.c:
+       * gst/rtp/gstrtpopuspay.c:
+         rtp: opus: use existing utility funcs for copying/dropping metas
+         We had our own copies of those while the code was in -bad, but now
+         we can use the existing utility functions instead of re-implementing
+         them.
+
+2017-05-24 12:57:10 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtp.c:
+       * gst/rtp/gstrtpL16depay.c:
+       * gst/rtp/gstrtpL24depay.c:
+       * gst/rtp/gstrtpac3depay.c:
+       * gst/rtp/gstrtpac3pay.c:
+       * gst/rtp/gstrtpamrdepay.c:
+       * gst/rtp/gstrtpamrpay.c:
+       * gst/rtp/gstrtpbvdepay.c:
+       * gst/rtp/gstrtpceltdepay.c:
+       * gst/rtp/gstrtpceltpay.c:
+       * gst/rtp/gstrtpg722depay.c:
+       * gst/rtp/gstrtpg723pay.c:
+       * gst/rtp/gstrtpg726depay.c:
+       * gst/rtp/gstrtpg729depay.c:
+       * gst/rtp/gstrtpg729pay.c:
+       * gst/rtp/gstrtpgsmdepay.c:
+       * gst/rtp/gstrtpgsmpay.c:
+       * gst/rtp/gstrtph261depay.c:
+       * gst/rtp/gstrtph261pay.c:
+       * gst/rtp/gstrtph263depay.c:
+       * gst/rtp/gstrtph263pay.c:
+       * gst/rtp/gstrtph263pdepay.c:
+       * gst/rtp/gstrtph263ppay.c:
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph264pay.c:
+       * gst/rtp/gstrtph265depay.c:
+       * gst/rtp/gstrtph265pay.c:
+       * gst/rtp/gstrtpilbcdepay.c:
+       * gst/rtp/gstrtpj2kdepay.c:
+       * gst/rtp/gstrtpj2kpay.c:
+       * gst/rtp/gstrtpjpegdepay.c:
+       * gst/rtp/gstrtpjpegpay.c:
+       * gst/rtp/gstrtpmp4adepay.c:
+       * gst/rtp/gstrtpmp4apay.c:
+       * gst/rtp/gstrtpmp4vdepay.c:
+       * gst/rtp/gstrtpmp4vpay.c:
+       * gst/rtp/gstrtpmpadepay.c:
+       * gst/rtp/gstrtpmpapay.c:
+       * gst/rtp/gstrtpmpvdepay.c:
+       * gst/rtp/gstrtpmpvpay.c:
+       * gst/rtp/gstrtppcmadepay.c:
+       * gst/rtp/gstrtppcmudepay.c:
+       * gst/rtp/gstrtpqcelpdepay.c:
+       * gst/rtp/gstrtpsbcdepay.c:
+       * gst/rtp/gstrtpsbcpay.c:
+       * gst/rtp/gstrtpsirendepay.c:
+       * gst/rtp/gstrtpspeexdepay.c:
+       * gst/rtp/gstrtpspeexpay.c:
+       * gst/rtp/gstrtpsv3vdepay.c:
+       * gst/rtp/gstrtptheorapay.c:
+       * gst/rtp/gstrtputils.c:
+       * gst/rtp/gstrtputils.h:
+       * gst/rtp/gstrtpvorbispay.c:
+       * gst/rtp/gstrtpvp8depay.c:
+       * gst/rtp/gstrtpvp8pay.c:
+       * gst/rtp/gstrtpvp9depay.c:
+       * gst/rtp/gstrtpvp9pay.c:
+       * gst/rtp/gstrtpvrawdepay.c:
+       * gst/rtp/gstrtpvrawpay.c:
+         rtp: cache meta tag quarks and add more utility functions for metas
+         Every g_quark_from_static_string() is a hash table lookup serialised
+         on the global quark lock in GLib. Let's just look up the two quarks
+         we need once and cache them locally for future use. While we're at it,
+         add new utility functions for the two most commonly used tags
+         (audio + video). Make first argument a gpointer so we don't have to
+         cast and make the code ugly. These are used for logging purposes
+         only anyway.
+
+2017-05-24 11:33:05 +0530  vijay <vijay.palaniswamy@in.bosch.com>
+
+       * gst/audioparsers/gstaacparse.c:
+         aacparse : Fix, Caps were not set while reusing aacparse
+         While reusing aacparse caps were not set.This fix enables aacparse to reuse in same pipeline.
+         https://bugzilla.gnome.org/show_bug.cgi?id=783027
+
+2017-05-21 17:45:34 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * Makefile.am:
+       * config.h.meson:
+       * meson.build:
+         meson: don't need config.h.meson any longer
+
+2017-05-21 15:26:12 +0200  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * ext/qt/gstqsgtexture.cc:
+       * ext/qt/gstqsgtexture.h:
+         qmlglsink: Add dummy texture that is shown as placeholder for NULL buffers
+         https://bugzilla.gnome.org/show_bug.cgi?id=782917
+
+2017-04-24 16:55:22 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * ext/shout2/gstshout2.c:
+       * ext/shout2/gstshout2.h:
+         shout2send: use non-blocking I/O and a configurable network operations timeout
+         This allows timing out on network errors much earlier
+         (currently it takes ~15min to timeout) and we can still
+         unlock and change state in the meantime.
+         https://bugzilla.gnome.org/show_bug.cgi?id=571722
+
+2017-05-21 10:37:19 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/taglib/meson.build:
+       * meson.build:
+         meson: make C++ compiler optional
+         It's only needed for the taglib plugin which is optional.
+
+2017-05-21 10:33:43 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/multifile/multifile.vproj:
+         multifile: remove some cruft
+
+2017-05-20 17:09:52 +0200  Josep Torra <jtorra@oblong.com>
+
+       * sys/osxaudio/gstosxcoreaudio.c:
+         osxaudio: fixes playback of mono streams with no channel-mask field in caps
+         Fixes a negotiation error seen when trying to playback of a .MOV file with
+         a mono AAC audio stream decoded by avcdec_aac that doesn't set channel-mask
+         field but sink was requiring channel-mask=0x3.
+
+2015-09-06 20:49:59 +0530  Ravi Kiran K N <ravi.kiran@samsung.com>
+
+       * ext/dv/gstdvdemux.c:
+       * ext/dv/gstdvdemux.h:
+         dvdemux: Push tag event to both pads
+         Tags are pushed to "videosrcpad"/"audiosrcpad" in
+         gst_dvdemux_add_pad() method, however they will be NULL
+         in this method, hence tags are not pushed.
+         Instead, send tag event to "pad" created gst_dvdemux_add_pad().
+         Signal no-more-pads when both pads are created
+         https://bugzilla.gnome.org/show_bug.cgi?id=743657
+
+2017-05-20 14:53:42 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+       * meson_options.txt:
+       * tests/check/elements/autodetect.c:
+         meson: add options to set package name and origin
+         https://bugzilla.gnome.org/show_bug.cgi?id=782172
+
+2017-05-20 11:40:33 +0100  Luis de Bethencourt <luisbg@osg.samsung.com>
+
+       * gst/multifile/gstmultifilesink.c:
+         multifilesink: fix property name in example pipeline
+         Since the move from CVS the property name of the documentation example
+         has been filename instead of location. Users trying the gst-launch
+         command as is will get:
+         no property name "filename" in element
+         Fixing it.
+
+2017-05-20 11:13:40 +0200  Josep Torra <jtorra@oblong.com>
+
+       * sys/osxvideo/cocoawindow.m:
+       * sys/osxvideo/osxvideosink.m:
+         osxvideo: fix macOS 10.12 deprecation warnings
+         Add #defines to allow older versions of macOS to use the new constant names.
+
+2017-05-13 09:05:57 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux_types.c:
+         isomp4: Safely ignore [skip] atoms
+         Instead of warning about them
+
+2017-05-18 15:23:14 +0300  Simon Himmelbauer <shimmelbauer@toolsonair.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qt: Use GST_GL_HAVE_PLATFORM_CGL instead of GST_GL_HAVE_PLATFORM_COCOA
+         The latter is not used/available anymore since years. Also fix a typo
+         in the include path for the Cocoa GL display header.
+
+2017-05-18 15:10:30 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+       * ext/soup/gstsouphttpsrc.h:
+         souphttpsrc: Make session sharing thread-safe on our side
+         https://bugzilla.gnome.org/show_bug.cgi?id=780140
+
+2017-05-18 10:53:48 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/audiofx/gststereo.c:
+         stereo: fix typo in plugin description
+
+2017-05-18 10:43:19 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/shout2/gstshout2.c:
+       * gst/audiofx/gstscaletempoplugin.c:
+         Fix up package name and origin in some plugins
+
+2017-05-15 19:51:47 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+       * sys/v4l2/gstv4l2bufferpool.c:
+         gst: Clear floating flag in constructor of all GstObject subclasses that are not owned by any parent
+         https://bugzilla.gnome.org/show_bug.cgi?id=743062
+
+2017-05-15 14:22:34 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/raw1394/gst1394clock.c:
+         1394: Sink the clock reference in the constructor
+         This is now needed as GstClock does not do that internally anymore,
+         because that broke bindings.
+         https://bugzilla.gnome.org/show_bug.cgi?id=743062
+
+2017-05-17 10:58:05 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qml: Add EGL platform support for x11 backend
+         Add support for EGL platform when x11 is available. This can work
+         e.g. on imx6 platform.
+         https://bugzilla.gnome.org/show_bug.cgi?id=782718
+
+2017-04-28 23:05:35 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/pulse/pulseutil.h:
+         pulse: Accept MPEG 1 layer 3 version 2.5
+         https://bugzilla.gnome.org/show_bug.cgi?id=781929
+
+2017-05-16 13:50:16 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * configure.ac:
+       * ext/aalib/Makefile.am:
+       * ext/cairo/Makefile.am:
+       * ext/dv/Makefile.am:
+       * ext/flac/Makefile.am:
+       * ext/gdk_pixbuf/Makefile.am:
+       * ext/jack/Makefile.am:
+       * ext/jpeg/Makefile.am:
+       * ext/libcaca/Makefile.am:
+       * ext/libpng/Makefile.am:
+       * ext/pulse/Makefile.am:
+       * ext/raw1394/Makefile.am:
+       * ext/shout2/Makefile.am:
+       * ext/soup/Makefile.am:
+       * ext/speex/Makefile.am:
+       * ext/taglib/Makefile.am:
+       * ext/vpx/Makefile.am:
+       * ext/wavpack/Makefile.am:
+       * gst/alpha/Makefile.am:
+       * gst/apetag/Makefile.am:
+       * gst/audiofx/Makefile.am:
+       * gst/audioparsers/Makefile.am:
+       * gst/auparse/Makefile.am:
+       * gst/autodetect/Makefile.am:
+       * gst/avi/Makefile.am:
+       * gst/cutter/Makefile.am:
+       * gst/debugutils/Makefile.am:
+       * gst/deinterlace/Makefile.am:
+       * gst/dtmf/Makefile.am:
+       * gst/effectv/Makefile.am:
+       * gst/equalizer/Makefile.am:
+       * gst/flv/Makefile.am:
+       * gst/flx/Makefile.am:
+       * gst/goom/Makefile.am:
+       * gst/goom2k1/Makefile.am:
+       * gst/icydemux/Makefile.am:
+       * gst/id3demux/Makefile.am:
+       * gst/imagefreeze/Makefile.am:
+       * gst/interleave/Makefile.am:
+       * gst/isomp4/Makefile.am:
+       * gst/law/Makefile.am:
+       * gst/level/Makefile.am:
+       * gst/matroska/Makefile.am:
+       * gst/monoscope/Makefile.am:
+       * gst/multifile/Makefile.am:
+       * gst/multipart/Makefile.am:
+       * gst/replaygain/Makefile.am:
+       * gst/rtp/Makefile.am:
+       * gst/rtpmanager/Makefile.am:
+       * gst/rtsp/Makefile.am:
+       * gst/shapewipe/Makefile.am:
+       * gst/smpte/Makefile.am:
+       * gst/spectrum/Makefile.am:
+       * gst/udp/Makefile.am:
+       * gst/videobox/Makefile.am:
+       * gst/videocrop/Makefile.am:
+       * gst/videofilter/Makefile.am:
+       * gst/videomixer/Makefile.am:
+       * gst/wavenc/Makefile.am:
+       * gst/wavparse/Makefile.am:
+       * gst/y4m/Makefile.am:
+       * sys/directsound/Makefile.am:
+       * sys/oss/Makefile.am:
+       * sys/oss4/Makefile.am:
+       * sys/osxaudio/Makefile.am:
+       * sys/osxvideo/Makefile.am:
+       * sys/sunaudio/Makefile.am:
+       * sys/v4l2/Makefile.am:
+       * sys/waveform/Makefile.am:
+       * sys/ximage/Makefile.am:
+         Remove plugin specific static build option
+         Static and dynamic plugins now have the same interface. The standard
+         --enable-static/--enable-shared toggle are sufficient.
+
+2017-05-16 14:07:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/twolame/Makefile.am:
+         Remove plugin specific static build option
+         Static and dynamic plugins now have the same interface. The standard
+         --enable-static/--enable-shared toggle are sufficient.
+
+2017-05-16 14:07:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/lame/Makefile.am:
+         Remove plugin specific static build option
+         Static and dynamic plugins now have the same interface. The standard
+         --enable-static/--enable-shared toggle are sufficient.
+
+2017-05-16 14:07:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/mpg123/Makefile.am:
+         Remove plugin specific static build option
+         Static and dynamic plugins now have the same interface. The standard
+         --enable-static/--enable-shared toggle are sufficient.
+
+2017-05-16 14:05:52 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/Makefile.am:
+         Remove plugin specific static build option
+         Static and dynamic plugins now have the same interface. The standard
+         --enable-static/--enable-shared toggle are sufficient.
+
+2017-05-16 14:05:52 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/qt/Makefile.am:
+         Remove plugin specific static build option
+         Static and dynamic plugins now have the same interface. The standard
+         --enable-static/--enable-shared toggle are sufficient.
+
+2017-05-12 17:53:57 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Add alignment-threshold argument
+         If a non-reference stream is behind the reference stream by an amount of
+         time smaller than the alignment threshold (in nsec), it counts as being
+         after it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=782563
+
+2017-05-16 12:56:15 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Do not check timecode data for mp4 container
+         Timecode trak is only supported for mov right now, not for mp4. That
+         code would otherwise create an invalid trak if the muxed video contained
+         timecode metadata.
+         https://bugzilla.gnome.org/show_bug.cgi?id=782684
+
+2017-05-11 20:01:15 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: When accepting renegotiation, just return TRUE and change nothing
+         We only accept new caps if they are basically the same. We don't want to
+         reset anything as if the caps are new, otherwise various state could get
+         out of sync with the current run.
+
+2017-05-11 19:21:22 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: In prefill mode, only pad buffers with > 0 sized memories as needed
+         Adding a 0-byte memory has not much effect.
+         Also add some debug output.
+
+2017-05-10 15:58:41 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Lateness is in QT timescale, diff in GstClockTime
+         Print the right one in debug output to get meaningful numbers.
+
+2017-05-10 14:31:40 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Error out if a gap edit list has to be written in prefill mode
+         We don't have any space reserved for this in the moov and the
+         pre-finalized moov would have broken A/V synchronization. Error out here
+         now
+
+2017-05-10 11:42:09 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Calculate with reserved moov size instead of last moov size
+         We have some padding added after the initial moov, so a bigger updated
+         moov can be handled to some degree and is expected. Previously we just
+         ignored the padding and errored out in cases when the padding would've
+         just been enough.
+
+2017-05-10 11:12:23 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Error out directly if sending filler data results in a flow error
+         CID 1405994
+
+2017-05-09 16:02:43 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: In prefill mode, handle the case when only the first chunk was ever used
+
+2017-05-09 09:47:10 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/qt/gstplugin.cc:
+         qmlgl: Make the plugin name match the pugin file name
+
+2017-03-16 15:12:07 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Use a in-memory cookie jar by default in sessions we created
+         This ensures that cookies are stored and used as set by the server, and
+         shared with other souphttpsrc that use the same SoupSession.
+         https://bugzilla.gnome.org/show_bug.cgi?id=780140
+
+2017-03-16 13:58:41 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+       * ext/soup/gstsouphttpsrc.h:
+         souphttpsrc: Implement soup session sharing
+         souphttpsrc now shares its SoupSession with other elements in the
+         pipeline via GstContext if possible (session-wide settings are all the
+         defaults), or if the context was forced by the application.
+         This allows multiple souphttpsrcs to reuse connections, cookies, etc.
+         https://bugzilla.gnome.org/show_bug.cgi?id=780140
+
+2017-03-09 10:15:34 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Add new prefill recording mode
+         This sets up a moov with the correct sample positions beforehand and
+         only works with constant framerate, I-frame only streams.
+         Currently only support for ProRes and raw audio is implemented but
+         adding new codecs is just a matter of defining appropriate maximum frame
+         sizes.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781447
+
+2017-03-29 14:01:25 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Error out on discontinuities/gaps when muxing raw audio
+         When muxing raw audio, we have no way of storing timestamps but are just
+         storing a continuous stream of audio samples. If the difference between
+         the expected and the real timestamp becomes to big, we should error out
+         instead of silently creating files with wrong A/V sync.
+         https://bugzilla.gnome.org/show_bug.cgi?id=780679
+
+2017-05-09 11:41:25 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/vpx/gstvpxdec.c:
+         vpxdec: Set fb->priv to NULL after freeing just in case
+         https://bugzilla.gnome.org/show_bug.cgi?id=782359
+
+2017-05-08 15:22:00 +0000  Dustin Spicuzza <dustin@virtualroadside.com>
+
+       * sys/directsound/gstdirectsoundsink.c:
+       * sys/directsound/gstdirectsoundsink.h:
+         directsoundsink: Use GstClock API instead of Sleep() for waiting
+         It's more accurate and allows cancellation.
+         https://bugzilla.gnome.org/show_bug.cgi?id=773681
+
+2017-05-08 15:05:45 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/vpx/gstvp9dec.c:
+         vpx: fix build against older libvpx versions
+         Such as 1.3.0 as on raspbian.
+
+2017-05-03 23:23:10 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * sys/directsound/gstdirectsoundsink.c:
+         directsoundsink: Fix corner case causing large CPU usage
+         We were unnecessarily looping/goto-ing repeatedly when we had exactly
+         the amount of data as the free space, and also when the free space was
+         too small. This, as it turns out, is a very common scenario with
+         Directsound on Windows.
+         Fixes https://bugzilla.gnome.org/show_bug.cgi?id=773681
+         We have to do polling here because the event notification API that
+         Directsound exposes cannot be used with live playback since all events
+         must be registered in advance with the capture buffer, you cannot
+         add/remove them once playback has begun. Directsoundsrc had the same
+         problem.
+         See also: https://bugzilla.gnome.org/show_bug.cgi?id=781249
+
+2017-05-03 23:31:00 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * sys/directsound/gstdirectsoundsink.c:
+         directsoundsink: Clean up some debug logging
+         Don't need to print the function name, gstreamer does it for you.
+         https://bugzilla.gnome.org/show_bug.cgi?id=773681
+
+2017-05-06 22:30:20 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/matroska/matroska-ids.h:
+         matroskademux: improve index memory usage
+         Re-arrange order of index entry struct members to avoid padding
+         bytes in the middle of the struct, thus potentially reducing the
+         overall size of the struct and reducing memory used by the index.
+         On Linux x86_64 the size goes down from 32 bytes to 24 bytes for
+         each index entry.
+
+2017-05-04 18:59:14 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * configure.ac:
+       * meson.build:
+         Back to development
+
+=== release 1.12.0 ===
+
+2017-05-04 15:38:34 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.12.0
+
+2017-05-04 15:07:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * po/af.po:
+       * po/az.po:
+       * po/bg.po:
+       * po/ca.po:
+       * po/cs.po:
+       * po/da.po:
+       * po/de.po:
+       * po/el.po:
+       * po/en_GB.po:
+       * po/eo.po:
+       * po/es.po:
+       * po/eu.po:
+       * po/fi.po:
+       * po/fr.po:
+       * po/fur.po:
+       * po/gl.po:
+       * po/hr.po:
+       * po/hu.po:
+       * po/id.po:
+       * po/it.po:
+       * po/ja.po:
+       * po/lt.po:
+       * po/lv.po:
+       * po/mt.po:
+       * po/nb.po:
+       * po/nl.po:
+       * po/or.po:
+       * po/pl.po:
+       * po/pt_BR.po:
+       * po/ro.po:
+       * po/ru.po:
+       * po/sk.po:
+       * po/sl.po:
+       * po/sq.po:
+       * po/sr.po:
+       * po/sv.po:
+       * po/tr.po:
+       * po/uk.po:
+       * po/vi.po:
+       * po/zh_CN.po:
+       * po/zh_HK.po:
+       * po/zh_TW.po:
+         Update .po files
+
+2017-05-04 13:47:20 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * po/el.po:
+         po: Update translations
+
+2017-05-02 10:32:30 +0900  Seungha Yang <sh.yang@lge.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix crash on mss stream caused by invalid stsd entry access
+         Since mss has no moov, default stsd entry should be created with media-caps.
+         https://bugzilla.gnome.org/show_bug.cgi?id=782042
+
+=== release 1.11.91 ===
+
+2017-04-27 17:29:58 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.11.91
+
+2017-04-27 15:58:47 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * po/af.po:
+       * po/az.po:
+       * po/bg.po:
+       * po/ca.po:
+       * po/cs.po:
+       * po/da.po:
+       * po/de.po:
+       * po/el.po:
+       * po/en_GB.po:
+       * po/eo.po:
+       * po/es.po:
+       * po/eu.po:
+       * po/fi.po:
+       * po/fr.po:
+       * po/fur.po:
+       * po/gl.po:
+       * po/hr.po:
+       * po/hu.po:
+       * po/id.po:
+       * po/it.po:
+       * po/ja.po:
+       * po/lt.po:
+       * po/lv.po:
+       * po/mt.po:
+       * po/nb.po:
+       * po/nl.po:
+       * po/or.po:
+       * po/pl.po:
+       * po/pt_BR.po:
+       * po/ro.po:
+       * po/ru.po:
+       * po/sk.po:
+       * po/sl.po:
+       * po/sq.po:
+       * po/sr.po:
+       * po/sv.po:
+       * po/tr.po:
+       * po/uk.po:
+       * po/vi.po:
+       * po/zh_CN.po:
+       * po/zh_HK.po:
+       * po/zh_TW.po:
+         Update .po files
+
+2017-04-27 15:28:02 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * po/LINGUAS:
+       * po/el.po:
+       * po/fur.po:
+         po: Update translations
+
+2017-04-27 12:56:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't crash in debug output if stream==NULL
+         That case is correctly handled below but not in the debug output.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781270
+
+2017-04-25 17:11:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't perform seeks with inconsistent seek values
+         If gst_segment_do_seek() fails, we shouldn't try seeking on that
+         resulting segment but just error out. Crashes further down the line
+         otherwise.
+
+2017-04-24 20:27:49 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * common:
+         Automatic update of common submodule
+         From 60aeef6 to 48a5d85
+
+2017-04-24 17:31:04 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtp-payloading.c:
+         tests: rtp-payloading: add test for rtph264depay avc/byte-stream output
+         Make sure avc output doesn't contain SPS/PPS inline, but
+         byte-stream output does.
+
+2017-04-24 17:29:37 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: don't insert SPS/PPS inline for AVC output
+         SPS/PPS are in the caps in this case and shouldn't be in
+         the stream data.
+
+2017-04-21 19:09:14 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Chain up to the parent class' provide_clock() implementation
+         If no clock was provided directly by rtspsrc. This behaviour was removed
+         by f8013487c91a6ffc552a4b25aa1a70f0bd5377f8 and results in rtspsrc not
+         providing the system clock via the rtpjitterbuffer.
+         As a result, if another element like an audio sink, provides a clock,
+         the pipeline would select that (when going to PAUSED/PLAYING again later).
+         Audio clocks usually don't progress in PAUSED, and thus our live source
+         won't be able to use the clock to produce data, making the sink never
+         preroll and everything is stuck.
+
+2017-04-20 11:22:15 +0200  Jürgen Sachs <juergen.sachs@metz-ce.de>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: reset sample_description_id to default
+         Fixes stream where sample_description_id is specified in the tfhd
+         https://bugzilla.gnome.org/show_bug.cgi?id=778337
+
+2017-04-20 13:16:24 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Don't use an explicit name for requesting audio pads
+         ... unless the muxer uses the same audio pad template name as
+         splitmuxsink. We can't request a pad called "audio_0" on a muxer that
+         wants pads to be "sink_%d".
+
+2017-02-23 09:31:36 +0900  ChangBok Chae <changbok.chea@gmail.com>
+
+       * gst/flv/gstflvdemux.c:
+         flvdemux: remove duplicated segment initialization
+         It's also done in gst_flv_demux_cleanup().
+         https://bugzilla.gnome.org/show_bug.cgi?id=779106
+
+2017-04-20 20:17:35 +1000  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Correctly catch FLUSH events in probes
+         https://bugzilla.gnome.org/show_bug.cgi?id=767498
+
+2017-04-19 12:28:12 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+         Revert "rtpbin: pipeline gets an EOS when any rtpsources byes"
+         This reverts commit eeea2a7fe88a17b15318d5b6ae6e190b2f777030.
+         It breaks EOS in some sender pipelines, see
+         https://bugzilla.gnome.org/show_bug.cgi?id=773218#c20
+
+2017-04-14 17:01:49 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Reset adapter in more discontinuity cases
+         In push mode we process as much as possible in the adapter. When we receive
+         a DISCONT buffer which we can't match to an actual sample (based on the existing
+         sample table) and there is still data remaining in the incoming adapter,there is
+         one of two cases happening:
+         1) We are doing reverse playback, in which case we should flush out all pending
+         data
+         2) We have leftover data from the previous incoming buffer... which we can't do
+         anything about.
+         For the second case, make sure we flush out the remaining data so that we can start
+         parsing again from scratch.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781319
+
+2017-04-14 10:56:41 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Use GST_ELEMENT_ERROR_WITH_DETAILS
+         Allows the application to know the exact status code that was returned
+         by the server in a programmatic fashion.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781304
+
+2017-04-16 18:47:56 +0900  Seungha Yang <sh.yang@lge.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix leak on QtDemuxStreamStsdEntry
+         Fix unit test failure
+         https://bugzilla.gnome.org/show_bug.cgi?id=781362
+
+2017-04-14 13:38:53 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Fix timescale of timecode tracks
+         They should have ideally the same timescale of the video track, which we
+         can't guarantee here as in theory timecode configuration and video
+         framerate could be different. However we should set a correct timescale
+         based on the framerate given in the timecode configuration, and not just
+         use the framerate numerator.
+
+2017-04-13 13:25:06 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Properly reset demuxer when all streams are EOS
+         Make sure offset and neededbytes are properly resetted when all
+         streams are EOS in push-mode.
+         Avoids cases when some data might still be pushed by upstream (because
+         it didn't yet see the resulting GST_FLOW_EOS yet) and qtdemux gets
+         completely lost.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781266
+
+2017-04-13 08:00:30 +0200  Edward Hervey <edward@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Make more usage of error macro
+         And make sure we actually use the provided soup_msg argument in the macro
+
+2017-03-08 15:01:13 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * gst/audiofx/gststereo.c:
+         docs: Port all docstring to gtk-doc markdown
+
+2017-03-08 15:01:13 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstwidget.c:
+         docs: Port all docstring to gtk-doc markdown
+
+2017-04-12 18:46:53 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/meson.build:
+         meson: Print message when disabling taglib on MSVC
+
+2017-04-12 13:26:59 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Don't forget to update pad->last_buf
+         buf is the current pad->last_buf value. If ever it gets copied/unreffed,
+         we need to make sure to write back the new  pointer to the last_buf
+         variable.
+         Fixes using wrong pointer values in the case of decrasing DTS value
+
+2017-04-12 11:33:05 +0200  Edward Hervey <edward@centricular.com>
+
+       * tests/check/elements/.gitignore:
+         tests: Add vp9enc to gitignore
+
+2017-04-11 13:41:48 +0200  Jürgen Sachs <juergen.sachs@metz-ce.de>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: fix: sample description index override in tfhd not evaluated
+         https://bugzilla.gnome.org/show_bug.cgi?id=778337
+
+2017-04-12 11:03:24 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Add out-of-bound check
+         Make sure we don't read invalid memory
+
+2016-04-27 12:17:37 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: move parsing of tkhd out of stsd entry loop
+         It needs only to be read once.
+
+2016-04-07 12:23:35 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: check for a different stsd entry before pushing a sample
+         Before pushing a sample, check if there was a change in the current
+         stsd entry. This patch also assumes that the first stsd entry is
+         used as default for the first sample. It might cause an uneeded
+         caps renegotiation when this isn't the case.
+
+2016-04-06 12:55:18 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: parse all stsd entries
+         stsd can have multiple format entries, parse them all.
+         This is required to play DVB DASH profile that uses multiple entries
+         to identify the different available bitrates/options on dash streams
+         The stream format-specific data is not stored into QtDemuxStreamStsdEntry
+
+2016-04-05 14:34:00 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: rework stsd sample entries access
+         Instead of using the stsd as a base pointer, use the actual stsd
+         entry as the stsd can have multiple entries. This is rarely used
+         for file playback but is a possible profile with in DVB DASH specs.
+         This still doesn't support stsd with multiple entries but makes it
+         easier to do so.
+
+2016-04-05 18:00:10 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: get stsd child by index instead of type
+         There might be multiple children with the same type
+
+2017-04-07 16:33:18 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * tests/check/elements/rtprtx.c:
+         tests/check/rtprtx: add checks for rtprtxqueue's max-size-{time,packets} properties
+         https://bugzilla.gnome.org/show_bug.cgi?id=780867
+
+2017-04-04 17:33:31 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/gstrtprtxqueue.c:
+       * gst/rtpmanager/gstrtprtxqueue.h:
+         rtprtxqueue: implement handling of the max-size-time property
+         https://bugzilla.gnome.org/show_bug.cgi?id=780867
+
+2017-04-10 23:49:06 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * autogen.sh:
+       * common:
+         Automatic update of common submodule
+         From 39ac2f5 to 60aeef6
+
+2017-04-10 08:56:00 +0000  Todor Tomov <todor.tomov@linaro.org>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2object: Copy timestamp when importing buffers
+         This is needed for V4L2_OUTPUT interface, and is harmless of
+         V4L2_CAPTURE interfaces. This will fix timestamp in cases like:
+         v4l2src io-mode=dmabuf ! v4l2videoNenc output-io-mode=dmabuf-import !  ...
+         Same apply for userptr.
+         https://bugzilla.gnome.org/show_bug.cgi?id=781119
+
+2017-04-10 15:55:30 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Fix last_dts tracking for raw audio and similar formats
+         Accumulate the durations directly and don't scale yet another time by
+         the number of samples.
+
+2017-04-07 10:48:50 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+       * tests/check/elements/splitmux.c:
+         tests: fix leak in splitmux test
+         https://bugzilla.gnome.org/show_bug.cgi?id=781025
+
+2017-04-07 15:29:43 +0800  Lyon Wang <lyon.wang@nxp.com>
+
+       * gst/audiofx/gstscaletempo.c:
+         scaletempo: Scale GAP event timestamp and duration like for buffers
+         https://bugzilla.gnome.org/show_bug.cgi?id=781008
+
+2017-02-17 10:01:08 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+       * sys/v4l2/gstv4l2videodec.h:
+         v4l2dec: Fix race when going from PAUSED to READY
+         Running `gst-validate-launcher -t validate.file.playback.change_state_intensive.vorbis_vp8_1_webm`
+         on odroid XU4 (s5p-mfc v4l2 driver) often leads to:
+         ERROR:../subprojects/gst-plugins-good/sys/v4l2/gstv4l2videodec.c:215:gst_v4l2_video_dec_stop: assertion failed: (g_atomic_int_get (&self->processing) == FALSE)
+         This happens when the following race happens:
+         - T0: Main thread
+         - T1: Upstream streaming thread
+         - T2. v4l2dec processing thread)
+         [The decoder is in PAUSED state]
+         T0. The validate scenario runs `Executing (36/40) set-state: state=null repeat=40`
+         T1- The decoder handles a frame
+         T2- A decoded frame is push downstream
+         T2- Downstream returns FLUSHING as it is already flushing changing state
+         T2- The decoder stops its processing thread and sets `->processing = FALSE`
+         T1- The decoder handles another frame
+         T1- `->process` is FALSE so the decoder restarts its streaming thread
+         T0- In v4l2dec-> stop the processing thread is stopped
+         NOTE: At this point the processing thread loop never started.
+         T0- assertion failed: (g_atomic_int_get (&self->processing) == FALSE)
+         Here I am removing the whole ->processing logic to base it all on the
+         GstTask state to avoid duplicating the knowledge.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778830
+
+=== release 1.11.90 ===
+
+2017-04-07 16:31:56 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * gst-plugins-good.doap:
+       * meson.build:
+         Release 1.11.90
+
+2017-04-07 15:18:11 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * po/af.po:
+       * po/az.po:
+       * po/bg.po:
+       * po/ca.po:
+       * po/cs.po:
+       * po/da.po:
+       * po/de.po:
+       * po/el.po:
+       * po/en_GB.po:
+       * po/eo.po:
+       * po/es.po:
+       * po/eu.po:
+       * po/fi.po:
+       * po/fr.po:
+       * po/gl.po:
+       * po/hr.po:
+       * po/hu.po:
+       * po/id.po:
+       * po/it.po:
+       * po/ja.po:
+       * po/lt.po:
+       * po/lv.po:
+       * po/mt.po:
+       * po/nb.po:
+       * po/nl.po:
+       * po/or.po:
+       * po/pl.po:
+       * po/pt_BR.po:
+       * po/ro.po:
+       * po/ru.po:
+       * po/sk.po:
+       * po/sl.po:
+       * po/sq.po:
+       * po/sr.po:
+       * po/sv.po:
+       * po/tr.po:
+       * po/uk.po:
+       * po/vi.po:
+       * po/zh_CN.po:
+       * po/zh_HK.po:
+       * po/zh_TW.po:
+         Update .po files
+
+2017-04-07 15:06:30 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * po/el.po:
+         po: Update translations
+
+2017-04-06 12:01:00 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/audioparsers/gstaacparse.c:
+         aacparse: streamline and improve AudioSpecificConfig parsing
+         AudioSpecifigConfig is used in a variety of AAC streams but was
+         being parsed differently. Instead, make everyone use the same parsing.
+         * Remove unused 'bits' field (it was always set to 0 if present)
+         * Add proper GAConfig parsing (to know the  number of samples per frame
+         if present).
+         Fixes wrong rate/channels configuration in streams coming from qtdemux
+         https://bugzilla.gnome.org/show_bug.cgi?id=780966
+
+2017-04-05 09:46:31 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: Fix 32bit only printf format
+         The previous patch was using %llu for 64bits printf, which is 32bit
+         specific. We also trace the latency in time human readable form now.
+
+2016-03-16 16:22:48 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: set streamparm for outputs that support it
+         Without a specified framerate from the sink, the decoder frame interval
+         should be set using the framerate of the encoded video stream.
+         Therefore, the v4l2object should be able to change the framerate on the
+         output if the V4L2 device accepts it.
+         This is also necessary for mem2mem encoders so that their bitrate
+         calculation code may work correctly and they may report the correct
+         frame duration on the capture queue.
+         https://bugzilla.gnome.org/show_bug.cgi?id=779466
+
+2016-03-16 16:24:55 +0100  Philipp Zabel <p.zabel@pengutronix.de>
+
+       * sys/v4l2/gstv4l2videodec.c:
+         v4l2videodec: only set latency if the frame duration is valid
+         If the duration of the v4l2object is GST_CLOCK_TIME_NONE, because the
+         sink did not specify a framerate in the caps and the driver accepts the
+         framerate, the decoder element uses GST_CLOCK_TIME_NONE to calculate and
+         set the element latency.
+         While this is a bug of the capture driver, the decoder element should
+         not use the invalid duration to calculate a latency, but print a warning
+         instead.
+         https://bugzilla.gnome.org/show_bug.cgi?id=779466
+
+2016-11-23 12:17:55 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * sys/v4l2/gstv4l2sink.c:
+         v4l2sink: Block in preroll_wait on unlock
+         The correct behaviour of anything stuck in the ->render() function
+         between ->unlock() and ->unlock_stop() is to call
+         gst_base_sink_wait_preroll() and only return an error if this returns an
+         error, otherwise, it must continue where it left off!
+         https://bugzilla.gnome.org/show_bug.cgi?id=774945
+
+2017-04-05 15:55:20 +1000  Jan Schmidt <jan@centricular.com>
+
+       * ext/vpx/gstvp9dec.c:
+         vp9dec: Add warnings for unsupported frame formats
+         At least output an element warning on the bus when we
+         encounter a frame format GStreamer doesn't currently support.
+
+2017-04-04 17:55:13 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/audioparsers/gstaacparse.c:
+         aacparse: Handle Parametric Stereo with HE-AAC(v2)
+         According to ISO/IEC:14496-2:2009 , in the case of HE-AACv2 (audioObjecType
+         29) parametric stereo is used (a single mono track is used and then
+         transformations are applied to it to provide a stereo output).
+         We therefore report two channels in the case where there is one reported
+         in the audioChannelConfiguration.
+         Fixes the various issues where a demuxer would report two channels, but
+         then the parser would say there's only one channel, and then the decoder
+         would output two channels.
+
+2017-04-04 15:22:25 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Simplify buffer refcounting in add_buffer() and remove unneeded NULL checks
+
+2017-04-04 15:08:33 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Select the best pad based on the cached last_buf if any
+         last_buf is the one we're going to write next, not buf. As such we
+         should check timestamps against that one if there is one to select the
+         earliest pad.
+         Also remember the currently selected pad in the very beginning when
+         storing the first last_buf.
+         This both solves some edge cases where not the correct next pad was
+         selected corresponding to the target interleave.
+
+2017-04-04 15:07:40 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Error out immediately if a timecode is to be written but downstream return not-OK
+
+2017-04-03 11:34:49 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Update variables before early exit
+         This is an update of d78d5896272d78df41e696fac929e7dfb3bb3dfa
+         We still exit as early as possible in case of non-ok/non-unlinked combined
+         flow, but we first make sure that we update the internal position variables.
+         This ensures that if upstreams "ignores" the flow return (and carries on pushing),
+         we don't end up processing data with completely bogus variables/positions.
+
+2017-03-24 00:11:13 +1300  Douglas Bagnall <douglas@halo.gen.nz>
+
+       * gst/interleave/interleave.c:
+       * gst/interleave/interleave.h:
+         interleave: avoid using uninitialised ordering_map
+         If self->channel_positions == NULL (which seems unlikely),
+         self->default_channels_ordering_map will be used unintialised.
+         We avoid that by keeping track of the channel_mask, which is set when
+         the ordering map is initialised.
+         https://bugzilla.gnome.org/show_bug.cgi?id=780331
+
+2017-03-23 23:56:31 +1300  Douglas Bagnall <douglas@halo.gen.nz>
+
+       * gst/interleave/interleave.c:
+         interleave: don't overflow channel map with >64 channels
+         When there are more than 64 channels, we don't want to exceed the
+         bounds of the ordering_map buffer, and in these cases we don't want to
+         rempa at all. Here we avoid doing that.
+         https://bugzilla.gnome.org/show_bug.cgi?id=780331
+
+2017-03-28 14:23:16 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * tests/check/meson.build:
+         meson: Use get_pkgconfig_variable instead of calling pkg-config ourself
+         It is avalaible in meson 0.36 which is now are requirement
+
+2017-03-28 14:22:41 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * pkgconfig/gstreamer-plugins-good.pc.in:
+       * pkgconfig/meson.build:
+         pkgconfig: Do not ever build an installed .pc file
+
+2017-03-28 11:15:53 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * tests/check/meson.build:
+         meson: test: Fix environment object usage
+
+2017-03-28 11:14:47 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * meson.build:
+       * pkgconfig/gstreamer-plugins-good.pc.in:
+       * pkgconfig/meson.build:
+         pkgconfig: Generate the pkg-config with meson too
+
+2017-03-27 21:52:00 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: In gap mode, consider the mdat offset when calculating the remaining mdat size
+         The mdat generally does not start at offset 0, we have to include the
+         size of the moof and whatever else was in front of the mdat.
+
+2017-03-27 11:43:31 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atomsrecovery.c:
+         atomsrecovery: Error out when fseek() fails instead of silently ignoring
+         CID 1403262
+
+2017-03-23 22:13:05 +0100  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Also add videometa if there is padding to the right and bottom
+         https://bugzilla.gnome.org/show_bug.cgi?id=780478
+
+2017-03-21 12:54:27 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/gstrtpmux.c:
+         rtpmux: fix output segment and buffer DTS to correspond to the flattened PTS
+         https://bugzilla.gnome.org/show_bug.cgi?id=780347
+
+2017-03-23 17:53:19 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Remove some unused variables
+
+2017-03-23 15:01:16 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Remove a couple of unneeded levels of indentation
+
+2017-03-22 18:18:40 +0000  Enrique Ocaña González <eocanha@igalia.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: distinguish TFDT with value 0 from no TFDT at all
+         TFDTs with time 0 are being ignored since commit 1fc3d42f. They're
+         mistaken with the case of not having TFDT, but those two cases
+         must be distinguished in some way.
+         This patch passes an extra boolean flag when the TFDT is present.
+         This is now the condition being evaluated, instead of checking for
+         0 time.
+         https://bugzilla.gnome.org/show_bug.cgi?id=780410
+
+2017-03-22 19:15:09 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Reset current chunk after writing out timecode
+         If we have multiple tracks with timecodes, or it's not the first track
+         that has timecodes, or not the first buffer, we already started a chunk
+         for media data. We now need to "close" that chunk because we wrote data
+         for the timecode track and a new chunk has to be started for the
+         original track the next time it has data.
+
+2017-03-22 18:52:51 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmux.h:
+         qtmux: Do timecode handling per track, not per muxer instance
+         There could be multiple video tracks with timecodes.
+
+2017-03-22 00:38:51 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/matroska/matroska-demux.c:
+         qtdemux: matroskademux: Ignore repeated seek events
+         Similar to what was done in adaptivedemux, ignore seek
+         events we've already handled - such as when they are received
+         on every srcpad of files with lots of streams.
+
+2017-03-21 14:55:32 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux.h:
+         dashdemux: Update mdatleft from overall mdatsize and offset when observing a gap
+         Otherwise mdatleft will have a value calculated from the initial
+         mdatsize minus the parts of the stream that we saw, which is not
+         including all the parts of the stream that might've been skipped.
+
+2017-03-20 17:03:32 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+       * gst/audioparsers/gstmpegaudioparse.c:
+         docs: update two references to the removed 'mad' plugin
+         https://bugzilla.gnome.org/show_bug.cgi?id=776140
+
+2017-03-20 12:03:29 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/gstrtprtxqueue.c:
+         rtprtxqueue: add basic documentation and example pipelines
+         Mostly explaining the difference between rtprtxqueue and rtprtxsend.
+
+2017-03-17 20:58:28 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/meson.build:
+         v4l2: Fix meson plugin shared object name
+         It didn't match between AutoMake and Meson, and the Meson name
+         didn't math the plugin name (video4linux2).
+
+2017-03-16 18:20:54 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/gstrtprtxreceive.c:
+         rtprtxreceive: fix example pipelines and improve the documentation
+         https://bugzilla.gnome.org/show_bug.cgi?id=771383
+
+2017-03-17 14:10:40 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+       * gst/audioparsers/gstflacparse.c:
+       * gst/audioparsers/gstflacparse.h:
+         flacparse: fix playback if sample number does not start at 0
+         This reverts commit 29b807685d3c962bbe8afe351c5dca97d59eb5e0, while
+         fixing the original breaking tests/check/pipelines/flacdec.
+
+2017-03-17 11:30:04 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+       * gst/audioparsers/gstflacparse.c:
+       * gst/audioparsers/gstflacparse.h:
+         Revert "flacparse: fix playback if sample number does not start at 0"
+         This breaks gst-validate on the build server (though not locally),
+         and a unit test, and I can't run unit tests right now for some
+         unrelated reason.
+         This reverts commit 0747b56f8e7f4731d67f8d13a4bdc453dde0fdf7.
+
+2017-03-16 17:44:41 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/rtpsession.c:
+         rtpsession: print the correct variable in debug statement
+         This debug statement is meant to print the time since the last (early)
+         RTCP transmission, not the last regular RTCP transmission (which also
+         happens to be set a few lines above to current_time, so the debug output
+         is just confusing)
+
+2017-03-16 17:42:27 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/gstrtprtxsend.c:
+         rtprtxsend: convert LOG message to TRACE
+         This is printed too often (for every chained buffer!) and just clutters the logs.
+
+2017-03-16 14:58:45 +0100  Miguel París Díaz <mparisdiaz@gmail.com>
+
+       * gst/rtpmanager/rtpsource.c:
+         rtpsource: fix warning message
+         https://bugzilla.gnome.org/show_bug.cgi?id=780105
+
+2017-03-16 13:54:54 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+       * gst/audioparsers/gstflacparse.c:
+       * gst/audioparsers/gstflacparse.h:
+         flacparse: fix playback if sample number does not start at 0
+         https://bugzilla.gnome.org/show_bug.cgi?id=777738
+
+2017-03-15 18:58:55 +0100  Miguel París Díaz <mparisdiaz@gmail.com>
+
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtpmanager/rtpsource.h:
+         rtpsource: get clock-rate from pt if needed to generate SR
+         https://bugzilla.gnome.org/show_bug.cgi?id=780105
+
+2017-03-16 13:52:48 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Include GStreamer souphttpsrc version in default User-Agent string
+
+2017-03-16 00:41:44 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/rtp/gstrtph264depay.c:
+         rtph264depay: fix crash with empty sprops-parameters
+         https://bugzilla.gnome.org/show_bug.cgi?id=780040
+
+2017-03-11 21:20:40 -0800  Thiago Santos <thiagossantos@gmail.com>
+
+       * gst/isomp4/atomsrecovery.c:
+       * gst/isomp4/atomsrecovery.h:
+         atomsrecovery: also handle extra atoms after 'mdia' in a 'trak'
+         Take into account the atoms at the end of the 'trak' atom when
+         recovering it. So that its size (already computed and added in the trak
+         size) isn't making offsets wrong.
+         https://bugzilla.gnome.org/show_bug.cgi?id=771478
+
+2017-03-11 12:56:33 -0800  Thiago Santos <thiagossantos@gmail.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: avoid fallthrough to moovrecovery failure section
+         Return before that to preserve our successfull results, otherwise no
+         moov recovery information would be written
+         https://bugzilla.gnome.org/show_bug.cgi?id=771478
+
+2017-03-11 12:27:28 -0800  Thiago Santos <thiagossantos@gmail.com>
+
+       * gst/isomp4/atomsrecovery.c:
+         atomsrecovery: expect more atom types at the headers
+         Skip more atoms at the header until it finds the 'mdat' to continue the
+         moov recovery
+         https://bugzilla.gnome.org/show_bug.cgi?id=771478
+
+2017-03-14 16:42:25 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * Makefile.am:
+       * configure.ac:
+       * tests/examples/Makefile.am:
+       * tests/examples/pulse/.gitignore:
+       * tests/examples/pulse/Makefile.am:
+       * tests/examples/pulse/pulse.c:
+         pulse example: Remove
+         That example only tested the property probe interface, which has been removed.
+         The same kind of thing can now be done with the generic gst-device-monitor tool.
+
+2017-03-14 16:38:02 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * sys/v4l2/gstv4l2object.h:
+         v4l2: Remove unused macro
+
+2017-03-14 16:35:25 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+         v4l2: Remove unused definitions
+
+2017-03-14 10:10:19 +0100  Emeric Grange <egrange@gopro.com>
+
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmuxmap.c:
+       * gst/isomp4/qtdemux.c:
+       * gst/isomp4/qtdemux_types.c:
+         qtmux: add CineForm support
+         https://bugzilla.gnome.org/show_bug.cgi?id=780024
+
+2017-03-14 15:09:44 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Only create new chunks if we have more than a single stream
+         There's no point in creating multiple chunks otherwise, it only wastes
+         some bytes for storing the chunk offsets.
+
+2017-03-14 10:09:46 +0100  Emeric Grange <egrange@gopro.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: add S16L support
+         https://bugzilla.gnome.org/show_bug.cgi?id=780022
+
+2017-03-14 15:48:08 +1100  Jan Schmidt <jan@centricular.com>
+
+       * tests/check/elements/splitmux.c:
+         splitmux test: Use passed first/last timestamps
+         Don't hard-code the expected timestamp range, use the
+         values the caller is passing in.
+
+2017-03-14 14:15:00 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gl: GL_ARRAY_BUFFER is not a part of VAO state
+         As a result we need to bind it on every draw in order to have the
+         correct state in the GL state machine.
+
+2017-03-13 14:28:47 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtsrc.cc:
+         gl/format: use our own GL format enum's instead of gstvideo's
+         They can describe in more detail (such as component sizes) the requested format.
+
+2017-03-12 11:42:25 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * Makefile.am:
+       * docs/plugins/inspect/plugin-soup.xml:
+         Add old plugin names to cruft list
+         This will help fixing uninstalled setup. Also fix missing path
+         correction in one of the plugin xml.
+         https://bugzilla.gnome.org/show_bug.cgi?id=779344
+
+2016-12-15 12:38:40 +0100  Michael Dutka <mail@michael-dutka.de>
+
+       * gst/rtp/gstrtph264depay.c:
+       * gst/rtp/gstrtph265depay.c:
+         rtph264depay, rtph265depay: remove stray g_debug()
+         https://bugzilla.gnome.org/show_bug.cgi?id=779858
+
+2017-03-10 11:24:14 +0100  Wim Taymans <wtaymans@redhat.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: init fourcc
+         Initialize the fourcc to 0 so that we can detect failure later.
+
+2017-03-08 22:50:52 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/elements/level.c:
+       * tests/check/elements/rglimiter.c:
+         tests: Add missing LDADD for libm in tests using math.h
+         Also, remove the math.h include for the one that just prentend to need
+         it.
+
+2017-03-08 22:15:46 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * Makefile.am:
+       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
+         Fix shout2 plugin doc generation
+         In the previous patch, we also renamed shout2send to shout2, so it does
+         not clash with it's feature. Though we forgot to rename it in the doc
+         reference. This patch also add a cruft detection on the xml that made me
+         miss this error.
+         https://bugzilla.gnome.org/show_bug.cgi?id=779344
+
+2017-03-04 11:03:53 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/Makefile.am:
+       * ext/gtk/gstplugin.c:
+         Rename plugin filesnames to match plugin names
+         - libgstgtksink.so -> libgstgtk.so
+         - libgstteletextdec.so -> libgstteletex.so
+         - libgstcamerabin2.so -> libgstcamerabin.so
+         - libgstonvif.so -> libgstrtponvif.so (meson only)
+         - sdp -> sdpelem (avoid clash with libgstsdp)
+         - gstsiren -> siren
+         - libgstkmssink.so -> libgstkms.so
+         https://bugzilla.gnome.org/show_bug.cgi?id=779344
+
+2017-03-04 10:52:47 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-shout2.xml:
+       * ext/pulse/Makefile.am:
+       * ext/pulse/meson.build:
+       * ext/shout2/gstshout2.c:
+       * ext/soup/Makefile.am:
+       * ext/soup/meson.build:
+       * sys/oss4/Makefile.am:
+         Fix plugin filenames to match plugin names
+         - libgstpulse.so becomes libgstpulseaudio.so
+         - libgstsouphttpsrc.so becomes libgstsoup.so
+         - libgstoss4audio.so becomes libgstoss4.so
+         https://bugzilla.gnome.org/show_bug.cgi?id=779344
+
+2017-03-08 16:01:02 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+         qtmux: Free EDTS instead of just clearing it and setting it to NULL
+
+2017-03-08 15:27:32 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Fix some memory leaks related to timecode tracks
+
+2017-03-04 00:34:44 +1100  Jan Schmidt <jan@centricular.com>
+
+       * tests/check/elements/splitmux.c:
+         splitmux: Add unit test for reverse playback
+         Ensure that reverse playback works and generates the range
+         of timestamps (0-3s) we expect, in monotonically descending order.
+
+2017-02-28 11:50:45 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxsrc.c:
+         splitmuxsrc: Fix reverse playback
+         Fix the check for whether the start time of the segment has
+         been reached when playing in reverse. Otherwise, playback
+         stops after reaching the start of any file part, instead of
+         continuing until all parts within the segment have played
+
+2017-02-22 03:01:31 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Don't lose crypto info on a new moof
+         We parse the next moof in advance of having pushed
+         all samples from the previous one in some cases, and
+         we'll still need the crypto info from the previous
+         fragment so keep around any unused crypto info entries
+         when adding new ones
+
+2017-02-27 13:55:58 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Update modification times when sending the moov
+         https://bugzilla.gnome.org/show_bug.cgi?id=779422
+
+2017-03-01 16:11:47 -0800  Michael Smith <mlrsmith@gmail.com>
+
+       * gst/audioparsers/gstsbcparse.h:
+         sbcparse: Fix up values for allocation enumeration.
+         https://bugzilla.gnome.org/show_bug.cgi?id=779389
+
+2017-02-28 13:10:50 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/rtpmanager/gstrtprtxreceive.c:
+         rtprtxreceive: fix potential leak of old, unassociated, association requests
+         https://bugzilla.gnome.org/show_bug.cgi?id=722560
+
+2017-02-28 15:47:23 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/avi/gstavidemux.c:
+         avidemux: Don't increment -1 / unset indices
+         CID 1398545
+
+2017-02-28 15:20:31 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Protect against NULL pointer dereference for streams without caps
+         CID 1363332
+
+2017-02-28 12:57:02 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtph263pay.c:
+         rtph263pay: Free mac on errors
+         CID 1212149
+
+2017-02-28 12:45:24 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpvorbispay.c:
+         rtpvorbispay: Add missing break to for loop
+
+2017-02-28 11:02:54 +0100  Edward Hervey <edward@centricular.com>
+
+       * tests/check/Makefile.am:
+         check: Fix splitmux test CFLAGS
+         Needs to know where the gstapp headers are
+
+2017-02-27 21:02:51 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Fix compilation with gcc 7
+         qtdemux.c: In function ‘qtdemux_parse_samples’:
+         qtdemux.c:8450:39: error: ‘*’ in boolean context, suggest ‘&&’ instead [-Werror=int-in-bool-context]
+         if (stream->samples_per_frame * stream->bytes_per_frame) {
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
+
+2017-02-27 21:01:23 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/audioparsers/gstmpegaudioparse.c:
+         mpegaudioparse: Fix compilation with gcc 7
+         gstmpegaudioparse.c: In function ‘gst_mpeg_audio_parse_reset’:
+         gstmpegaudioparse.c:209:3: error: ‘memset’ used with length equal to number of elements without multiplication by element size [-Werror=memset-elt-size]
+         memset (mp3parse->xing_seek_table_inverse, 0, 256);
+         ^~~~~~
+         gstmpegaudioparse.c: In function ‘gst_mpeg_audio_parse_handle_first_frame’:
+         gstmpegaudioparse.c:951:7: error: ‘memset’ used with length equal to number of elements without multiplication by element size [-Werror=memset-elt-size]
+         memset (mp3parse->xing_seek_table_inverse, 0, 256);
+         ^~~~~~
+
+2017-02-27 19:31:39 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpvorbispay.c:
+         rtpvorbispay: When getting new headers, replace the old version of them
+         This prevents storing an infinite amount of e.g. comment headers if they
+         come without a new initialization header in front of them. There can
+         only be one header of each type.
+
+2017-02-27 19:25:35 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/elements/rtp-payloading.c:
+         rtp-payloading: Add new test for Vorbis renegotiation
+         Check if encoding, payloading, depayloading and decoding works if the
+         stream configuration (and thus the headers) change.
+
+2017-02-27 19:24:07 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/rtp/gstrtpvorbispay.c:
+         vorbispay: Only replace headers when receiving a new config header
+         If we also replace all headers when receiving any possibly following
+         comments header, we would throw away the config header before being able
+         to make use of it.
+
+2017-02-23 12:11:15 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * tests/check/Makefile.am:
+       * tests/check/elements/splitmux.c:
+         tests: splitmux: add unit test for content with sparse streams
+         https://bugzilla.gnome.org/show_bug.cgi?id=761086
+
+2017-02-22 11:23:19 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/multifile/gstsplitmuxpartreader.c:
+         splitmuxpartreader: ignore sparse streams when calculating the end offset of a part
+         A sparse stream's ending timestamp can be considerably smaller
+         than the ending timestamps of the other streams, which can lead
+         to skipping considerable time from the next part.
+         https://bugzilla.gnome.org/show_bug.cgi?id=761086
+
+2017-02-22 11:21:06 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+       * gst/multifile/gstsplitmuxpartreader.c:
+         splitmuxpartreader: identify sparse streams
+
+2017-02-17 14:37:08 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qml: Add support for Vivante EGL FS windowing system
+         https://bugzilla.gnome.org/show_bug.cgi?id=778825
+
+2017-02-25 21:47:03 -0300  Edgard Lima <edgard.lima@gmail.com>
+
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * gst/audioparsers/gstamrparse.c:
+       * gst/rtp/gstrtpg726depay.c:
+       * gst/rtp/gstrtpg726depay.h:
+       * gst/rtp/gstrtpg726pay.c:
+       * gst/rtp/gstrtpg726pay.h:
+       * gst/rtp/gstrtppcmadepay.c:
+       * gst/rtp/gstrtppcmadepay.h:
+       * gst/rtp/gstrtppcmapay.c:
+       * gst/rtp/gstrtppcmapay.h:
+       * gst/rtp/gstrtppcmudepay.c:
+       * gst/rtp/gstrtppcmudepay.h:
+       * gst/rtp/gstrtppcmupay.c:
+       * gst/rtp/gstrtppcmupay.h:
+       * gst/rtp/gstrtpspeexdepay.c:
+       * gst/rtp/gstrtpspeexdepay.h:
+       * gst/rtp/gstrtpspeexpay.c:
+       * gst/rtp/gstrtpspeexpay.h:
+       * sys/v4l2/gstv4l2.c:
+       * sys/v4l2/gstv4l2bufferpool.c:
+       * sys/v4l2/gstv4l2bufferpool.h:
+       * sys/v4l2/gstv4l2colorbalance.c:
+       * sys/v4l2/gstv4l2colorbalance.h:
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2object.h:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/gstv4l2src.h:
+       * sys/v4l2/gstv4l2tuner.c:
+       * sys/v4l2/gstv4l2tuner.h:
+       * sys/v4l2/gstv4l2vidorient.c:
+       * sys/v4l2/gstv4l2vidorient.h:
+       * sys/v4l2/v4l2_calls.c:
+       * sys/v4l2/v4l2_calls.h:
+         Update Edgard Lima's email
+         https://bugzilla.gnome.org/show_bug.cgi?id=779230
+
+2017-02-08 13:36:00 +0000  Andrew <nifigase@gmail.com>
+
+       * gst/rtpmanager/gstrtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.c:
+       * gst/rtpmanager/rtpjitterbuffer.h:
+         rtpjitterbuffer: Don't always reset PTS to 0 after a gap
+         In function rtp_jitter_buffer_calculate_pts: If gap in incoming RTP
+         timestamps is more than (3 * jbuf->clock_rate) we call
+         rtp_jitter_buffer_reset_skew which resets pts to 0. So components down
+         the pipeline (playes, mixers) just skip frames/samples until pts becomes
+         equal to pts before gap.
+         In version 1.10.2 and before this checking was bypassed for packets with
+         "estimated dts", and gaps were handled correctly.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778341
+
+2017-02-24 15:59:41 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * meson.build:
+         meson: Update version
+
+2017-02-24 15:37:36 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * configure.ac:
+         Back to development
+
+=== release 1.11.2 ===
+
+2017-02-24 15:07:23 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * configure.ac:
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2send.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * gst-plugins-good.doap:
+         Release 1.11.2
+
+2017-02-24 12:50:21 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * po/af.po:
+       * po/az.po:
+       * po/bg.po:
+       * po/ca.po:
+       * po/cs.po:
+       * po/da.po:
+       * po/de.po:
+       * po/el.po:
+       * po/en_GB.po:
+       * po/eo.po:
+       * po/es.po:
+       * po/eu.po:
+       * po/fi.po:
+       * po/fr.po:
+       * po/gl.po:
+       * po/hr.po:
+       * po/hu.po:
+       * po/id.po:
+       * po/it.po:
+       * po/ja.po:
+       * po/lt.po:
+       * po/lv.po:
+       * po/mt.po:
+       * po/nb.po:
+       * po/nl.po:
+       * po/or.po:
+       * po/pl.po:
+       * po/pt_BR.po:
+       * po/ro.po:
+       * po/ru.po:
+       * po/sk.po:
+       * po/sl.po:
+       * po/sq.po:
+       * po/sr.po:
+       * po/sv.po:
+       * po/tr.po:
+       * po/uk.po:
+       * po/vi.po:
+       * po/zh_CN.po:
+       * po/zh_HK.po:
+       * po/zh_TW.po:
+         Update .po files
+
+2017-02-24 12:44:58 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * po/el.po:
+         po: Update translations
+
+2017-02-10 20:50:17 +0900  Seungha Yang <sh.yang@lge.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Extract redirection uri on libsoup's restarted callback
+         Let libsoup handle redirection automatically.
+         And then, to figure out redirection uri, extract it on "restarted"
+         callback which will be fired before soup_session_send() is returned.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778428
+
+2017-01-02 19:29:04 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: Update image size when extrapolating
+         Update the image size according the amount of data we are going to
+         read/write. This workaround bugs in driver where the sizeimage provided
+         by TRY/S_FMT represent the buffer length (maximum size) rather then the expected
+         bytesused (buffer size).
+         https://bugzilla.gnome.org/show_bug.cgi?id=775564
+
+2017-02-17 15:50:32 -0800  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2: fix typo in _acquire_format() error messages
+         Fixes:
+         https://bugzilla.gnome.org/show_bug.cgi?id=778815
+
+2017-02-07 17:27:56 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+       * tests/check/elements/matroskamux.c:
+       * tests/check/elements/qtmux.c:
+         tests: matroskamux, qtmux: don't add codec_data buffers to template caps
+         streamheader and codec_data buffers fields are only meant to be
+         in the negotiated caps, not the template caps.
+         Fixes false-positive leaks of those buffers detected by the leaks
+         tracer, as template caps are static, and we decided to not include
+         code in gstreamer core to handle this unusual case of template caps
+         having buffers in them.
+         https://bugzilla.gnome.org/show_bug.cgi?id=768762
+
+2017-02-09 12:46:54 +0000  Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+       * gst/rtp/gstrtpvorbispay.c:
+         rtpvorbispay: Update and send out headers when new headers are received
+         The payloader needs to reset and update the vorbis config data which is
+         pushed on the network if it receives new headers, or at least, it may
+         have to do so.
+         Without this, the stream configuration could change without the
+         payloader sending the new configuration to the other side.
+
+2017-02-15 14:48:58 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Change files on incompatible caps
+         https://bugzilla.gnome.org/show_bug.cgi?id=761761
+
+2017-02-15 16:35:01 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+         splitmuxsink: Reset ready_for_output on state change
+         https://bugzilla.gnome.org/show_bug.cgi?id=761761
+
+2017-02-15 15:09:06 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Remove unused next_max_out_running_time
+         https://bugzilla.gnome.org/show_bug.cgi?id=761761
+
+2017-02-15 15:07:32 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Remove unused muxed_out_time
+         https://bugzilla.gnome.org/show_bug.cgi?id=761761
+
+2017-02-17 13:07:05 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         Revert "qtdemux: Always snap to the start of the keyframe"
+         This reverts commit 107902ec514bd826aa29d2298107e2c091e1c779.
+         This commit intended to ensure that keyframe seeks land at the
+         start timestamp of a keyframe, rather than in the middle of one,
+         but they cause trouble on files with sparse streams, or with
+         JPEG 'cover art' tracks that have only one or a few JPEG samples
+         with very long durations.
+         That's still desirable for doing seamless cutting of videos,
+         but needs a rethink for implementation.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778690
+
+2017-02-17 01:22:11 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/audiofx/audioecho.c:
+       * gst/audiofx/audioecho.h:
+         audiofx/echo: added surround-delay and surround-mask
+         Add a new boolean surround-delay property that makes
+         audioecho just apply a delay to certain channels to create
+         a surround effect, rather than an echo on all
+         channels. This is useful when upmixing from stereo - for example.
+         Add a surround-mask property to control which channels
+         are considered surround sound channels when adding a
+         delay with surround-delay = true
+         Original patch from Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+2017-02-15 00:13:30 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/udp/gstudpsrc.c:
+         udpsrc: Use IP_MULTICAST_ALL for filtering IPv4 packets if available
+         This goes around the inefficient control message based filtering and
+         does all the filtering kernel-side. Unfortunately this is Linux-only and
+         there is no IPv6 variant of it (yet).
+
+2017-02-14 19:53:30 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * Makefile.am:
+         meson: dist meson build files
+         Ship meson build files in tarballs, so people who use tarballs
+         in their builds can start playing with meson already.
+
+2017-02-10 10:53:05 +0100  Søren Juul <zpon.dk@gmail.com>
+
+       * gst/icydemux/gsticydemux.c:
+       * tests/check/elements/icydemux.c:
+         icydemux: reset tags on empty value
+         Some radio streams uses StreamTitle='' to reset the title after a
+         track stopped playing, e.g. while the host talks between tracks or
+         during news segments.
+         This change forces an empty tag object to be distributed if
+         StreamTitle or StreamUrl is received with empty value, thus allowing
+         downstream elements to get notified about this.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778437
+
+2017-02-13 11:17:25 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: Properly notify missing elements
+         If the srtp elements are not present, post a message on the bus
+         informing about the missing plugins.
+
+2017-02-10 10:32:57 -0300  Juan Pablo Ugarte <ugarte@endlessm.com>
+
+       * sys/v4l2/gstv4l2object.c:
+         v4l2object: mark singleton caps as "may be leaked" objects.
+         Set MAY_BE_LEAKED flag on static pads returned by gst_v4l2_object_get_*_caps()
+         functions. Made functions thread safe by using g_once_init[enter|leave]
+         funtions.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778453
+
+2017-02-09 14:18:30 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: Remove now unused done label
+
+2017-02-09 12:55:32 +0100  Nick Kallen <nickkallen@me.com>
+
+       * gst/imagefreeze/gstimagefreeze.c:
+         imagefreeze: do not cache caps
+         Upstream elements like videoflip can transform caps, such as changing width and height.
+         When an imagefreeze downstream receives an ACCEPT_CAPS query it will NOW return
+         all caps that it can accept.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778389
+
+2017-02-09 11:29:43 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Add a comment about how atom_trak_set_elst_entry() works
+
+2014-08-22 09:55:43 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/isomp4/qtdemux_dump.c:
+         qtdemux: demote some log messages to TRACE level
+         Don't spam debug log with uninteresting stuff.
+
+2017-02-08 17:24:26 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Clear edit lists every time we recalculate them
+         We recalculate them, so any old information has to be forgotten.
+         Otherwise we write invalid edit lists when writing headers multiple
+         times.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778330
+
+2017-02-07 13:10:18 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/multifile/gstsplitmuxpartreader.c:
+         splitmuxsrc: Allow for buffers before the segment when measuring
+         Used signed calculations when measuring the max_ts of an input
+         fragment, so as to calculate the correct duration and offset
+         when buffers have timestamps preceding their segment
+
+2017-02-02 12:55:25 +0100  Miguel París Díaz <mparisdiaz@gmail.com>
+
+       * gst/rtpmanager/gstrtpsession.c:
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsession.h:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtpmanager/rtpsource.h:
+         rtpsession: relate received FIRs and PLIs to source
+         This is needed in order to:
+         - Avoid ignoring requests for different media sources.
+         - Add SSRC field in the GstForceKeyUnit event.
+         https://bugzilla.gnome.org/show_bug.cgi?id=778013
+
+2017-01-30 20:20:08 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: sanity check number of segments in edit list
+         Fixes crash with fuzzed file.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777940
+
+2017-01-02 22:16:39 +0900  Seungha Yang <sh.yang@lge.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Skip seeking query if upstream format is time
+         Don't need to querying byte-format seeking for time-format
+         upstream case
+         https://bugzilla.gnome.org/show_bug.cgi?id=776715
+
+2016-12-01 12:47:08 +0900  Seungha Yang <sh.yang@lge.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Use upstream's StreamFlags if there are
+         When multiple demuxer's are used, upstream might want to indicate
+         default streams using GST_STREAM_FLAG_{SELECT, UNSELECT}
+         https://bugzilla.gnome.org/show_bug.cgi?id=775440
+
+2017-01-27 16:14:16 +0200  Vivia Nikolaidou <vivia@toolsonair.com>
+
+       * gst/isomp4/atoms.c:
+         qtmux: Timecode track fixes for STSD entry
+         The n_frames field (frames per second) should follow the nominal frame
+         rate for drop-frame timecodes.
+         Also, the trak's timescale (and duration, accordingly) should follow the
+         STSD entry's timescale and frame duration (fps_n and fps_d accordingly),
+         not the other way around.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777832
+
+2017-01-19 11:08:11 +0100  Arnaud Vrac <avrac@freebox.fr>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: retry request on early termination from the server
+         Fix a regression introduced by commit 183695c61a54f1 (refactor to use
+         Soup's sync API). The code previously attempted to reconnect when the
+         server closed the connection early, for example when the stream was put
+         in pause for some time.
+         Reintroduce this feature by checking if EOS is received before the
+         expected content size is downloaded. In this case, do the request
+         starting at the previous read position.
+         https://bugzilla.gnome.org/show_bug.cgi?id=776720
+
+2017-01-10 09:40:56 -0700  Matt Staples <staples255@gmail.com>
+
+       * gst/rtsp/gstrtspsrc.c:
+         rtspsrc: find_stream_by_channel should ignore unconfigured streams
+         https://bugzilla.gnome.org/show_bug.cgi?id=777101
+
+2017-01-25 18:43:00 +0000  Brendan Shanks <brendan.shanks@teradek.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Fix debug typo and remove misleading warning
+         https://bugzilla.gnome.org/show_bug.cgi?id=777362
+
+2017-01-25 20:56:24 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/examples/rtp/client-PCMA.c:
+         rtp: Remove unused variable in example
+         client-PCMA.c:84:22: warning: unused variable 'isrc' [-Wunused-variable]
+         GObject *session, *isrc, *osrc;
+         ^
+
+2017-01-25 19:21:03 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/qt/Makefile.am:
+         qt: The code requires at least C++11
+         ... and clang requires this to be specified on the commandline while gcc
+         nowadays defaults to C++11 or even newer.
+
+2017-01-09 11:32:35 +0530  Rahul Bedarkar <rahul.bedarkar@imgtec.com>
+
+       * gst/wavparse/gstwavparse.c:
+         wavparse: check for not NULL before clearing adapter
+         In case wavparse receives a manually injected FLUSH_STOP event
+         while operating in pull mode we get criticals because we'd try
+         to clear a NULL adapter.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777123
+
+2017-01-24 19:23:44 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+       * tests/check/meson.build:
+         meson: Properly use ':' for defining keywords
+
+2017-01-17 16:41:58 +0100  Jean-Christophe Trotin <jean-christophe.trotin@st.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+         v4l2allocator: reference memory before the buffer is queued
+         In gst_v4l2_allocator_qbuf(), the memory is referenced after the
+         buffer is queued. Once queued (VIDIOC_QBUF), the buffer might be handled
+         by the V4L2 driver (e.g. decoded) and dequeued (gst_v4l2_allocator_dqbuf),
+         through a different thread, before the memory is referenced (gst_memory_ref).
+         In this case, in gst_v4l2_allocator_dqbuf(), the memory is unreferenced
+         (gst_memory_unref) before having been referenced: the memory refcount
+         reaches 0, and the memory is freed.
+         So, to avoid this crossing case, in gst_v4l2_allocator_qbuf(), the
+         memory shall be referenced before the buffer is queued.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777399
+
+2017-01-24 17:59:59 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+         qtmux: Only write 4 byte zero padding to the Video Sample Description in MOV
+         For MP4 this is not defined, and it actually breaks things for MSE in
+         Chrome if we do this. For MOV this is required by some broken software
+         but the official specification says it's optional:
+         https://developer.apple.com/library/content/documentation/QuickTime/QTFF/QTFFChap3/qtff3.html
+         https://bugzilla.gnome.org/show_bug.cgi?id=777540
+
+2017-01-02 13:42:04 +0100  Santiago Carot-Nemesio <scarot@twilio.com>
+
+       * gst/rtpmanager/rtpsession.c:
+       * gst/rtpmanager/rtpsource.c:
+       * gst/rtpmanager/rtpstats.h:
+         rtpstats: Keep number of nacks sent/received per source
+         Currently, the nack packets sent or received are kept at session level,
+         which makes it impossible to distinguish how many of these packages were
+         sent/received per ssrc when several sources are in the same session. This
+         patch is aligned with the https://www.w3.org/TR/webrtc-stats/#dom-rtcrtpstreamstats
+         https://bugzilla.gnome.org/show_bug.cgi?id=776714
+
+2016-12-08 15:59:33 +0100  Jonas Holmberg <jonashg@axis.com>
+
+       * gst/rtp/gstrtph265pay.c:
+         rtph265pay: Fix handling of config-interval
+         Insert VPS/SPS/PPS before the first NAL unit containing an I-frame in an
+         access unit only. If an access unit consists of several such NAL units
+         (tiles) VPS/SPS/PPS should only be inserted before the first of them so
+         that parameters are only updated between frames.
+         Do not insert VPS/SPS/PPS before P-frames when config-interval is -1.
+         https://bugzilla.gnome.org/show_bug.cgi?id=775817
+
+2017-01-19 12:29:44 +0100  Arnaud Vrac <avrac@freebox.fr>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: report a useful error message when soup_session_send fails
+         This helps to understand cases where libsoup doesn't set the message
+         status code after running soup_session_send.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777222
+
+2017-01-19 11:05:00 +0100  Arnaud Vrac <avrac@freebox.fr>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: properly check that seek range was respected
+         This check must be done only when we are sure the request was
+         successfully sent. soup_session_send() might fail without setting the
+         status code. In this case status code is 0 so we would only catch the
+         error after the seek range check. In this case we would report an error
+         saying that the seek range was not respected, instead of reporting the
+         underlying error that triggered the soup_session_send() failure.
+         https://bugzilla.gnome.org/attachment.cgi?bugid=777222
+
+2017-01-09 21:04:51 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.h:
+         gdkpixbufoverlay: add a positioning coefficient pair
+         ... so as to allow one clearly defined (absolute) positioning mode
+         that can cater for a variety of absolute but also relative positioning
+         with respect to edge or center.
+
+2017-01-21 20:48:22 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
+         gdkpixbufoverlay: update composition in _before_transform
+         ... since we need to determine passthrough mode for buffer preparation before
+         calling into _transform_ip.
+
+2017-01-07 20:11:13 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+       * ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
+         gdkpixbufoverlay: handle setting NULL gdkpixbuf
+         ... which is a clearer way to clear any current overlay, other than
+         fiddling with alpha or positioning properties to make it virtually go away.
+
+2017-01-20 17:16:10 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/avi/gstavidemux.c:
+         avidemux: Stop reading a ncdt sub-tag if it goes behind the surrounding tag
+         https://bugzilla.gnome.org/show_bug.cgi?id=777532
+
+2017-01-20 07:58:26 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/avi/gstavidemux.c:
+         avidemux: Fix various out of bounds reads when parsing ncdt tags
+         https://bugzilla.gnome.org/show_bug.cgi?id=777500
+
+2017-01-19 13:46:58 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Increment current stts index whenever we finished one stts entry
+         Otherwise we could read more chunks than there are available, doing an
+         out of bounds read and potentially crash.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777469
+
+2017-01-19 13:25:53 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         Revert "qtdemux: Increment current stts index in all code paths after reading one chunk"
+         This reverts commit 99d5d7570d0b53dad3bc8eb653b1320ee422aace. It broke
+         playback of various valid files.
+
+2017-01-19 07:52:33 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: Increment current stts index in all code paths after reading one chunk
+         Otherwise we could read more chunks than there are available, doing an
+         out of bounds read and potentially crash.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777469
+
+2017-01-19 08:37:37 +0100  Edward Hervey <edward@centricular.com>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: Initialize return variable
+         In the normal use-case we would end up with ret being unitialized
+         causing havoc.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777222
+
+2017-01-13 12:27:40 +0000  David Warman <dwarman@manglebit.org>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: avoid XMP tag parsing fatal error.
+         qtdemux_handle_xmp_taglist() requires a writable taglist,
+         but qtdemux->tag_list can become non-writable, specifically
+         after sending global tags (qtdemux.c:958), which adds a
+         second reference.  Ensure the list is made writable before
+         calling (make_writable will copy the list if necessary).
+         https://bugzilla.gnome.org/show_bug.cgi?id=766177
+
+2016-05-31 13:17:45 -0300  Thiago Santos <thiagossantos@gmail.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: rework taglist handling
+         Keep taglist around during element existance to avoid having to
+         create it at different places before usage. Makes code simpler to handle.
+         https://bugzilla.gnome.org/show_bug.cgi?id=766177
+
+2017-01-16 11:58:02 +0100  Arnaud Vrac <avrac@freebox.fr>
+
+       * ext/soup/gstsouphttpsrc.c:
+       * ext/soup/gstsouphttpsrc.h:
+         souphttpsrc: make flow return values handling clearer
+         The flow return values was stored in the element before because the
+         result had to be set from callbacks. This is not the case anymore, we
+         can return the flow result directly from functions, making the code
+         easier to understand.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777222
+
+2017-01-13 16:40:43 +0100  Arnaud Vrac <avrac@freebox.fr>
+
+       * ext/soup/gstsouphttpsrc.c:
+         souphttpsrc: properly track redirections
+         The current code configures libsoup to handle redirections
+         transparently, without informing the caller, thus preventing the element
+         to record the redirect code and location uri.
+         Fix this by always setting the SOUP_MESSAGE_NO_REDIRECT, preventing
+         libsoup from handling the redirection. When we receive a redirection
+         request and libsoup can safely handle it, return a custom error which
+         triggers a retry with the new URI.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777222
+
+2017-01-17 10:53:39 +0100  Aurélien Zanelli <aurelien.zanelli@parrot.com>
+
+       * gst/isomp4/gstqtmuxmap.c:
+         qtmux: add 4444 and 4444xq variants to video/x-prores pad template caps
+         They are handled since commit 7b565475bf551c53b8eed46f7086f3b372f1f6c4
+         (qt: Add support for ProRes 4444 XQ).
+         https://bugzilla.gnome.org/show_bug.cgi?id=777377
+
+2017-01-17 10:48:57 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/matroska/ebml-read.c:
+         matroska: Quiet a WARN when parsing push mode
+         This warning was noisy when returning EOS, which is
+         just used to indicate more data is needed from upstream.
+
+2017-01-16 14:50:22 +0100  Georg Lippitsch <glippitsch@toolsonair.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Don't write Sync Sample Atom for ProRes
+         https://bugzilla.gnome.org/show_bug.cgi?id=777331
+
+2015-01-28 08:58:26 +0100  Enrico Jorns <ejo@pengutronix.de>
+
+       * sys/v4l2/gstv4l2object.c:
+       * sys/v4l2/gstv4l2sink.c:
+       * sys/v4l2/gstv4l2src.c:
+       * sys/v4l2/v4l2_calls.h:
+         v4l2: Remove usage and definition of LOG_CAPS macro
+         Unlike former definitions of LOG_CAPS, the current implementation simply
+         expands to GST_DEBUG_OBJECT. The LOG_CAPS macro is rarely used and most
+         uses duplicate already existing GST_DEBUG_OBJECT lines. Therefore, the
+         caps are often printed twice which unnecessarily clutters the debug log.
+         Replace LOG_CAPS calls with GST_DEBUG_OBJECT, remove LOG_CAPS calls, and
+         delete the definition of LOG_CAPS.
+         https://bugzilla.gnome.org/show_bug.cgi?id=776899
+
+2017-01-16 15:40:43 +0100  Jean-Christophe Trotin <jean-christophe.trotin@st.com>
+
+       * sys/v4l2/gstv4l2bufferpool.c:
+         v4l2bufferpool: remove duplicated line of code
+         https://bugzilla.gnome.org/show_bug.cgi?id=777330
+
+2017-01-16 15:17:15 +0100  Jean-Christophe Trotin <jean-christophe.trotin@st.com>
+
+       * sys/v4l2/gstv4l2allocator.c:
+         v4l2allocator: fix memory type in allocator probe
+         The buffer memory type provided to the VIDIOC_CREATE_BUFS ioctl shall
+         be set with the value ("memory") given as input parameter of the
+         gst_v4l2_allocator_probe() function.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777327
+
+2017-01-14 15:27:19 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/flac/gstflacenc.c:
+         flacenc: fix other icon counter check
+         It's never going to be 0 if we first increment and then check.
+
+2017-01-14 15:16:53 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: boldly assume that first 'covr' image is the front cover
+
+2017-01-14 15:09:07 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/isomp4/qtdemux.c:
+         qtdemux: extract cover art images into GST_TAG_IMAGE not PREVIEW_IMAGE
+         These are usually much bigger than icon size and required by
+         iTunes to be certain fairly large sizes. In qtmux it is also
+         the IMAGE tags which we write out as 'covr' atoms.
+
+2017-01-14 15:05:36 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/flac/gstflacenc.c:
+         flacenc: also set PICTURE tag width and height if available
+
+2017-01-14 14:58:52 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/flac/gstflacenc.c:
+         flacenc: fix encoder init error with some GST_TAG_PREVIEW_IMAGEs
+         The encoder fails to initialise when we try to set GST_TAG_PREVIEW_IMAGEs
+         sent to use by qtdemux from iTunes-generated m4a files. We should
+         not just blindly translate the PREVIEW tag to file icon image types,
+         but check if the specific conditions required are met (i.e. image
+         type 1 must be a 32x32 PNG icon, and what we're getting is 500x500).
+         https://bugzilla.gnome.org/show_bug.cgi?id=776962
+
+2017-01-13 12:39:00 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         meson: bump version
+
+2017-01-11 10:32:23 -0300  Juan Pablo Ugarte <ugarte@endlessm.com>
+
+       * tests/examples/gtk/glliveshader.c:
+         gl/examples/gtk: fixed compilation on systems without GL_GEOMETRY_SHADER
+         https://bugzilla.gnome.org/show_bug.cgi?id=777143
+
+2017-01-12 21:35:25 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/gstqtsrc.cc:
+         gl/utils: also take care of the local GL context in query functions
+         Simplifies a deduplicates a lot of code in elements retrieving/setting
+         the local OpenGL context.
+
+2017-01-12 21:35:25 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+         gl/utils: also take care of the local GL context in query functions
+         Simplifies a deduplicates a lot of code in elements retrieving/setting
+         the local OpenGL context.
+
+2016-12-22 17:40:40 +0200  Vivia Nikolaidou <vivia@toolsonair.com>
+
+       * gst/multifile/gstsplitmuxsink.c:
+       * gst/multifile/gstsplitmuxsink.h:
+         splitmuxsink: Add option for timecode-based split
+         If this option is given, it will calculate the next split point based on
+         timecode difference.
+         https://bugzilla.gnome.org/show_bug.cgi?id=774209
+
+2017-01-13 00:01:06 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Don't reset request pad numbering across uses
+         When reset, don't restart request pad numberings, as
+         request pads can survive across state changes. Only
+         restart at 0 if all request pads are handed back first.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777174
+
+2017-01-11 18:52:28 +0100  Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+
+       * gst/rtpmanager/gstrtprtxqueue.c:
+       * gst/rtpmanager/gstrtprtxqueue.h:
+         rtxqueue: Expose basic statistics as properties.
+         Statistics about the total number of retransmission requests
+         and the actual number of retransmitted packets can be helpful
+         at application-level.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777182
+
+2017-01-12 17:45:35 +0100  Aurélien Zanelli <aurelien.zanelli@parrot.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: simplify video/x-h264 caps handling
+         'stream-format' and 'alignment' are defined in pad template caps so
+         there is no need to check them again here. Also remove bitrate parsing from
+         caps as bitrate in caps doesn't make sense but from tags, which is
+         actually the case.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777181
+
+2016-12-08 17:02:22 +0100  Aurélien Zanelli <aurelien.zanelli@parrot.com>
+
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/gstqtmuxmap.c:
+         qtmux: add basic HEVC/H.265 muxing support
+         https://bugzilla.gnome.org/show_bug.cgi?id=736752
+
+2017-01-11 18:29:05 +0100  Georg Lippitsch <glippitsch@toolsonair.com>
+
+       * gst/isomp4/gstqtmux.c:
+         qtmux: Calculate clean aperture size
+         Calculate clean aperture dimensions by first guessing
+         display aspect ratio based on pixel aspect ratio and
+         frame size.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777100
+
+2017-01-10 18:19:55 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/isomp4/atoms.c:
+       * gst/isomp4/atoms.h:
+       * gst/isomp4/fourcc.h:
+       * gst/isomp4/gstqtmux.c:
+       * gst/isomp4/qtdemux_types.c:
+         qtmux: Write tapt atom for MOV files if PAR not 1/1
+         Needed for QuickTime 7 to properly play files.
+         Also write the clap atom for MOV files always, not only when ProRes is
+         used as a video codec. It's mandatory for MOV.
+         https://bugzilla.gnome.org/show_bug.cgi?id=777100
+
+2017-01-12 16:32:45 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * configure.ac:
+         Back to development
+
 === release 1.11.1 ===
 
-2017-01-12  Sebastian Dröge <slomo@coaxion.net>
+2017-01-12 15:31:02 +0200  Sebastian Dröge <sebastian@centricular.com>
 
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
        * configure.ac:
-         releasing 1.11.1
+       * docs/plugins/gst-plugins-good-plugins.args:
+       * docs/plugins/gst-plugins-good-plugins.hierarchy:
+       * docs/plugins/gst-plugins-good-plugins.signals:
+       * docs/plugins/inspect/plugin-1394.xml:
+       * docs/plugins/inspect/plugin-aasink.xml:
+       * docs/plugins/inspect/plugin-alaw.xml:
+       * docs/plugins/inspect/plugin-alpha.xml:
+       * docs/plugins/inspect/plugin-alphacolor.xml:
+       * docs/plugins/inspect/plugin-apetag.xml:
+       * docs/plugins/inspect/plugin-audiofx.xml:
+       * docs/plugins/inspect/plugin-audioparsers.xml:
+       * docs/plugins/inspect/plugin-auparse.xml:
+       * docs/plugins/inspect/plugin-autodetect.xml:
+       * docs/plugins/inspect/plugin-avi.xml:
+       * docs/plugins/inspect/plugin-cacasink.xml:
+       * docs/plugins/inspect/plugin-cairo.xml:
+       * docs/plugins/inspect/plugin-cutter.xml:
+       * docs/plugins/inspect/plugin-debug.xml:
+       * docs/plugins/inspect/plugin-deinterlace.xml:
+       * docs/plugins/inspect/plugin-dtmf.xml:
+       * docs/plugins/inspect/plugin-dv.xml:
+       * docs/plugins/inspect/plugin-effectv.xml:
+       * docs/plugins/inspect/plugin-equalizer.xml:
+       * docs/plugins/inspect/plugin-flac.xml:
+       * docs/plugins/inspect/plugin-flv.xml:
+       * docs/plugins/inspect/plugin-flxdec.xml:
+       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
+       * docs/plugins/inspect/plugin-goom.xml:
+       * docs/plugins/inspect/plugin-goom2k1.xml:
+       * docs/plugins/inspect/plugin-icydemux.xml:
+       * docs/plugins/inspect/plugin-id3demux.xml:
+       * docs/plugins/inspect/plugin-imagefreeze.xml:
+       * docs/plugins/inspect/plugin-interleave.xml:
+       * docs/plugins/inspect/plugin-isomp4.xml:
+       * docs/plugins/inspect/plugin-jack.xml:
+       * docs/plugins/inspect/plugin-jpeg.xml:
+       * docs/plugins/inspect/plugin-level.xml:
+       * docs/plugins/inspect/plugin-matroska.xml:
+       * docs/plugins/inspect/plugin-mulaw.xml:
+       * docs/plugins/inspect/plugin-multifile.xml:
+       * docs/plugins/inspect/plugin-multipart.xml:
+       * docs/plugins/inspect/plugin-navigationtest.xml:
+       * docs/plugins/inspect/plugin-oss4.xml:
+       * docs/plugins/inspect/plugin-ossaudio.xml:
+       * docs/plugins/inspect/plugin-png.xml:
+       * docs/plugins/inspect/plugin-pulseaudio.xml:
+       * docs/plugins/inspect/plugin-replaygain.xml:
+       * docs/plugins/inspect/plugin-rtp.xml:
+       * docs/plugins/inspect/plugin-rtpmanager.xml:
+       * docs/plugins/inspect/plugin-rtsp.xml:
+       * docs/plugins/inspect/plugin-shapewipe.xml:
+       * docs/plugins/inspect/plugin-shout2send.xml:
+       * docs/plugins/inspect/plugin-smpte.xml:
+       * docs/plugins/inspect/plugin-soup.xml:
+       * docs/plugins/inspect/plugin-spectrum.xml:
+       * docs/plugins/inspect/plugin-speex.xml:
+       * docs/plugins/inspect/plugin-taglib.xml:
+       * docs/plugins/inspect/plugin-udp.xml:
+       * docs/plugins/inspect/plugin-video4linux2.xml:
+       * docs/plugins/inspect/plugin-videobox.xml:
+       * docs/plugins/inspect/plugin-videocrop.xml:
+       * docs/plugins/inspect/plugin-videofilter.xml:
+       * docs/plugins/inspect/plugin-videomixer.xml:
+       * docs/plugins/inspect/plugin-vpx.xml:
+       * docs/plugins/inspect/plugin-wavenc.xml:
+       * docs/plugins/inspect/plugin-wavpack.xml:
+       * docs/plugins/inspect/plugin-wavparse.xml:
+       * docs/plugins/inspect/plugin-ximagesrc.xml:
+       * docs/plugins/inspect/plugin-y4menc.xml:
+       * gst-plugins-good.doap:
+         Release 1.11.1
+
+2017-01-12 14:38:55 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * po/af.po:
+       * po/az.po:
+       * po/bg.po:
+       * po/ca.po:
+       * po/cs.po:
+       * po/da.po:
+       * po/de.po:
+       * po/el.po:
+       * po/en_GB.po:
+       * po/eo.po:
+       * po/es.po:
+       * po/eu.po:
+       * po/fi.po:
+       * po/fr.po:
+       * po/gl.po:
+       * po/hr.po:
+       * po/hu.po:
+       * po/id.po:
+       * po/it.po:
+       * po/ja.po:
+       * po/lt.po:
+       * po/lv.po:
+       * po/mt.po:
+       * po/nb.po:
+       * po/nl.po:
+       * po/or.po:
+       * po/pl.po:
+       * po/pt_BR.po:
+       * po/ro.po:
+       * po/ru.po:
+       * po/sk.po:
+       * po/sl.po:
+       * po/sq.po:
+       * po/sr.po:
+       * po/sv.po:
+       * po/tr.po:
+       * po/uk.po:
+       * po/vi.po:
+       * po/zh_CN.po:
+       * po/zh_HK.po:
+       * po/zh_TW.po:
+         Update .po files
 
 2017-01-12 14:36:22 +0200  Sebastian Dröge <sebastian@centricular.com>
 
          on
          https://bugzilla.gnome.org/show_bug.cgi?id=777095
 
+2017-01-10 16:54:48 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * ext/qt/qtwindow.cc:
+       * ext/qt/qtwindow.h:
+         qmlglsrc: use glBlitFramebuffer to copy texture for GLES3.0
+         If support glBlitFrameBuffer, use it for texture copy instead
+         of glCopyTexImage2D
+         https://bugzilla.gnome.org/show_bug.cgi?id=777078
+
 2017-01-09 19:05:10 +0000  Tim-Philipp Müller <tim@centricular.com>
 
        * gst/rtp/gstrtph263depay.c:
        * gst/rtp/gstrtpklvdepay.c:
          rtpklvdepay: add the SPARSE flag to the outgoing stream-start event
 
+2016-12-17 13:42:34 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/gstqtsrc.cc:
+         qt: improve element and property descriptions a bit
+
 2016-12-14 14:37:45 -0800  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
 
        * gst/rtpmanager/gstrtpbin.c:
          flxdec: Unref and unmap buffers in all code paths as needed
          https://bugzilla.gnome.org/show_bug.cgi?id=775888
 
+2016-12-08 12:37:25 +0300  Sergey Borovkov <sergey.borovkov@wireload.net>
+
+       * ext/qt/gstqtglutility.cc:
+         qml: Fix egl being deinitialized on display cleanup
+         Use the with_egl_display() variant in order to not destroy the
+         EGLDisplay on destruction.
+         https://bugzilla.gnome.org/show_bug.cgi?id=775793
+
 2016-12-06 17:42:31 +0530  Arun Raghavan <arun@osg.samsung.com>
 
        * sys/v4l2/gstv4l2object.c:
          monoscope: Unref allocation query after finished with it
          https://bugzilla.gnome.org/show_bug.cgi?id=775752
 
+2016-12-07 22:55:46 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         qml/item: also unref the display on destruction
+         Leaking objects (and a thread!) is never a good idea.
+         https://bugzilla.gnome.org/show_bug.cgi?id=775746
+
+2016-12-07 22:58:29 +1100  Matthew Waters <matthew@centricular.com>
+
+       * tests/examples/qt/qmlsink/main.cpp:
+         tests/examples/qmlsink: scope QApplication/Engine
+         So they are destroyed before gst_deinit() is run and the leaks tracer
+         doesn't show false-positives.
+         https://bugzilla.gnome.org/show_bug.cgi?id=775746
+
 2016-12-06 07:48:47 +0200  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/flx/gstflxdec.c:
          rounding error is observed.
          https://bugzilla.gnome.org/show_bug.cgi?id=773785
 
+2016-11-07 14:47:22 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * ext/qt/gstqtsrc.cc:
+       * ext/qt/gstqtsrc.h:
+       * ext/qt/qtwindow.cc:
+       * ext/qt/qtwindow.h:
+         qmlglsrc: some enhancements for qmlglsrc
+         1. Need set use-default-fbo to qquickwindow during set property
+         to support change render target on the fly.
+         2. Calculate qmlglsrc refresh frame rate in qtglwindow
+         https://bugzilla.gnome.org/show_bug.cgi?id=774035
+
 2016-11-03 15:03:59 +0100  Havard Graff <havard.graff@gmail.com>
 
        * gst/rtpmanager/gstrtpjitterbuffer.c:
          not, to possibly post an error message.
          https://bugzilla.gnome.org/show_bug.cgi?id=773861
 
+2016-10-05 12:19:12 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+         gl: GST_GL_TYPE -> GST_TYPE_GL
+         Some deprecated symbols are kept for backwards compatibility
+
+2016-10-05 12:19:12 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/gstqtsrc.cc:
+         gl: GST_GL_TYPE -> GST_TYPE_GL
+         Some deprecated symbols are kept for backwards compatibility
+
 2016-11-02 14:33:28 +0200  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/isomp4/gstqtmux.c:
          Otherwise we'll run into an assertion on specially crafted files.
          https://bugzilla.gnome.org/show_bug.cgi?id=773643
 
+2016-10-27 09:11:26 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/audiofx/gststereo.c:
+         Explicitly define float constants as float
+         With MSVC, this gives the following warning:
+         warning C4305: 'function': truncation from 'double' to 'gfloat'
+         Apparently, MSVC does not figure out what type to use for constants
+         based on the assignment. This warning is very spammy, so let's try to
+         fix it.
+
 2016-10-27 11:23:51 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
 
        * meson.build:
          compilation terminated.
          https://ci.gstreamer.net/job/GStreamer-master-meson/271/console
 
+2016-10-16 12:40:22 +0200  Sergey Borovkov <sergey.borovkov@wireload.net>
+
+       * ext/qt/qtwindow.cc:
+         qt: Fix failing build on RPI
+         https://bugzilla.gnome.org/show_bug.cgi?id=773026
+
 2016-10-16 02:18:22 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
 
        * gst/multifile/meson.build:
          Automatic update of common submodule
          From f49c55e to b18d820
 
+2016-09-09 16:36:03 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/meson.build:
+         meson: add build files for the gtk plugin
+
 2016-09-07 15:33:30 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
 
        * sys/osxaudio/Makefile.am:
          qtdemux: Fix crash with no cenc aux offset
          https://bugzilla.gnome.org/show_bug.cgi?id=770951
 
+2016-09-06 13:13:39 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * ext/qt/gstqsgtexture.cc:
+         qmlglsink: check qt_context_ first in GstQSGTexture::bind()
+         When start qmlglsink app, it will set NULL buffer to GstQSGTexture
+         in which case that qt_context_ will be a random value and cause
+         gst_gl_context_activate() fail.
+         https://bugzilla.gnome.org/show_bug.cgi?id=770925
+
 2016-09-05 09:39:33 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
 
        * gst/audioparsers/gstaacparse.c:
          argument of type ‘unsigned int’, but argument 9 has type
          ‘guint64 {aka long long unsigned int}’
 
+2016-08-12 21:25:34 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/twolame/meson.build:
+         Add support for Meson as alternative/parallel build system
+         https://github.com/mesonbuild/meson
+         With contributions from:
+         Tim-Philipp Müller <tim@centricular.com>
+         Jussi Pakkanen <jpakkane@gmail.com> (original port)
+         Highlights of the features provided are:
+         * Faster builds on Linux (~40-50% faster)
+         * The ability to build with MSVC on Windows
+         * Generate Visual Studio project files
+         * Generate XCode project files
+         * Much faster builds on Windows (on-par with Linux)
+         * Seriously fast configure and building on embedded
+         ... and many more. For more details see:
+         http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html
+         http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html
+         Building with Meson should work on both Linux and Windows, but may
+         need a few more tweaks on other operating systems.
+
+2016-08-12 21:25:34 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/lame/meson.build:
+         Add support for Meson as alternative/parallel build system
+         https://github.com/mesonbuild/meson
+         With contributions from:
+         Tim-Philipp Müller <tim@centricular.com>
+         Jussi Pakkanen <jpakkane@gmail.com> (original port)
+         Highlights of the features provided are:
+         * Faster builds on Linux (~40-50% faster)
+         * The ability to build with MSVC on Windows
+         * Generate Visual Studio project files
+         * Generate XCode project files
+         * Much faster builds on Windows (on-par with Linux)
+         * Seriously fast configure and building on embedded
+         ... and many more. For more details see:
+         http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html
+         http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html
+         Building with Meson should work on both Linux and Windows, but may
+         need a few more tweaks on other operating systems.
+
+2016-08-12 21:25:34 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/mpg123/meson.build:
+         Add support for Meson as alternative/parallel build system
+         https://github.com/mesonbuild/meson
+         With contributions from:
+         Tim-Philipp Müller <tim@centricular.com>
+         Jussi Pakkanen <jpakkane@gmail.com> (original port)
+         Highlights of the features provided are:
+         * Faster builds on Linux (~40-50% faster)
+         * The ability to build with MSVC on Windows
+         * Generate Visual Studio project files
+         * Generate XCode project files
+         * Much faster builds on Windows (on-par with Linux)
+         * Seriously fast configure and building on embedded
+         ... and many more. For more details see:
+         http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html
+         http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html
+         Building with Meson should work on both Linux and Windows, but may
+         need a few more tweaks on other operating systems.
+
 2016-08-12 21:12:30 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
 
        * .gitignore:
          qtmux: Added support for writing timecode track
          https://bugzilla.gnome.org/show_bug.cgi?id=767950
 
+2016-08-16 00:40:53 +1000  Jan Schmidt <jan@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qt: Use wglShareLists() workaround unconditionally.
+         Sometimes wglCreateContextAttribsARB() exists, but
+         isn't functional (some Intel drivers), so it's
+         easiest to do the workaround unconditionally.
+
+2016-08-08 13:41:14 +1000  Jan Schmidt <jan@centricular.com>
+
+       * ext/qt/gstqtglutility.cc:
+         qt: Move debug statement to after the category init
+         Don't output debug to an uninitialised debug category.
+
 2016-08-11 16:32:21 -0600  Thomas Bluemel <tbluemel@control4.com>
 
        * gst/udp/gstmultiudpsink.c:
          is interrupted with a 'break' statement. Need to have
          it advance to the next list item before interrupting.
 
+2016-07-27 09:28:23 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * tests/examples/qt/qmlsink/.gitignore:
+       * tests/examples/qt/qmlsink/main.cpp:
+       * tests/examples/qt/qmlsink/main.qml:
+       * tests/examples/qt/qmlsink/play.pro:
+       * tests/examples/qt/qmlsink/qml.qrc:
+       * tests/examples/qt/qmlsrc/.gitignore:
+       * tests/examples/qt/qmlsrc/grabqml.pro:
+       * tests/examples/qt/qmlsrc/main.cpp:
+       * tests/examples/qt/qmlsrc/main.qml:
+       * tests/examples/qt/qmlsrc/qml.qrc:
+         qmlglsrc: Add qmlglsrc unit test example
+         https://bugzilla.gnome.org/show_bug.cgi?id=768160
+
+2016-07-27 08:16:47 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * ext/qt/Makefile.am:
+       * ext/qt/gstplugin.cc:
+       * ext/qt/gstqtglutility.cc:
+       * ext/qt/gstqtglutility.h:
+       * ext/qt/gstqtsrc.cc:
+       * ext/qt/gstqtsrc.h:
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtwindow.cc:
+       * ext/qt/qtwindow.h:
+         qt: implement qmlglsrc for qml view grab
+         [Matthew Waters]: gst-indent sources
+         https://bugzilla.gnome.org/show_bug.cgi?id=768160
+
 2016-08-02 14:01:14 +0200  Carlos Rafael Giani <dv@pseudoterminal.org>
 
        * gst/wavparse/Makefile.am:
          The ts variable is a GstClockTime, don't print it
          as a GstClockTimeDiff.
 
+2016-07-22 17:00:14 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/examples/qt/qml/main.cpp:
+         qml: Don't forget to unref the actual sink element after setting it on glsinkbin
+
+2016-07-22 16:57:45 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/examples/qt/qml/main.cpp:
+         qml: Use glsinkbin instead of glupload directly
+
 2016-07-17 22:41:02 +1000  Jan Schmidt <jan@centricular.com>
 
        * gst/multifile/gstsplitmuxsink.c:
          The resulting file is not going to be playable without guesswork and raw caps
          should always have codec_data.
 
+2016-07-01 19:22:32 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/qt/Makefile.am:
+         qt: fix build some more when QPA is not available
+         Compiler would complain about include directory that didn't
+         exist because QPA_INCLUDE_PATH gets subst-ed regardless
+         (and if it didn't we'd have just an empty -I argument).
+         https://bugzilla.gnome.org/show_bug.cgi?id=767553
+
 2016-05-10 15:48:49 +0200  Edward Hervey <edward@centricular.com>
 
          qtdemux: Handle upstream GAP in push-mode/time segment
          to produce packets while the sinks are all PAUSED, piling up thousands of
          packets in the rtpjitterbuffer and other elements and finally failing.
 
+2016-06-27 18:15:08 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * ext/qt/qtitem.cc:
+         qmlglsink: Fix build error when don't have QPA installed.
+         Check header file existance and wrap the header file include
+         in the necessary #ifdef to avoid build error.
+         https://bugzilla.gnome.org/show_bug.cgi?id=767553
+
 2016-06-27 09:20:35 +0300  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/flv/gstflvdemux.c:
          flvdemux: Add support for H263 and MPEG4 part2
          https://bugzilla.gnome.org/show_bug.cgi?id=768006
 
+2016-06-16 15:13:02 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtplugin.pro:
+         qmlglsink: add win32 support
+         The current state of c++ ABI's on Window's and Gst's/Qt's conflicting
+         mingw builds means that we cannot use mingw for building the qt plugin.
+         Instead, a qmake .pro file is provided that is expected to be used with the
+         msvc binaries provided by Qt like so:
+         (with the PATH environment variable containing the path to the qt biniaries
+         and PKG_CONFIG_PATH containing the path to GStreamer modules)
+         cd /path/to/sources/gst-plugins-bad/ext/qt
+         qmake -tp vc
+         Then open the resulting VS project and build the library.  Then
+         cp debug/libgstqtsink.dll /path/to/prefix/lib/gstreamer-1.0/libgstqtsink.cll
+         https://bugzilla.gnome.org/show_bug.cgi?id=761260
+
 2016-06-21 17:10:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
 
        * docs/plugins/Makefile.am:
          rtpsession: take the lock when changing stats
          https://bugzilla.gnome.org/show_bug.cgi?id=766025
 
+2016-04-14 18:14:32 +0300  Sergey Borovkov <sergey.borovkov@wireload.net>
+
+       * ext/qt/qtitem.cc:
+         qml: Enable qmlglsink for eglfs
+         https://bugzilla.gnome.org/show_bug.cgi?id=763044
+
+2016-06-16 00:44:48 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         qmlglsink: propagate GL context creation failure upwards
+         Otherwise an application cannot know if the qmlglsink will be displaying frames
+         incorrectly/at all.
+
+2016-06-16 00:44:16 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         qmlglsink: also allow wayland-egl as a platform name
+
+2016-06-12 15:35:28 +0800  Haihua Hu <jared.hu@nxp.com>
+
+       * ext/qt/Makefile.am:
+       * ext/qt/qtitem.cc:
+         qmlglsink: Add Wayland support
+         Don't use gstgldisplay to get wayland display. Should use QPA on wayland
+         to get wayland display for QT.
+         https://bugzilla.gnome.org/show_bug.cgi?id=767553
+
 2016-06-15 11:19:43 +0200  Jürgen Slowack <jurgen.slowack@barco.com>
 
        * gst/rtp/gstrtph265pay.c:
          GOP in the mq was written in a new file.
          https://bugzilla.gnome.org/show_bug.cgi?id=765072
 
+2016-04-15 19:55:03 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/mpg123/gstmpg123audiodec.h:
+         mpg123: fix build with msvc
+         Fix syntax errors when compiling against cerbero-provided libmpg123
+         headers. We do the same as the libmpg123 internal visual studio
+         build here.
+         mpg123.h(1378): error C2143: syntax error: missing ')' before '('
+         mpg123.h(1378): error C2081: 'ssize_t': name in formal parameter list illegal
+         mpg123.h(1378): error C2143: syntax error: missing ')' before '*'
+         mpg123.h(1378): error C2091: function returns function
+         mpg123.h(1378): error C2143: syntax error: missing '{' before '*'
+         mpg123.h(1378): error C2059: syntax error: ')'
+         mpg123.h(1379): error C2143: syntax error: missing ')' before '*'
+         mpg123.h(1379): error C2365: 'off_t': redefinition; previous definition was 'typedef'
+         ...
+
 2016-04-15 19:59:15 +0300  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/audiofx/gstscaletempo.c:
          realize that the variable is set in all code paths.
          https://bugzilla.gnome.org/show_bug.cgi?id=764119
 
+2016-03-27 14:29:58 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gtkgstbasewidget.c:
+         gtk: Fix logging in base widget and fix desc of GL sink
+         Set a default category for gtkgstbasewidget lest the logging go to the 'default'
+         category where it can't be found easily
+
 2016-01-31 11:08:38 +1100  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/rtp/gstrtpjpegpay.c:
          be no reason to reject their streams.
          https://bugzilla.gnome.org/show_bug.cgi?id=761345
 
+2016-03-25 17:49:14 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk/gl: don't assert when gdk doesn't provide a GL context
+         Allows the application to check whether gtkglsink is supported by setting
+         the element to READY.
+         https://bugzilla.gnome.org/show_bug.cgi?id=764148
+
 2016-03-24 19:23:12 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
 
        * ext/vpx/gstvpxdec.c:
        * tests/check/elements/flvdemux.c:
          tests: Remove unused variables
 
+2016-03-10 08:44:57 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtkbasesink: post message to application for unhandled keyboard/mouse events
+         https://bugzilla.gnome.org/show_bug.cgi?id=763403
+
+2016-03-04 15:50:26 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+       * ext/qt/gstqtsink.cc:
+         bad: use new gst_element_class_add_static_pad_template()
+         https://bugzilla.gnome.org/show_bug.cgi?id=763081
+
+2016-03-04 15:50:26 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtksink.c:
+         bad: use new gst_element_class_add_static_pad_template()
+         https://bugzilla.gnome.org/show_bug.cgi?id=763081
+
 2016-03-16 20:26:16 +0200  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/interleave/deinterleave.c:
          filter caps.
          https://bugzilla.gnome.org/show_bug.cgi?id=763326
 
+2016-03-04 16:14:44 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         ugly: use new gst_element_class_add_static_pad_template()
+         https://bugzilla.gnome.org/show_bug.cgi?id=763082
+
+2016-03-04 16:14:44 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+       * ext/lame/gstlamemp3enc.c:
+         ugly: use new gst_element_class_add_static_pad_template()
+         https://bugzilla.gnome.org/show_bug.cgi?id=763082
+
 2016-03-24 15:14:23 +0900  Jimmy Ohn <yongjin.ohn@lge.com>
 
        * gst/isomp4/qtdemux.c:
          we should trust this macro instead.
          https://bugzilla.gnome.org/show_bug.cgi?id=762529
 
+2016-03-05 11:38:46 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/examples/gtk/Makefile.am:
+         gtk: examples: #define GST_USE_UNSTABLE_API and link with X11_LIBS
+         X11_LIBS is needed for XInitThreads() and without the #define we get
+         warnings about the GL API being still unstable.
+
 2016-03-04 14:07:19 +0200  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/udp/gstudpsrc.c:
          On Linux we would automatically join a multicast group, keep it consistent.
          https://bugzilla.gnome.org/show_bug.cgi?id=763093
 
+2016-03-01 18:22:37 +0300  Sergey Borovkov <sergey.borovkov@wireload.net>
+
+       * ext/qt/qtitem.cc:
+         qml: Fix leak of the OpenGL contexts
+         [Matthew Waters]: add NULL checks before unreffing
+         https://bugzilla.gnome.org/show_bug.cgi?id=762999
+
 2016-03-02 13:13:24 +0200  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/rtpmanager/gstrtpjitterbuffer.c:
          push it.
          https://bugzilla.gnome.org/show_bug.cgi?id=762516
 
+2016-02-23 23:10:20 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/qtitem.cc:
+         qt: use a static_cast instead of dynamic one
+         The dynamic_cast is a little but of overkill as the app will still crash if it
+         fails in the later g_assert.
+         Allows compilation with -fno-rtti
+         https://bugzilla.gnome.org/show_bug.cgi?id=762526
+
 2015-10-21 16:21:45 +0200  Philippe Normand <philn@igalia.com>
 
        * gst/isomp4/qtdemux.c:
          https://tools.ietf.org/html/draft-uberti-payload-vp9-00#section-4.2
          CID 1353479
 
+2016-01-24 17:40:37 +0300  Sergey Borovkov <sergey.borovkov@wireload.net>
+
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+         qmlglsink: Schedule onSceneGrpahInitialized to execute on render thread
+         onSceneGraphInitialized() is called from non render thread currently when
+         scene graph is already initialized.
+         https://bugzilla.gnome.org/show_bug.cgi?id=761003
+
 2016-02-22 09:09:01 +0900  Vineeth TM <vineeth.tm@samsung.com>
 
        * gst/avi/gstavidemux.c:
          that is returned by get-internal-session.
          https://bugzilla.gnome.org/show_bug.cgi?id=759293
 
+2015-12-14 11:09:46 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         plugins-bad: Fix example pipelines
+         rename gst-launch --> gst-launch-1.0
+         replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**)
+         fix caps in examples
+         https://bugzilla.gnome.org/show_bug.cgi?id=759432
+
+2015-08-17 11:50:28 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: still reset pending audio info on hard flush
+         Follow-up to previous commit.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752431
+
+2015-07-15 10:44:02 -0600  Jason Litzinger <jlitzinger@control4.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: fix handling of sample rate change during playback
+         If the sample rate of the media changes, the resulting flush will
+         clear the has_next_audioinfo flag, and the caps won't be sent
+         downstream.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752431
+
+2015-08-15 12:58:40 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         audiodecoders: use default pad accept-caps handling
+         Avoids useless check of downstream caps when handling an
+         accept-caps query
+         Elements: dtsdec, faad, gsmdec, mpg123audiodec, opusdec,
+         sbcdec, adpcmdec, sirendec
+
+2015-04-26 18:04:16 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/mpg123/Makefile.am:
+         Remove obsolete Android build cruft
+         This is not needed any longer.
+
+2015-01-11 01:08:08 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: fix compiler warning and simplify checks in set_caps
+         https://bugzilla.gnome.org/show_bug.cgi?id=740195
+
+2015-01-03 13:06:45 +0100  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: rework set_format code so mpg123audiodec works with decodebin/playbin
+         The old code was using gst_caps_normalize() and was generally overly
+         complex. Simplify by picking sample rate and number of channels from
+         upstream and the sample format from the allowed caps. If the format caps
+         is a list of strins, just pick the first one. And if the srcpad isn't
+         linked yet, use the default format (S16).
+         https://bugzilla.gnome.org/show_bug.cgi?id=740195
+
+2014-09-10 17:24:39 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         Fix up one-element lists in template caps
+
+2014-03-05 00:51:04 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/check/elements/mpg123audiodec.c:
+         tests: fix mpg123audiodec test for big-endian architectures
+
+2014-02-04 17:22:27 +0100  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: improved error report and checks
+         Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
+
+2013-12-05 12:04:39 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123audiodec: Require caps to be set before any data processing
+
+2013-07-26 17:25:42 +0200  Edward Hervey <edward@collabora.com>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: Remove dead assignment
+         harder ? :)
+
+2013-05-15 11:25:07 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * tests/check/elements/mpg123audiodec.c:
+         mpg123audiodec: Fix event handling in unit test
+
+2012-10-24 12:16:39 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/mpg123/Makefile.am:
+         gst: Add better support for static plugins
+
+2013-04-15 00:22:39 -0700  David Schleef <ds@schleef.org>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: Add conditional on API version for new enum
+
+2016-02-16 19:59:13 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+       * ext/gtk/gstgtkbasesink.h:
+         gtk(gl)sink: remove the signal handlers on finalize
+         It's possible that the sink element will be freed before the widget is
+         destroyed.  When the widget was eventually destroyed, it was attempting to
+         access member variables of the freed sink struct which resulted in undefined
+         behaviour.
+         Fix by disconnecting our signal on finalize.
+         https://bugzilla.gnome.org/show_bug.cgi?id=762098
+
 2016-02-16 00:19:00 +0000  Tim-Philipp Müller <tim@centricular.com>
 
        * gst/rtp/Makefile.am:
          Use constants more often. Cleanup comments and add more to explain how things
          work.
 
+2016-02-09 12:14:04 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         glsyncmeta: separate out gpu/cpu waits.
+         CPU waits are more expensive and are only required if the CPU is ever going to
+         access the data. GPU waits perform inter-context synchronisation and are cheaper
+         as they don't require CPU intervention.
+
 2016-02-08 23:41:32 +0000  Luis de Bethencourt <luisbg@osg.samsung.com>
 
        * gst/deinterlace/gstdeinterlace.c:
          Automatic update of common submodule
          From 86e4663 to b64f03f
 
+2016-01-24 15:47:12 +0100  Holger Kaelberer <holger.k@elberer.de>
+
+       * tests/examples/qt/qml/main.qml:
+         tests: fix warning in qml example
+         https://bugzilla.gnome.org/show_bug.cgi?id=756082
+
 2016-01-30 18:43:30 +0100  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/rtp/gstrtpjpegpay.c:
          This patch initializes them to zero.
          https://bugzilla.gnome.org/show_bug.cgi?id=761094
 
+2016-01-25 16:29:46 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqtsink.cc:
+         qt: specify that we currently only take 2D textures
+         Fixes black screen video playback on android without a caps filter.
+
 2016-01-25 15:03:23 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
 
        * gst/multifile/gstsplitmuxpartreader.c:
          FALSE would mean FLOW_OK
          https://bugzilla.gnome.org/show_bug.cgi?id=760666
 
+2016-01-08 22:19:06 +0300  Sergey Borovkov <serge.borovkov@gmail.com>
+
+       * ext/qt/qtitem.cc:
+         qml: Mark material dirty when texture buffer is updated
+         Qt might not redraw the scene otherwise.
+         https://bugzilla.gnome.org/show_bug.cgi?id=758286
+
 2016-01-15 03:57:45 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
 
        * sys/osxaudio/gstosxcoreaudiohal.c:
        * docs/plugins/inspect/plugin-y4menc.xml:
          docs: update to git
 
+2015-12-15 19:28:05 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/qt/Makefile.am:
+         qtsink: Add configured GL cflags to the build
+         We don't directly link to GL in the element, though we use GL headers.
+         For this reason we need to include the proper GL headers path. This
+         prevent this element from using a different GL header then libgstgl.
+
 2015-12-15 14:27:22 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
 
        * ext/vpx/Makefile.am:
          Base class for the vp8dec and vp9dec.
          https://bugzilla.gnome.org/show_bug.cgi?id=755510
 
+2015-12-14 11:09:46 +0900  Vineeth TM <vineeth.tm@samsung.com>
+
+       * gst/audiofx/gststereo.c:
+         plugins-bad: Fix example pipelines
+         rename gst-launch --> gst-launch-1.0
+         replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**)
+         fix caps in examples
+         https://bugzilla.gnome.org/show_bug.cgi?id=759432
+
 2015-06-10 09:17:08 -0400  Xavier Claessens <xavier.claessens@collabora.com>
 
        * configure.ac:
          - correct set and get mute functions
          https://bugzilla.gnome.org/show_bug.cgi?id=755106
 
+2015-12-14 13:43:59 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqsgtexture.cc:
+         glmemory: base classify and add the pbo memory on top
+         The base class is useful for having multiple backing memory types other
+         than the default.  e.g. IOSurface, EGLImage, dmabuf?
+         The PBO transfer logic is now inside GstGLMemoryPBO which uses GstGLBuffer
+         to manage the PBO memory.
+         This also moves the format utility functions into their own file.
+
 2015-12-11 11:23:13 +0100  Thomas Roos <thomas.roos@industronic.de>
 
        * sys/directsound/gstdirectsoundsink.c:
          qtdemux: unite duplicate FourCC
          Unite in fourcc.h the FourCCs that are used twice or more in qtdemux
 
+2015-11-20 11:18:43 +1100  Roman Nowicki <rnowicki@sims.pl>
+
+       * ext/qt/qtitem.cc:
+         qml: reuse existing GstQSGTexture
+         Fixes a memory leak leaking the texture objects.
+         https://bugzilla.gnome.org/show_bug.cgi?id=758286
+
+2015-11-20 11:08:37 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqsgtexture.cc:
+         qml: activate the wrapped context when binding
+         Mitigates the following critical
+         gst_gl_context_thread_add: assertion 'context->priv->active_thread == g_thread_self ()' failed
+
+2015-11-19 11:55:19 +0100  Roman Nowicki <rnowicki@sims.pl>
+
+       * ext/qt/qtitem.cc:
+         qml: proper initialization if scene is already initialized
+         The scene graph can be initialized when the we receive window handle change
+         notification and so we will not receive a scenegraph initialization
+         notification.  Initialize ourself in this case.
+         https://bugzilla.gnome.org/show_bug.cgi?id=758337
+
 2015-11-19 15:33:45 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
 
        * sys/v4l2/gstv4l2transform.c:
          https://www.opus-codec.org/docs/opus_in_isobmff.html
          https://bugzilla.gnome.org/show_bug.cgi?id=742643
 
+2015-11-17 15:23:17 -0800  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
+
+       * tests/examples/gtk/glliveshader.c:
+         Remove unnecessary NULL checks before g_free()
+         g_free() is NULL-safe
+
 2015-11-18 19:10:56 +0200  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/isomp4/qtdemux.c:
          finish_decompress
          https://bugzilla.gnome.org/show_bug.cgi?id=753087
 
+2015-11-10 12:32:39 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+         gtk: add the overlaycomposition feature to the template caps
+         There is a possibility that the _get_caps impl will be called with the
+         feature in the filter caps which when interecting with the template,
+         will return EMPTY and therefore fail negotiation.
+         https://bugzilla.gnome.org/show_bug.cgi?id=757854
+
 2015-08-10 11:23:45 -0300  Thiago Santos <thiagoss@osg.samsung.com>
 
        * gst/isomp4/qtdemux.c:
        * gst/isomp4/gstqtmuxmap.c:
          qtmux: unify raw audio caps into a single caps structure
 
+2015-10-19 15:15:30 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         gl: be consistent in gobject boilerpate
+         GST_GL_IS_* vs GST_IS_GL_*
+         git grep -l 'GST_GL_IS_' | xargs sed -i 's/GST_GL_IS_/GST_IS_GL_/g'
+
+2015-10-19 15:15:30 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gl: be consistent in gobject boilerpate
+         GST_GL_IS_* vs GST_IS_GL_*
+         git grep -l 'GST_GL_IS_' | xargs sed -i 's/GST_GL_IS_/GST_IS_GL_/g'
+
+2015-10-17 15:26:46 +1100  Matthew Waters <matthew@centricular.com>
+
+       * tests/examples/gtk/glliveshader.c:
+         glshaderelement: implement on-demand create-shader signalling
+         One may not have an GstGLContext available or current in the thread where one
+         would need to update the shader.  Support this by signalling create-shader
+         whenever the one-shot 'update-shader' is set to TRUE.
+
+2015-10-17 02:40:50 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtk: separate out the widget/window destroy callbacks
+         Fixes assertion due to the sink_finalize() being run before the widget destroy
+         callback.
+         https://bugzilla.gnome.org/show_bug.cgi?id=755969
+
+2015-10-17 01:08:29 +1100  Matthew Waters <matthew@centricular.com>
+
+       * tests/examples/gtk/Makefile.am:
+       * tests/examples/gtk/glliveshader.c:
+         gl/examples: add a live shader demo using the new GstGLSLStage
+         Implemented with videotestsrc ! glshader ! glupload ! gtkglsink
+         Errors on an invalid shader compilation are ignored however any error
+         provided by the glsl compiler is printed to stdout.
+
 2015-10-14 15:42:50 -0700  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
 
        * gst/isomp4/qtdemux.c:
          qtdemux: add support for FFV1 coded streams in mov
          https://bugzilla.gnome.org/show_bug.cgi?id=752495
 
+2015-09-04 16:02:32 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         glshader: port to using GstGLSLStage objects for string management
+         A GstGLShader is now simply a collection of stages that are
+         compiled and linked together into a program.  The uniform/attribute
+         interface has remained the same.
+
 2015-10-14 15:53:26 +0300  Sebastian Dröge <sebastian@centricular.com>
 
        * ext/soup/gstsouphttpsrc.c:
          (eg. sender sources for a server/client)
          https://bugzilla.gnome.org/show_bug.cgi?id=746747
 
+2015-09-15 03:14:37 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstplugin.cc:
+       * ext/qt/gstqsgtexture.h:
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+         qt: add support for building on osx/ios
+         Including:
+         - Necessary configure checks
+         - Necessary compile time platform checks
+         - Necessary runtime qt iOS/OSX platform detection
+         https://bugzilla.gnome.org/show_bug.cgi?id=755100
+
 2015-10-02 14:17:48 +1000  Jan Schmidt <jan@centricular.com>
 
        * sys/ximage/gstximagesrc.c:
          from a static pad template and will 'leak' in the end, just doing
          the cleanup for the good practice.
 
+2015-09-29 22:57:52 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk: add some GL debug statements to show up in GL traces
+
+2015-08-28 16:24:24 +0100  Luis de Bethencourt <luis@debethencourt.com>
+
+       * ext/qt/gstqtsink.cc:
+         qtsink: explicitely fallthrough switch statement
+         In case ret is False, fallthrough to default case.
+         CID #1320705
+
 2015-09-29 11:15:01 +0100  Tim-Philipp Müller <tim@centricular.com>
 
        * tests/check/Makefile.am:
          alignments, not only <= G_MEM_ALIGN.
          https://bugzilla.gnome.org/show_bug.cgi?id=755708
 
+2015-09-29 00:25:00 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtk: fix assertion when the element has no peer
+         When proxying keyboard/navigation/mouse events, only unref a successfully
+         retreived peer pad.
+         https://bugzilla.gnome.org/show_bug.cgi?id=755738
+
+2015-08-28 16:35:39 +0100  Luis de Bethencourt <luis@debethencourt.com>
+
+       * ext/qt/qtitem.cc:
+         qml: remove overwritten value
+         Value in tex is overwritten before being used. Removing it.
+         CID 1320715
+         https://bugzilla.gnome.org/show_bug.cgi?id=754253
+
+2015-09-02 23:45:07 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/Makefile.am:
+       * ext/qt/gstqsgtexture.h:
+       * ext/qt/gstqtgl.h:
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+         qt: add support for building/running on android
+         Including:
+         - Necessary configure checks
+         - Necessary compile time platform checks
+         - Necessary runtime qt android platform detection
+         - Escaping GLsync definition with Qt's GLES2 implementation
+         https://bugzilla.gnome.org/show_bug.cgi?id=754466
+
+2015-09-02 23:40:31 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/Makefile.am:
+         qt: don't use CPPFLAGS for tools that cannot use them
+         For example moc will bail out when given arguments it does not
+         know about.  The moc specific MOC_CPPFLAGS can still be used
+         to pass flags to moc.
+         https://bugzilla.gnome.org/show_bug.cgi?id=754466
+
+2015-09-02 23:39:54 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/Makefile.am:
+         qt: rename library to include gst prefix
+         libqtsink -> libgstqtsink
+         https://bugzilla.gnome.org/show_bug.cgi?id=754466
+
 2015-09-25 10:01:37 +0200  Guillaume Marquebielle <guillaume.marquebielle@parrot.com>
 
        * gst/audioparsers/gstaacparse.c:
          behaviour/segfaults).
          https://bugzilla.gnome.org/show_bug.cgi?id=755621
 
+2015-09-24 18:51:39 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtk: Only run from the main thread in stop() if we created the window
+         We're not doing anything at all from the main thread in other cases.
+
+2015-09-24 15:52:40 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gtkgstbasewidget.c:
+         gtk: When setting format check if pending format changed
+         In case the format changed fast and the pending format is different
+         than the currently set but the currently set is equal to the pending
+         one we could end up having mismatch between the finally set format
+         and the data stream format.
+         https://bugzilla.gnome.org/show_bug.cgi?id=755542
+
+2015-09-24 15:51:28 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtk: Do not forget to release OBJECT_LOCK on error path
+         https://bugzilla.gnome.org/show_bug.cgi?id=755542
+
+2015-09-24 11:37:04 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/Makefile.am:
+       * ext/gtk/gstgtkbasesink.c:
+       * ext/gtk/gstgtkutils.c:
+       * ext/gtk/gstgtkutils.h:
+       * ext/gtk/gtkgstglwidget.c:
+         gtk: Factor out a function to run a function on main thread
+         https://bugzilla.gnome.org/show_bug.cgi?id=755251
+
+2015-09-24 10:51:31 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtk: Marshall state changes in the main thread
+         Gtk is not MT safe thus we need to make sure that everything is done
+         in the main thread when working with it.
+         https://bugzilla.gnome.org/show_bug.cgi?id=755251
+
 2015-09-23 20:59:00 +0200  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/isomp4/qtdemux.c:
          spectrum: send phase values in the GstMessage for Phase info
          https://bugzilla.gnome.org/show_bug.cgi?id=755463
 
+2015-09-23 11:42:51 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtksink: Do not show window until we reach the PAUSED state
+         https://bugzilla.gnome.org/show_bug.cgi?id=755459
+
 2015-09-22 00:46:01 +1000  Jan Schmidt <jan@centricular.com>
 
        * gst/matroska/matroska-mux.c:
          matroska-mux: Don't output a warning on MONO multiview mode.
 
+2015-09-21 10:47:15 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtksink: Do not re destroy the GtkWindow if destroyed by the user
+         Otherwise we will get an ASSERT.
+         Fixes https://bugzilla.gnome.org/show_bug.cgi?id=755249
+
 2015-09-19 17:02:18 +0200  Sebastian Rasmussen <sebras@hotmail.com>
 
        * gst/rtp/gstrtptheoradepay.c:
          rtp{vorbis,theora}pay: Store headers in the packet buffers lists, not a NULL buffer
          https://bugzilla.gnome.org/show_bug.cgi?id=755265
 
+2015-09-19 11:46:37 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gstgtkbasesink.c:
+       * ext/gtk/gstgtkbasesink.h:
+       * ext/gtk/gstgtkglsink.c:
+         gtkglsink: Hide and clean the GtkWindow we might create
+         When stopping the sink we should always hide the window.
+         https://bugzilla.gnome.org/show_bug.cgi?id=755249
+
 === release 1.5.91 ===
 
 2015-09-18 19:33:13 +0200  Sebastian Dröge <sebastian@centricular.com>
          gst_tag_list_insert() does not take ownership of the inserted taglist.
          https://bugzilla.gnome.org/show_bug.cgi?id=755138
 
+2015-09-17 13:35:02 +0900  Vineeth T M <vineeth.tm@samsung.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gl: Fix GError leaks during failures
+         https://bugzilla.gnome.org/show_bug.cgi?id=755140
+
 2015-09-16 07:05:36 +1000  Jan Schmidt <jan@centricular.com>
 
        * gst/audioparsers/gstaacparse.c:
          rtsp: fix small README typo
          https://bugzilla.gnome.org/show_bug.cgi?id=754807
 
+2015-09-10 00:07:18 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         gtk, qt: more specifically define the compile time requirements
+         Otherwise we could include headers/configurations that will
+         never been installed.
+         https://bugzilla.gnome.org/show_bug.cgi?id=754732
+
+2015-09-10 00:07:18 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk, qt: more specifically define the compile time requirements
+         Otherwise we could include headers/configurations that will
+         never been installed.
+         https://bugzilla.gnome.org/show_bug.cgi?id=754732
+
+2015-09-10 00:00:11 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqsgtexture.cc:
+         qt: use our function table instead of directly calling gl functions
+         Otherwise when building with --as-needed we would need to link to
+         a GL or GLES library.
+         https://bugzilla.gnome.org/show_bug.cgi?id=754732
+
 2015-09-04 19:45:37 +0100  Tim-Philipp Müller <tim@centricular.com>
 
        * gst/audioparsers/gstwavpackparse.c:
          When generating a random keystring, don't overrun the 30 byte
          buffer by generating 32 bytes into it.
 
+2015-09-04 15:43:40 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gtkgstbasewidget.c:
+         gtk: Do not consider GtkEvents as handled
+         Applications might still want to use them
+         after the sink transformed them into
+         GstNavigation events
+
 2015-09-04 15:18:05 +0300  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/udp/gstudpsrc.c:
        * gst/dtmf/gstrtpdtmfsrc.c:
          dtmfsrc: Reply to latency query
 
+2015-08-07 17:27:48 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         qmlsink: Ensure that at least one windowing system is available
+         Otherwise, we'll just crash at runtime because the gl context is NULL
+         https://bugzilla.gnome.org/show_bug.cgi?id=754108
+
 2015-08-31 16:42:30 -0400  Olivier Crête <olivier.crete@collabora.com>
 
        * tests/check/elements/rtpsession.c:
          that at least one new RTCP packet is produced.
          https://bugzilla.gnome.org/show_bug.cgi?id=750731
 
+2015-08-31 18:06:31 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk, qt, gl: fix typo in debug and error messages
+
+2015-08-31 18:06:31 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/qtitem.cc:
+         gtk, qt, gl: fix typo in debug and error messages
+
 2015-08-31 13:56:04 +0200  Stefan Sauer <ensonic@users.sf.net>
 
        * tests/check/elements/level.c:
          Signed-off-by: Jean-Michel Hautbois <jean-michel.hautbois@veo-labs.com>
          https://bugzilla.gnome.org/show_bug.cgi?id=753875
 
+2015-08-19 13:52:21 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk/gl: Use our GL function table instead of directly calling GL functions
+         Otherwise we would have to link the plugin to the GL libraries directly.
+
 === release 1.5.90 ===
 
 2015-08-19 13:29:53 +0300  Sebastian Dröge <sebastian@centricular.com>
        * gst/law/alaw-encode.h:
          alawenc: port to AudioEncoder base class
 
+2015-08-15 22:15:26 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         audioencoders: use template subset check for accept-caps
+         It is faster than doing a query that propagates downstream and
+         should be enough
+         Elements: amrnbenc, lamemp3enc, twolamemp2enc
+
+2015-08-15 22:15:26 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+       * ext/lame/gstlamemp3enc.c:
+         audioencoders: use template subset check for accept-caps
+         It is faster than doing a query that propagates downstream and
+         should be enough
+         Elements: amrnbenc, lamemp3enc, twolamemp2enc
+
 2015-08-15 09:16:23 -0300  Thiago Santos <thiagoss@osg.samsung.com>
 
        * ext/flac/gstflacdec.c:
          https://bugzilla.gnome.org/show_bug.cgi?id=752602
          https://bugzilla.gnome.org/show_bug.cgi?id=752603
 
+2015-08-15 14:31:15 +0200  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+         glsink: Enable sync meta on pools we offer
+         As the upload is asynchronous, we need to enable the sync meta to
+         gain correct rendering. The buffer pool receiver don't know about
+         that.
+
+2015-08-15 15:12:27 +0200  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gtkgstglwidget.c:
+         gtkglsink: Add overlay composition support
+         Rendering composition overlay in GL with additional high resolution
+         overlay being added.
+
+2015-08-15 15:08:11 +0200  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gtkgstbasewidget.c:
+       * ext/gtk/gtkgstbasewidget.h:
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstwidget.c:
+         gtkglsink: Fix unsafe handling of buffer life time
+         We need to keep the active buffer (the one we have retreive a
+         texture id from) otherwise it's racy and upstream may upload
+         new content before we have rendered or during later redisplay.
+
+2015-08-14 18:07:15 +0200  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gtkgstbasewidget.c:
+       * ext/gtk/gtkgstbasewidget.h:
+       * ext/gtk/gtkgstglwidget.c:
+         gtkglsink: Remove reset path
+         The reset path is bogus and there is no reason to get rid of these
+         things during resize.
+
 2015-08-15 12:58:50 +0200  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/audioparsers/gstdcaparse.c:
          matroska: Remove unused variable
          https://bugzilla.gnome.org/show_bug.cgi?id=753556
 
+2015-08-12 00:18:20 +0200  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstbasewidget.c:
+         gtk: fix motion event name
+         s/motion/mouse/
+         Fixes hover interaction with DVD menus
+
+2015-08-12 00:14:14 +0200  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstbasewidget.c:
+         gtk: correct navigation events for window scaling
+         i.e. take into account the possiblity of scaling in the sink
+         or through GDK_SCALE.
+         Fixes DVD Menus with a scaled gtkwidget
+
+2015-08-11 13:34:59 +0200  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+       * ext/gtk/gtkgstbasewidget.c:
+       * ext/gtk/gtkgstbasewidget.h:
+         gtk: implement GstNavigation interface
+         Now we can push key/mouse input into the pipeline for DVD use cases.
+
 2015-08-04 20:59:17 +0300  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/rtp/Makefile.am:
          We always put 4:2:0 into the caps before, which obviously is wrong for 4:2:2
          and 4:4:4 formats.
 
+2015-08-08 17:28:03 +0200  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/gstqsgtexture.cc:
+       * ext/qt/gstqsgtexture.h:
+       * ext/qt/qtitem.cc:
+         qml: implement the required multiple GL context synchonisation
+         From GStreamer's GL context into the QML context
+
 2015-08-06 17:46:13 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
 
        * gst/rtp/gstrtpklvdepay.c:
          v4l2bufferpool: set GST_BUFFER_COPY_FLAGS to copy flags also
          https://bugzilla.gnome.org/show_bug.cgi?id=752618
 
+2015-07-22 15:13:48 +0200  Edward Hervey <edward@centricular.com>
+
+       * ext/qt/Makefile.am:
+         qt: Don't dist files that might not exist
+         We only require moc building at build time.
+
+2015-07-22 08:05:04 +0200  Edward Hervey <bilboed@bilboed.com>
+
+       * ext/qt/Makefile.am:
+         qt: Tidy up makefile a bit more
+         Separate generated files, from disted files
+
+2015-07-21 11:23:21 +0100  Julien Isorce <j.isorce@samsung.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gstglwidget: use gst_gl_display_create_context
+         Also handle the failure case.
+         https://bugzilla.gnome.org/show_bug.cgi?id=750310
+
 2015-07-16 18:09:30 +0100  Tim-Philipp Müller <tim@centricular.com>
 
        * tests/check/Makefile.am:
          Should set timestamp when queue buffer.
          https://bugzilla.gnome.org/show_bug.cgi?id=752618
 
+2015-07-20 11:09:20 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk: Log GDK GL error when failling creating GdkGLContext
+
+2015-07-18 17:19:18 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         glcontext: fix get_current_gl_api on x11/nvidia drivers
+         They require to get_proc_address some functions through the
+         platform specific {glX,egl}GetProcAddress rather than the default
+         GL library symbol lookup.
+
+2015-07-18 17:19:18 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         glcontext: fix get_current_gl_api on x11/nvidia drivers
+         They require to get_proc_address some functions through the
+         platform specific {glX,egl}GetProcAddress rather than the default
+         GL library symbol lookup.
+
+2015-07-17 16:00:01 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtkgstglwidget: Cleanup unused private member
+         new_buffer has been moved to base class. Also cleanup
+         the properties comment, which are also all moved into
+         the base class.
+
+2015-07-17 15:57:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+         gtksink: "widget" must be access from main thread
+         Document that "widget" property must be accessed from the
+         main thread (where GTK is running). This is the same for
+         state transition on these elements. It is very natural to
+         do so un GTK applications.
+
+2015-07-17 15:08:53 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtkglsink: Don't leak vertex array and buffers
+         This is now possible since reset is always called from the
+         main thread.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752441
+
+2015-07-17 14:36:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gtkgstbasewidget.c:
+       * ext/gtk/gtkgstbasewidget.h:
+         gtkgstbasewidget: Fix black frame on resize
+         This is solved by only applying the new format when the next
+         buffer is to be rendered and on the GTK thread.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752441
+
+2015-07-17 13:05:05 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkbasesink.c:
+       * ext/gtk/gtkgstbasewidget.c:
+       * ext/gtk/gtkgstbasewidget.h:
+         gtkgstbasewidget: Pass already parsed VideoInfo
+         As the base sink already parse the caps into VideoInfo it
+         makes sense to pass in VideoInfo to the widget instead.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752441
+
+2015-07-16 16:49:32 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+         gtkglsink: Port to GstGtkBaseSink base class
+         https://bugzilla.gnome.org/show_bug.cgi?id=752441
+
+2015-07-16 16:00:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gstgtksink.h:
+         gtksink: Port to GstGtkBaseSink
+         https://bugzilla.gnome.org/show_bug.cgi?id=752441
+
+2015-07-16 15:59:59 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/Makefile.am:
+       * ext/gtk/gstgtkbasesink.c:
+       * ext/gtk/gstgtkbasesink.h:
+         gtkbasesink: Create a base class
+         This contains all the common code between the gtkglsink and
+         gtksink.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752441
+
+2015-07-16 14:30:42 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstglwidget.h:
+         gtkglsink: Port to GtkGstBaseWidget
+         https://bugzilla.gnome.org/show_bug.cgi?id=752441
+
+2015-07-16 12:55:11 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gstgtksink.h:
+       * ext/gtk/gtkgstwidget.c:
+       * ext/gtk/gtkgstwidget.h:
+         gtksink: Port to GtkGstBaseWidget
+         https://bugzilla.gnome.org/show_bug.cgi?id=752441
+
+2015-07-16 12:51:34 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/Makefile.am:
+       * ext/gtk/gtkgstbasewidget.c:
+       * ext/gtk/gtkgstbasewidget.h:
+         gtk: Add GtkGstBaseWidget
+         This is a "pseudo" base class. Basically it's a shared instance
+         and class structure and a shared set of function between the
+         two widget. It cannot have it's own type like normal base class
+         since the one instance will implement GtkGLArea while the other
+         implements GtkDrawingAreay. To workaround this, the parent instance
+         and class is a union of both.
+         https://bugzilla.gnome.org/show_bug.cgi?id=752441
+
+2015-07-15 17:35:22 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtkgstglwidget: Remove unused gl_caps
+
+2015-07-15 16:56:33 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtksink.c:
+         gtksink: Create a window if the widget is unparented
+         The same way as it's now done with the gtkglsink, create a top
+         level window if the widget is not parented.
+         https://bugzilla.gnome.org/show_bug.cgi?id=751104
+
+2015-07-15 14:35:02 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtksink.c:
+         gtksink: Ensure the copy pasted code remains the same
+         Move back the default property at the same place they are in the
+         other sink. This helps when using a diff viewer to synchronized
+         this unfortunate copy paste.
+         https://bugzilla.gnome.org/show_bug.cgi?id=751104
+
+2015-07-15 14:32:42 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstwidget.c:
+         gtk: Fix race between queue_draw and destroy
+         In GTK dispose can be called before the last ref is reached. This
+         happens when you close the container window. The dispose will be
+         explicitly called, and destroyed notify will be fired. This patch
+         fixes this race by properly tracking the widget state.
+         In the sink, we now set the widget pointer to NULL, so the widget
+         will properly get created again if you set your pipeline to NULL
+         state after the widget was destroy, and set it back to PLAYING.
+         https://bugzilla.gnome.org/show_bug.cgi?id=751104
+
 2015-07-16 15:12:17 +0200  Havard Graff <havard.graff@gmail.com>
 
        * gst/rtpmanager/gstrtpmux.c:
          Add the extra properties we get from pulse to the GstDevice we expose
          with the device monitor
 
+2015-07-15 11:47:51 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gtkgstwidget.c:
+         gtkgstwidget: Add missing break in get_property
+
+2015-07-15 11:44:30 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gstgtksink.h:
+         gtksinks: Remove undefined private structure
+         The classes contains a private structure which are not defined,
+         hence unused.
+
 2015-07-15 17:20:20 +0530  Ravi Kiran K N <ravi.kiran@samsung.com>
 
        * gst/audiofx/audioinvert.c:
          the map the base class has already done.
          https://bugzilla.gnome.org/show_bug.cgi?id=750235
 
+2015-07-10 14:01:43 +0200  Edward Hervey <edward@centricular.com>
+
+       * ext/qt/qtitem.cc:
+         configure/qt: Fix build without Qt5X11Extras
+
+2015-07-06 23:10:51 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/qt/.gitignore:
+       * ext/qt/Makefile.am:
+       * ext/qt/gstplugin.cc:
+       * ext/qt/gstqsgtexture.cc:
+       * ext/qt/gstqsgtexture.h:
+       * ext/qt/gstqtsink.cc:
+       * ext/qt/gstqtsink.h:
+       * ext/qt/qtitem.cc:
+       * ext/qt/qtitem.h:
+       * tests/examples/qt/qml/.gitignore:
+       * tests/examples/qt/qml/main.cpp:
+       * tests/examples/qt/qml/main.qml:
+       * tests/examples/qt/qml/play.pro:
+       * tests/examples/qt/qml/qml.qrc:
+         new qt5 qml GL video sink
+         Very much in the same spirit as the Gtk GL sink
+         Two things are provided
+         1. A QQuickItem subclass that renders out RGBA filled GstGLMemory
+         buffers that is instantiated from qml.
+         2. A sink element that will push buffers into (1)
+         To use
+         1. Declare the GstGLVideoItem in qml with an appropriate
+         objectName property set.
+         2. Get the aforementioned GstGLVideoItem from qml using something like
+         QQmlApplicationEngine engine;
+         engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
+         QObject *rootObject = engine.rootObjects().first();
+         QQuickItem *videoItem = rootObject->findChild<QQuickItem *> ("videoItem");
+         3. Set the videoItem on the sink
+         https://bugzilla.gnome.org/show_bug.cgi?id=752185
+
 2015-07-10 00:13:32 +0300  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/rtpmanager/gstrtpjitterbuffer.c:
        * tests/check/elements/.gitignore:
          gitignore: ignore rtph263 test
 
+2015-07-09 13:03:23 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstwidget.c:
+         gtk: add to the generic/states test
+
+2015-06-17 09:36:57 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+         GstGtkGLSink: Ensure widget has a toplevel parent
+         Checking for a parent is not enough, it must have a toplevel one.
+         If widget has no toplevel parent then add it in a GtkWindow, that
+         make it usable from gst-launch-1.0.
+         https://bugzilla.gnome.org/show_bug.cgi?id=751104
+
+2015-06-17 09:36:40 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+         GstGtkGLSink: Post error if widget gets destroyed
+         https://bugzilla.gnome.org/show_bug.cgi?id=751104
+
+2015-06-16 16:21:26 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+         GstGtkGLSink: fix possible warning in finalize
+         If the element is finalized before going in READY state
+         the widget could still be NULL.
+         https://bugzilla.gnome.org/show_bug.cgi?id=751104
+
 2015-07-08 23:47:44 -0300  Thiago Santos <thiagoss@osg.samsung.com>
 
        * tests/check/elements/rtpjitterbuffer.c:
          This patch is fixed the compile error in 4.6.3 GCC version.
          https://bugzilla.gnome.org/show_bug.cgi?id=751985
 
+2015-07-06 19:33:35 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtkglsink: Release the widget lock when trying to get the GL context
+         Otherwise we might be waiting for the lock on the main loop (for
+         example in the ->render vmethod) and thus we will deadlock.
+
 2014-11-12 12:08:58 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>
 
        * gst/flv/gstflvdemux.c:
          Otherwise all RTP times after a wraparound would be considered as going
          backwards, they will always be smaller than the ext RTP time.
 
+2015-06-15 21:32:43 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtkglwidget: Const'ify another array
+
+2015-06-15 21:29:46 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtkglwidget: Calculate the viewport size ourselves
+         Getting the current viewport and modifying it relatively will produce an
+         interesting feedback loop during widget resizing. Over a few frames we
+         will gradually move the viewport a bit until it converged again, adding
+         unnecessary additional borders at the top and left.
+
+2015-06-15 21:24:01 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstwidget.c:
+         gtk: Use the display width/height for the widget's preferred width/height
+
+2015-06-15 20:45:11 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gtkgstwidget.c:
+         gtksink: Add support for xRGB/BGRx
+
+2015-06-15 20:39:59 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gtkgstwidget.c:
+         gtk: Cairo color formats are in native endianness, GStreamer's in memory order
+         CAIRO_FORMAT_ARGB32 is ARGB on big endian and BGRA on little endian.
+
+2015-06-15 20:35:38 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gstgtksink.h:
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstwidget.c:
+         gtk: Implement ignore-alpha property and enable it by default
+
+2015-06-15 20:13:57 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtksink.c:
+         gtk: Sync properties from the sink to the widget upon widget creation
+
 2015-06-15 19:25:12 +0200  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/rtpmanager/gstrtpbin.c:
          rtpbin: The default rtp-profile should be AVP, not AVPF
 
+2015-06-15 18:28:37 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gstgtksink.h:
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstwidget.c:
+         gtk: implement pixel and display aspect ratio handling
+
 2015-06-15 14:32:21 +0900  Sangkyu Park <sk1122.park@samsung.com>
 
        * gst/rtpmanager/gstrtpjitterbuffer.c:
          2. Fix a typing error of comment.
          https://bugzilla.gnome.org/show_bug.cgi?id=750965
 
+2015-06-15 14:35:35 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk: silence unused variable warnings for unsupported winsys'
+
+2015-06-15 14:33:08 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk: implement basic wayland GL support
+
 2015-06-12 17:44:51 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
 
        * gst/flv/gstflvmux.c:
          Now it returns zero latency, but at least it doesn't fail.
          https://bugzilla.gnome.org/show_bug.cgi?id=750868
 
+2015-06-12 15:39:56 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk: Do not try to activate a NULL GLContext
+         At that point in the code nothing guarantees it exists
+
 2015-04-07 14:06:16 +0530  Arun Raghavan <git@arunraghavan.net>
 
        * ext/pulse/pulsesrc.c:
          pulsesrc: Fix mapping of latency parameters to buffer attributes
 
+2015-06-12 15:17:30 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gstgtksink.h:
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstwidget.c:
+         gtk: implement video aspect-ratio handling
+         For both the software and the GL sink's.
+         Doesn't deal with the pixel-aspect-ratio field at all yet.
+
+2015-06-12 12:40:50 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtksink.c:
+         gtk: fix a couple of typos
+
+2015-06-12 12:29:37 +1000  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/gstgtkglsink.c:
+         gtkglsink: reset the context/display in READY_TO_NULL
+         Fixes context propagation in pipelines with upstream GL elements.
+
+2015-06-11 12:41:10 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/examples/gtk/gtkglsink.c:
+         gstgtk: No need to realize the widget
+         The widget already does that.
+
+2015-06-11 12:38:53 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/examples/gtk/gtkglsink.c:
+       * tests/examples/gtk/gtksink.c:
+         gstgtk: Don't leak the widget
+         g_object_get() returns a ref, gtk_container_add() only ref_sink().
+         That mean we still need to unref afterward. This leak was hiding
+         a reference bug previously present.
+
+2015-06-11 12:10:23 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtksink.c:
+         gstgtk: Allow doing gst-inspect-1.0 on these elements
+         This patch allow going gst-inspect-1.0 on these elements removing
+         ugly crash that was previously occurring. The method consist of
+         making the widget creation as lazy as possible. This way we don't
+         endup doing gtk_init() before the application. We also ref_sink()
+         the widget, so we don't crash if the parent widget is discarded,
+         and cleanly error out with GL if the widget has no parent window,
+         because calling gtk_widget_realized() can only be done if the widget
+         has been parented to a window).
+
 2015-06-12 01:56:37 +1000  Jan Schmidt <jan@centricular.com>
 
        * gst/matroska/matroska-demux.c:
          stalls at startup if types are found too quickly.
          https://bugzilla.gnome.org/show_bug.cgi?id=750747
 
+2015-06-11 15:02:44 +0200  Thibault Saunier <tsaunier@gnome.org>
+
+       * ext/gtk/gtkgstglwidget.c:
+         gtk: Do not try to initialize display if we have not have a GLContext yet
+
+2015-06-11 14:58:27 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/examples/gtk/Makefile.am:
+         gtk: Add missing CFLAGS to example
+
+2014-12-18 17:00:30 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gtk/Makefile.am:
+       * ext/gtk/gstgtkglsink.c:
+       * ext/gtk/gstgtkglsink.h:
+       * ext/gtk/gstgtksink.c:
+       * ext/gtk/gstgtksink.h:
+       * ext/gtk/gstplugin.c:
+       * ext/gtk/gtkgstglwidget.c:
+       * ext/gtk/gtkgstglwidget.h:
+       * ext/gtk/gtkgstwidget.c:
+       * ext/gtk/gtkgstwidget.h:
+       * tests/examples/gtk/Makefile.am:
+       * tests/examples/gtk/gtkglsink.c:
+       * tests/examples/gtk/gtksink.c:
+         Implement gtk sinks
+         two sinks are provided.  gtksink which is a cairo/software based renderer
+         and gtkglsink which utilises the GL support in gtk and gstreamer.
+
 2015-06-11 01:04:51 -0300  Thiago Santos <thiagoss@osg.samsung.com>
 
        * gst/isomp4/atoms.c:
        * gst/goom/gstgoom.h:
          goom: rebase to use the audiovisualizer class
 
+2015-06-02 16:31:10 +0200  Edward Hervey <edward@centricular.com>
+
+       * tests/check/pipelines/lame.c:
+         check: Use GST_CHECK_MAIN () macro everywhere
+         Makes source code smaller, and ensures we go through common initialization
+         path (like the one that sets up XML unit test output ...)
+
 2015-06-02 16:27:24 +0200  Edward Hervey <edward@centricular.com>
 
        * tests/check/elements/aacparse.c:
          tests: wavpackparse: fix unit test
          See also https://bugzilla.gnome.org/show_bug.cgi?id=738237
 
+2015-05-10 11:34:33 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         docs: update example pipelines in element docs
+         Mostly gst-launch -> gst-launch-1.0, but also
+         use autoaudiosink/autovideosink in more places
+         and update pipelines a little or flesh out
+         descriptions.
+
+2015-05-10 11:34:33 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/lame/gstlamemp3enc.c:
+         docs: update example pipelines in element docs
+         Mostly gst-launch -> gst-launch-1.0, but also
+         use autoaudiosink/autovideosink in more places
+         and update pipelines a little or flesh out
+         descriptions.
+
 2015-05-10 11:05:00 +0100  Tim-Philipp Müller <tim@centricular.com>
 
        * ext/shout2/gstshout2.c:
          Rename property enums from ARG_ to PROP_
          Property enum items should be named PROP_ for consistency and readability.
 
+2015-04-27 10:55:13 +0100  Luis de Bethencourt <luis.bg@samsung.com>
+
+       * gst/audiofx/gststereo.c:
+         Rename property enums from ARG_ to PROP_
+         Property enum items should be named PROP_ for consistency and readability.
+
 2015-04-25 02:49:58 +0300  Ilya Konstantinov <ilya.konstantinov@gmail.com>
 
        * gst/rtpmanager/gstrtpjitterbuffer.c:
          This part alone was what made the matroska thread take a full core
          on an android phone ...
 
+2015-01-21 09:56:41 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         Constify some static arrays everywhere
+
+2015-01-21 09:56:41 +0100  Sebastian Dröge <sebastian@centricular.com>
+
+       * ext/lame/gstlamemp3enc.c:
+         Constify some static arrays everywhere
+
 2015-01-21 09:55:30 +0100  Sebastian Dröge <sebastian@centricular.com>
 
        * ext/dv/gstsmptetimecode.c:
          Report if a packet was inserted at the head instead of the tail so that
          we can know when to retry _pop or _peek.
 
+2014-04-29 16:38:55 +1000  Matthew Waters <ystreet00@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+       * tests/examples/gtk/gstgtk.c:
+         gl/examples: move to -bad
+         - fix all the compiler errors
+         - give them their own gl directory
+
 2014-04-28 14:41:10 +0200  Wim Taymans <wtaymans@redhat.com>
 
        * gst/rtp/gstrtpvrawdepay.c:
        * gst/rtsp/gstrtspsrc.c:
          rtspsrc: handle NULL rtpmap and parse error better
 
+2014-03-18 00:08:50 +0000  Руслан Ижбулатов <lrn1986@gmail.com>
+
+       * tests/examples/gtk/gstgtk.c:
+         gl: fix the use of always-defined macros
+         After 2a0f0399ae226089c2ba07b1b904741b856f37af GST_GL_* macros are always
+         defined to 0 or 1. Don't use #ifdef ... or #if defined() on them.
+         https://bugzilla.gnome.org/show_bug.cgi?id=726591
+
 2014-03-16 23:46:22 -0400  Olivier Crête <tester@tester.ca>
 
        * configure.ac:
        * sys/Makefile.am:
          v4l2: Fix typo V4L_DIR intead of V4L2_DIR
 
+2013-12-29 17:29:53 +1100  Matthew Waters <ystreet00@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+       * tests/examples/gtk/gstgtk.c:
+         [864/906] examples: update to gtk3
+
+2013-07-17 11:22:02 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * tests/examples/gtk/gstgtk.c:
+         [771/906] gl: Some less long/ulong/gulong usage
+
+2013-07-16 18:27:07 +0200  Mathieu Duponchelle <mathieu.duponchelle@epitech.eu>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [769/906] tests/examples: fix and port some of the examples.
+         Realize widgets, remove glupload element.
+
+2013-07-10 11:24:34 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+       * tests/examples/gtk/gstgtk.c:
+         [729/906] gl: Include config.h everywhere
+
+2013-06-28 11:00:46 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [720/906] examples: Stop using deprecated GLib thread API
+
+2012-11-08 22:53:56 +1100  Matthew Waters <ystreet00@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+       * tests/examples/gtk/gstgtk.c:
+         [603/906] update FSF address
+
+2012-08-14 14:41:19 +1000  Matthew Waters <ystreet00@gmail.com>
+
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [560/906] examples: update for bus api changes and glimagesink changes
+
+2012-06-07 00:51:47 +1000  Matthew Waters <ystreet00@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+       * tests/examples/gtk/gstgtk.c:
+         [511/906] tests: update for 1.0
+
+2010-09-16 15:00:29 +0300  Stefan Kost <ensonic@users.sf.net>
+
+       * tests/examples/gtk/gstgtk.c:
+         [461/906] xoverlay: require base from git and update to new API
+
+2010-07-12 18:38:59 +0200  Julien Isorce <julien.isorce@gmail.com>
+
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [457/906] gtk examples: adapt code since the native-window changes from gtk
+         Fixes bug #599885
+
+2010-01-12 18:32:39 +0300  Руслан Ижбулатов <lrn1986@gmail.com>
+
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [413/906] Fix Windows compiler warning in test/examples/gtk/fxtest/pixbufdrop.c
+
+2009-10-23 01:07:29 +0200  Julien Isorce <julien.isorce@gmail.com>
+
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [386/906] pixbufdrop: fix example on win32
+
+2009-07-14 20:36:13 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/gstgtk.c:
+         [361/906] gstgtk: add missing license and copyright information
+
+2009-07-14 20:25:28 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [360/906] examples: add missing copyright/license to my examples
+
+2009-04-12 20:03:30 -0700  David Schleef <ds@hutch-2.local>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+       * tests/examples/gtk/gstgtk.c:
+         [328/906] Convert gtk examples to use helper library
+         Helper lib implements gst-gtk glue on all platforms
+
+2009-02-10 22:39:14 -0800  David Schleef <ds@schleef.org>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [310/906] Global reindent
+         Indent parameters:
+         INDENT_PARAMETERS="--braces-on-if-line \
+         --case-brace-indentation0 \
+         --case-indentation2 \
+         --braces-after-struct-decl-line \
+         --line-length80 \
+         --no-tabs \
+         --cuddle-else \
+         --dont-line-up-parentheses \
+         --honour-newlines \
+         --continuation-indentation4 \
+         --tab-size8 \
+         --indent-level2"
+
+2009-02-05 13:13:51 -0800  David Schleef <ds@schleef.org>
+
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [308/906] Rename glpixbufoverlay to gloverlay
+
+2009-01-23 02:04:23 +0100  Julien Isorce <julien.isorce@gmail.com>
+
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [301/906] depends on libpng instead of gdk_pixbuf
+
+2009-02-10 21:57:31 -0800  David Schleef <ds@schleef.org>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [298/906] Revert "Fix indention"
+         This reverts commit 96e4ab18c2cf9876f6c031b9aba6282d0bd45a93.
+         You should have asked first.  And you would have been told "no",
+         because it causes people on development branches to do a huge
+         amount of extra work.
+
+2009-02-03 18:33:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [295/906] Fix indention
+
+2008-10-15 16:18:22 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+         [247/906] Import xray effect
+         Add xray effect. Maps luma to a negative, slightly cyan tinted, curve,
+         applies some light gaussian blur and multiplies it with its sobel edges. Not
+         sure about the name, likely to change. Probably still needs some tuning.
+
+2008-08-19 22:15:17 +0200  Julien Isorce <julien.isorce@gmail.com>
+
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [199/906] add pixbufdrop vs8 project
+
+2008-08-19 21:04:29 +0200  Julien Isorce <julien.isorce@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [198/906] add fxtest vs8 project
+
+2008-08-19 08:50:14 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/fxtest/pixbufdrop.c:
+         [195/906] fix gstgldifferencematte and add an example app to test it dragging an image over the video (works with pixbufoverlay too, see pixbufdrop --help)
+
+2008-08-16 17:36:10 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+         [180/906] minor cleanup in fxtest
+
+2008-08-16 10:15:31 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+         [178/906] improve fxtest command line option handling, default to videotestsrc if no source bin description is given
+
+2008-08-16 09:13:39 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+         [175/906] add sin effect (desaturate everything but red shades). still needs some tuning.
+
+2008-08-14 21:29:02 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+         [173/906] add lumaxpro (desaturate + cross process) effect. nothing too impressive but I like it.
+
+2008-08-14 20:54:54 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+         [172/906] add support for command line parsing to fxtest (try fxtest videotestsrc ! desired caps ! identity). report a new issue on BUGS.
+
+2008-08-14 20:02:04 +0200  Filippo Argiolas <filippo.argiolas@gmail.com>
+
+       * tests/examples/gtk/fxtest/fxtest.c:
+         [171/906] import fxtest (little gtk app to easily test effects) from cvs branch, fixed rgbtocurve.
+
 2014-03-15 18:05:32 +0100  Nicolas Dufresne <nicolas.dufresne@collabora.com>
 
        * configure.ac:
          osxvideosink: fix segfault when dealing with padded frames
          Fixes crashes with vtdec ! osxvideosink where VideoToolbox outputs padded UYVY
 
+2013-12-06 17:58:13 -0500  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/audiofx/gststereo.c:
+         stereo: Port to GStreamer 1.0 API
+
 2013-12-05 12:15:29 +0100  Sebastian Dröge <sebastian@centricular.com>
 
        * gst/law/mulaw-decode.c:
          wavpackdec-test: Send initial events
          https://bugzilla.gnome.org/show_bug.cgi?id=700033
 
+2013-05-09 19:40:49 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: Tell GstAudioEncoder about the number of incoming samples
+         lame does internal resampling, but the base class only cares about
+         the number of raw samples, so tell finish frames about that, not
+         the number of samples in the outgoing frame.:
+
 2013-05-09 16:26:19 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * gst/videomixer/videomixer2.c:
        * sys/osxvideo/osxvideosink.m:
          osxvideosink: fix segfault accessing osxwindow when not set yet
 
+2012-10-24 12:15:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/twolame/Makefile.am:
+         gst: Add better support for static plugins
+
+2012-10-24 12:15:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/Makefile.am:
+         gst: Add better support for static plugins
+
 2012-10-24 12:14:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * configure.ac:
 
 2012-11-03 20:38:00 +0000  Tim-Philipp Müller <tim@centricular.net>
 
+       * tests/check/elements/mpg123audiodec.c:
+         Fix FSF address
+         https://bugzilla.gnome.org/show_bug.cgi?id=687520
+
+2012-11-03 20:38:00 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+       * gst/audiofx/gststereo.c:
+       * gst/audiofx/gststereo.h:
+         Fix FSF address
+         https://bugzilla.gnome.org/show_bug.cgi?id=687520
+
+2012-11-03 20:38:00 +0000  Tim-Philipp Müller <tim@centricular.net>
+
        * gst/dtmf/gstdtmfdetect.c:
        * gst/dtmf/gstdtmfdetect.h:
        * gst/dtmf/gstdtmfsrc.c:
          Fix FSF address
          https://bugzilla.gnome.org/show_bug.cgi?id=687520
 
+2012-11-03 20:40:37 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+       * ext/twolame/gsttwolamemp2enc.h:
+         Fix FSF address
+         https://bugzilla.gnome.org/show_bug.cgi?id=687520
+
+2012-11-03 20:40:37 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+       * ext/lame/gstlamemp3enc.c:
+       * ext/lame/gstlamemp3enc.h:
+       * ext/lame/plugin.c:
+       * tests/check/pipelines/lame.c:
+         Fix FSF address
+         https://bugzilla.gnome.org/show_bug.cgi?id=687520
+
 2012-11-02 18:47:26 +0000  Wim Taymans <wim.taymans@collabora.co.uk>
 
        * gst/rtp/gstrtpvrawdepay.c:
          Use the GValueArray in the message.
          Fixes https://bugzilla.gnome.org/show_bug.cgi?id=687154
 
+2012-10-30 09:27:24 +0100  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: removed unnecessary finalize function
+         https://bugzilla.gnome.org/show_bug.cgi?id=687176
+
+2012-10-30 10:20:09 +1100  Jan Schmidt <thaytan@noraisin.net>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: Fix leaks from not chaining up in the finalize function
+
 2012-10-27 23:22:36 +0100  Tim-Philipp Müller <tim@centricular.net>
 
        * gst/auparse/Makefile.am:
        * win32/common/config.h:
          Release 1.0.2
 
+2012-10-24 13:41:00 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * tests/check/elements/mpg123audiodec.c:
+         tests: fix up mpg123 test a little
+         - dist input files
+         - fix sample leak
+         - simplify check for elements
+         - only run mpg123 test if mpg123 is available and selected
+         - fix build in uninstalled setup
+         https://bugzilla.gnome.org/show_bug.cgi?id=686595
+
+2012-10-24 12:30:10 +0200  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * tests/check/elements/mpg123audiodec.c:
+         tets: add unit test for mpg123audiodec
+         https://bugzilla.gnome.org/show_bug.cgi?id=686595
+
+2012-10-24 00:36:42 +0200  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: added gtkdoc section
+         https://bugzilla.gnome.org/show_bug.cgi?id=686595
+
+2012-10-24 00:22:05 +0200  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: fixed bug with last frame, disabled internal resampler & chatter
+         * The last MP3 frame wasn't being pushed when base class was draining
+         * Made sure mpg123 cannot ever use its (crude) internal resampler
+         * Disabled mpg123 stderr output
+         https://bugzilla.gnome.org/show_bug.cgi?id=686595
+
 2012-10-24 13:50:00 +0200  Arnaud Vrac <avrac@freebox.fr>
 
        * gst/isomp4/qtdemux.c:
          qtdemux: use correct type for channel-mask bitmask
          Fixes crash on 32-bit systems.
 
+2012-10-24 00:21:45 +0200  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: cleaned up comments, formatting, and logging lines
+         also replaced mpg123decoder->handle != NULL checks with asserts
+         https://bugzilla.gnome.org/show_bug.cgi?id=686595
+
 2012-10-24 11:17:55 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * ext/pulse/pulsesink.c:
 
 2012-10-17 17:34:26 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
+       * gst/audiofx/gststereo.c:
+         Use gst_element_class_set_static_metadata()
+         where possible. Avoids some string copies. Also re-indent
+         some stuff. Also some indent fixes here and there.
+
+2012-10-17 17:34:26 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
        * gst/dtmf/gstdtmfdetect.c:
        * gst/dtmf/gstdtmfsrc.c:
        * gst/dtmf/gstrtpdtmfdepay.c:
        * win32/common/config.h:
          Release 0.11.99
 
+2012-09-17 16:57:30 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/twolame/Makefile.am:
+         Remove -DGST_USE_UNSTABLE_API
+
+2012-09-17 16:57:30 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/Makefile.am:
+         Remove -DGST_USE_UNSTABLE_API
+
 2012-09-17 16:53:04 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
        * docs/plugins/gst-plugins-good-plugins.hierarchy:
 
 2012-09-14 17:08:49 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
 
+       * gst/audiofx/gststereo.c:
+         replace gst_element_class_set_details_simple with gst_element_class_set_metadata
+
+2012-09-14 17:08:49 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
        * gst/dtmf/gstdtmfsrc.c:
        * gst/dtmf/gstrtpdtmfdepay.c:
          replace gst_element_class_set_details_simple with gst_element_class_set_metadata
          with multiple sequence sub-entries
          https://bugzilla.gnome.org/show_bug.cgi?id=540891
 
+2012-08-09 11:48:39 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: Give MARGINAL rank to the mpg123 decoder element
+
 2012-08-09 10:31:39 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * configure.ac:
        * gst/videomixer/blendorc-dist.c:
          gst: update disted orc files
 
+2012-08-08 12:58:50 +0100  Tim-Philipp Müller <tim@centricular.net>
+
+       * ext/mpg123/Makefile.am:
+         mpg123: dist header file
+
 2012-08-08 11:31:59 +0100  Tim-Philipp Müller <tim@centricular.net>
 
        * ext/wavpack/gstwavpackdec.c:
          through the SSRC demux from the callback, causing the pads to be iterated
          and the lock taken.
 
+2012-08-04 16:13:36 +0100  Tim-Philipp Müller <tim@centricular.net>
+
+       * ext/lame/gstlamemp3enc.c:
+         gst_tag_list_free -> gst_tag_list_unref
+
 2012-08-04 16:10:16 +0100  Tim-Philipp Müller <tim@centricular.net>
 
        * ext/flac/gstflacenc.c:
        * tests/check/pipelines/tagschecking.c:
          gst_tag_list_free -> gst_tag_list_unref
 
+2012-08-03 13:43:31 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: map input buffer in READ mode, not WRITE mode
+         Makes things actually work.
+
+2012-08-03 11:50:10 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+         mpg123: query supported output formats at run-time
+         Fixes stuff. We use a string here since we can't be bothered
+         with GValue.
+
 2012-08-03 14:10:32 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
 
        * gst/rtsp/gstrtspsrc.c:
          Conflicts:
          ext/flac/gstflacdec.c
 
+2012-08-03 11:48:02 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/mpg123/Makefile.am:
+         mpg123: hook up to build system
+
+2012-08-03 11:13:48 +0100  Carlos Rafael Giani <dv@pseudoterminal.org>
+
+       * ext/mpg123/gstmpg123audiodec.c:
+       * ext/mpg123/gstmpg123audiodec.h:
+         mpg123: add new libmpg123-based mp3 decoder plugin
+         Needs a bit of cleaning up.
+         https://bugzilla.gnome.org/show_bug.cgi?id=681003
+
 2012-08-01 12:16:41 +0200  René Stadler <rene.stadler@collabora.co.uk>
 
        * gst/isomp4/qtdemux.c:
        * sys/ximage/gstximagesrc.c:
          Use new gst_element_class_set_static_metadata()
 
+2012-04-10 00:47:44 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         Use new gst_element_class_set_static_metadata()
+
+2012-04-10 00:47:44 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         Use new gst_element_class_set_static_metadata()
+
 2012-04-09 12:55:34 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
        * tests/check/pipelines/simple-launch-lines.c:
 
 2012-04-05 18:02:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
+       * gst/audiofx/gststereo.c:
+         gst: Update for GST_PLUGIN_DEFINE() API changes
+
+2012-04-05 18:02:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
        * gst/dtmf/gstdtmf.c:
          gst: Update for GST_PLUGIN_DEFINE() API changes
 
+2012-04-05 17:40:12 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         gst: Update for GST_PLUGIN_DEFINE() API changes
+
+2012-04-05 17:40:12 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/plugin.c:
+         gst: Update for GST_PLUGIN_DEFINE() API changes
+
 2012-04-05 17:36:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * ext/aalib/gstaasink.c:
        * gst/dtmf/Makefile.am:
          gst: Update versioning
 
+2012-04-04 14:38:53 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/twolame/Makefile.am:
+         gst: Update versioning
+
+2012-04-04 14:38:53 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/Makefile.am:
+         gst: Update versioning
+
 2012-04-04 14:33:23 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * configure.ac:
        * sys/v4l2/gstv4l2bufferpool.c:
          update for bufferpool api change
 
+2012-03-15 13:38:16 +0100  Wim Taymans <wim.taymans@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         update for memory api changes
+
 2012-03-15 13:37:36 +0100  Wim Taymans <wim.taymans@collabora.co.uk>
 
        * gst/dtmf/gstdtmfsrc.c:
          v4l2: use public api
          instead of poking into the private structures of the base class
 
+2012-02-27 06:35:01 +0100  Alessandro Decina <alessandro.d@gmail.com>
+
+       * ext/lame/Makefile.am:
+         amrwbdec, lame, mad: link to libgstbase
+
 2012-02-27 01:09:11 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
        * gst/flv/gstflvmux.c:
          pulse: disable some unused property probe code
          which was using GValueArray
 
+2012-02-01 16:20:46 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         twolame: Use new audio encoder/decoder base class API for srcpad caps
+
+2012-02-01 16:20:26 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lame: Use new audio encoder/decoder base class API for srcpad caps
+
 2012-02-01 16:11:14 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * ext/speex/gstspeexdec.c:
        * gst/rtp/gstrtptheorapay.c:
          update for new memory API
 
+2012-01-25 07:24:59 +0100  Wim Taymans <wim.taymans@collabora.co.uk>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         port to new memory API
+
+2012-01-25 07:24:59 +0100  Wim Taymans <wim.taymans@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         port to new memory API
+
 2012-01-25 11:21:50 +0100  Olivier Crête <olivier.crete@collabora.com>
 
        * gst/dtmf/gstdtmfdetect.c:
          matroskamux: fix codec_priv leaks
          https://bugzilla.gnome.org/show_bug.cgi?id=667419
 
+2012-01-10 15:17:11 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+         Merge branch 'master' into 0.11
+         Conflicts:
+         ext/a52dec/gsta52dec.c
+         ext/a52dec/gsta52dec.h
+         ext/lame/gstlame.c
+         ext/lame/gstlame.h
+         ext/lame/gstlamemp3enc.c
+         ext/mad/gstmad.c
+         ext/mad/gstmad.h
+         gst/mpegaudioparse/gstmpegaudioparse.c
+         gst/mpegstream/gstdvddemux.c
+         gst/realmedia/rdtdepay.c
+         po/es.po
+         po/lv.po
+         po/sr.po
+
 2012-01-10 15:06:39 +0100  Stefan Sauer <ensonic@users.sf.net>
 
        * ext/jack/gstjackaudioclient.c:
        * gst/wavenc/gstwavenc.c:
          fix pad templates
 
+2012-01-04 15:44:37 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         twolamemp2enc: Update for the new raw audio caps
+
+2012-01-04 15:45:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: Update for the new raw audio caps
+
 2012-01-04 15:05:41 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * ext/speex/gstspeexdec.c:
          Automatic update of common submodule
          From 762b692 to 0807187
 
+2012-01-04 17:05:32 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/Makefile.am:
+         lame: fix LIBADD order in Makefile.am
+
 2012-01-04 17:59:55 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
        * tests/check/elements/qtmux.c:
          waveformsink: fix compiler warnings with MingW
          https://bugzilla.gnome.org/show_bug.cgi?id=666485
 
+2011-12-27 22:54:34 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         lame: fix printf format in debug statements
+         https://bugzilla.gnome.org/show_bug.cgi?id=666926
+
 2011-12-27 12:06:16 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
        * tests/check/elements/.gitignore:
          jpegdec: fix peer_caps leak
          https://bugzilla.gnome.org/show_bug.cgi?id=666688
 
+2011-12-26 18:24:32 +0100  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         lame: ensure parsed output
+         ... by doing some basic parsing of encoded lame data.
+
+2011-12-26 16:34:01 +0100  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/lame/gstlame.h:
+         lame: cleanup unused instance struct fields
+
+2011-12-26 18:23:52 +0100  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/lame/Makefile.am:
+       * ext/lame/gstlamemp3enc.c:
+       * ext/lame/gstlamemp3enc.h:
+         lamemp3enc: ensure parsed output
+         ... by doing some basic parsing of encoded lame data.
+         Fixes #652150.
+
+2011-12-26 18:15:41 +0100  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: do not leak merged tags
+
 2011-12-25 23:52:46 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
        * configure.ac:
 
          Merge commit '7521b597f4dc49d8d168f368f0e7ebaf98a72156' into 0.11
 
+2011-11-28 21:31:25 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+         Merge remote-tracking branch 'origin/master' into 0.11
+
+2011-11-28 21:31:25 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+         Merge remote-tracking branch 'origin/master' into 0.11
+
 2011-11-28 21:27:53 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
          Merge remote-tracking branch 'origin/master' into 0.11
          various: fix pad template leaks
          https://bugzilla.gnome.org/show_bug.cgi?id=662664
 
+2011-11-28 13:10:01 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         various: fix pad template ref leaks
+         https://bugzilla.gnome.org/show_bug.cgi?id=662664
+
+2011-11-28 13:10:01 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+       * ext/twolame/gsttwolame.c:
+         various: fix pad template ref leaks
+         https://bugzilla.gnome.org/show_bug.cgi?id=662664
+
 2011-11-28 13:08:27 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
 
        * gst/dtmf/gstdtmfdetect.c:
          This was done in 0.10 to avoid conflict with the rtp elements in
          farsight, but the gst-prefixing is no longer needed in 0.11
 
+2011-11-23 23:29:03 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/twolame/gsttwolamemp2enc.c:
+         ext: fix more printf format warnings in debug messages
+
+2011-11-23 23:29:03 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         ext: fix more printf format warnings in debug messages
+
 2011-11-23 10:23:28 +0100  Wim Taymans <wim.taymans@collabora.co.uk>
 
          Merge branch 'master' into 0.11
        * ext/pulse/pulseutil.h:
          update for ringbuffer change
 
+2011-11-11 01:27:47 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: cosmetic error message change
+         LET'S TRY TO KEEP CAPITALS TO A MINIMUM.
+
+2011-11-11 00:58:24 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/twolame/Makefile.am:
+       * ext/twolame/gsttwolamemp2enc.c:
+       * ext/twolame/gsttwolamemp2enc.h:
+         twolame: rename to twolamemp2enc
+
+2011-11-11 00:51:34 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/twolame/gsttwolame.c:
+         twolame: port to 0.11
+
 2011-11-10 23:15:30 +0200  Stefan Sauer <ensonic@users.sf.net>
 
        * tests/examples/shapewipe/shapewipe-example.c:
        * tests/examples/v4l2/camctrl.c:
          controller: port to new controller location and api
 
+2011-11-04 18:52:35 +0100  Stefan Sauer <ensonic@users.sf.net>
+
+       * gst/audiofx/gststereo.c:
+         controller: port to new controller location and api
+
 2011-11-04 17:39:15 +0100  Wim Taymans <wim.taymans@collabora.co.uk>
 
        * gst/rtsp/gstrtspsrc.c:
          branch, with all the pull-mode and parser handling code in
          there.
 
+2011-10-30 12:29:14 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/Makefile.am:
+       * ext/lame/README:
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+       * ext/lame/plugin.c:
+       * ext/lame/test-lame.c:
+       * tests/check/pipelines/lame.c:
+         lame: remove lame element, it's been superseded by lamemp3enc
+
+2011-10-30 11:51:58 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         ext, gst: update for taglist API changes
+
 2011-10-30 11:44:53 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
        * ext/annodex/gstcmmldec.c:
          goom2k1: Fix compiler warnings on 64 bit mingw-w64
          Fixes bug #660294.
 
+2011-09-27 18:19:50 +0200  Wim Taymans <wim.taymans@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         lame: fix raw audio caps too
+
+2011-09-27 18:15:00 +0200  Wim Taymans <wim.taymans@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         lame: port to 0.11
+
+2011-09-26 16:29:12 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/twolame/gsttwolame.c:
+         twolame: Simple fix for GstAudioEncoder API change
+
+2011-09-26 16:28:08 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/twolame/gsttwolame.c:
+         twolame: Fix variable 'gstelement_class' set but not used compiler warning
+
+2011-09-26 16:08:20 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         lame: Don't get the parent class again, GST_BOILERPLATE does this already
+
+2011-09-26 16:07:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         lame: Fix variable 'gstelement_class' set but not used compiler warning
+
+2011-09-26 12:07:15 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/twolame/gsttwolame.c:
+         twolame: improve output framing and timestamping
+         ... which simply comes down to requesting one frame of input data at a time,
+         since the encoder nicely turns this into 1 encoded frame.
+
+2011-09-26 11:56:23 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/twolame/Makefile.am:
+       * ext/twolame/gsttwolame.c:
+       * ext/twolame/gsttwolame.h:
+         twolame: port to audioencoder
+
+2011-09-23 15:32:01 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+         lame: use some more boilerplate
+
+2011-09-23 15:26:48 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         lame: port to audioencoder
+
+2011-09-23 14:33:55 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: use some more boilerplate
+
+2011-09-26 14:44:23 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: really report bitrate rather kbitrate
+
+2011-09-26 14:44:01 +0200  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+       * ext/lame/Makefile.am:
+       * ext/lame/gstlamemp3enc.c:
+       * ext/lame/gstlamemp3enc.h:
+         lamemp3enc: port to audioencoder
+
 2011-09-25 15:13:39 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
        * ext/soup/Makefile.am:
          gst_rtp_buffer_get_payload_buffer and
          gst_rtp_buffer_get_payload_subbuffer is NULL before using it.
 
+2011-05-18 14:49:17 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/Makefile.am:
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: Post CODEC and BITRATE tags
+         Also filter any CODEC/AUDIO_CODEC tags from incoming
+         tag events.
+         Fixes bug #391543.
+
 2011-05-18 16:10:07 +0300  Stefan Kost <ensonic@users.sf.net>
 
        * common:
          flacparse: Initialize variables.
          Fixes build on $#@*( macosx
 
-2010-01-11 22:41:57 +0300  Ðóñëàí Èæáóëàòîâ <lrn1986@gmail.com>
+2010-01-11 22:41:57 +0300  ������ ��������� <lrn1986@gmail.com>
 
        * gst/audioparsers/gstaacparse.c:
        * gst/audioparsers/gstamrparse.c:
          _INTERLACED field formats to interlaced=true caps (so the latter should
          not be mapped to field value that is not known to be supported).
 
+2011-02-03 18:25:00 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * tests/check/pipelines/lame.c:
+         tests: add unit test for lamemp3enc negotiation issue
+         https://bugzilla.gnome.org/show_bug.cgi?id=641151
+
+2011-02-03 18:18:35 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: implement sinkpad get_caps() function to proxy rate and channels restrictions from downstream
+         The element downstream of mp3enc might only accept certain sample rates or channels,
+         make sure we relay any restrictions that do exist to upstream when it does a
+         get_caps() on the sink pad. That way upstream elements like audioresample or
+         audioconvert can pick a sample rate / channel configuration that will be accepted,
+         instead of just negotiating to the highest, which might then be rejected.
+         https://bugzilla.gnome.org/show_bug.cgi?id=641151
+
 2011-02-02 18:27:52 +0100  Wim Taymans <wim.taymans@collabora.co.uk>
 
        * gst/rtpmanager/rtpsource.c:
          if that raises problems later on with respect to offset tracking.
          Fixes #620283.
 
+2010-12-07 15:39:32 +0100  Wim Taymans <wim.taymans@collabora.co.uk>
+
+       * tests/check/pipelines/lame.c:
+         check: don't use deprecated method
+
 2010-12-07 13:11:48 +0100  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
 
        * gst/flv/Makefile.am:
          rtph264depay: fix segfault on empty payload
          https://bugzilla.gnome.org/show_bug.cgi?id=635843
 
+2010-11-25 19:24:56 +0100  Edward Hervey <bilboed@bilboed.com>
+
+       * gst/audiofx/gststereo.c:
+         stereo: Remove dead assignments
+
 2010-11-25 19:06:27 +0100  Edward Hervey <bilboed@bilboed.com>
 
        * gst/dtmf/gstrtpdtmfdepay.c:
 
 2010-10-19 13:43:14 +0300  Stefan Kost <ensonic@users.sf.net>
 
+       * gst/audiofx/gststereo.c:
+         various (gst): add missing G_PARAM_STATIC_STRINGS flags
+         Canonicalize property names as needed.
+
+2010-10-19 13:43:14 +0300  Stefan Kost <ensonic@users.sf.net>
+
        * gst/dtmf/gstdtmfsrc.c:
        * gst/dtmf/gstrtpdtmfdepay.c:
        * gst/dtmf/gstrtpdtmfsrc.c:
        * gst/dtmf/gstdtmfsrc.c:
          dtmfsrc: remove DEBUG_FUNCPTR from gobject vmethods
 
+2010-10-19 12:20:40 +0300  Stefan Kost <ensonic@users.sf.net>
+
+       * ext/lame/gstlame.c:
+         various: canonicalize property names
+
+2010-10-19 10:06:33 +0300  Stefan Kost <ensonic@users.sf.net>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         various (ext): add a missing G_PARAM_STATIC_STRINGS flags
+
 2010-10-16 15:43:53 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
        * configure.ac:
          and pixel-aspect-ratio that downstream can support.
          https://bugzilla.gnome.org/show_bug.cgi?id=620148
 
+2010-05-20 11:28:47 -0400  Tristan Matthews <tristan@sat.qc.ca>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: implement latency query
+         The encoder's latency is deduced from the framesize. Fixes #618896.
+
 2010-05-31 07:49:21 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * gst/matroska/matroska-demux.c:
          Automatic update of common submodule
          From 55cd514 to c1d07dd
 
+2010-03-24 11:27:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlame.h:
+       * ext/lame/gstlamemp3enc.h:
+       * ext/lame/plugin.c:
+         build: Add all kinds of compiler warning flags and fix the resulting warnings
+
 2010-03-23 19:46:43 +0100  Edward Hervey <bilboed@bilboed.com>
 
        * gst/icydemux/gsticydemux.c:
 
 2010-03-18 17:30:26 +0100  Benjamin Otte <otte@redhat.com>
 
+       * gst/audiofx/gststereo.c:
+         gst_element_class_set_details => gst_element_class_set_details_simple
+
+2010-03-18 17:30:26 +0100  Benjamin Otte <otte@redhat.com>
+
        * gst/dtmf/gstdtmfdetect.c:
        * gst/dtmf/gstdtmfsrc.c:
        * gst/dtmf/gstrtpdtmfdepay.c:
          alpha: Refactor chroma keying into a single function
          This reduces code duplication once we add support for more color formats.
 
+2010-03-18 15:53:14 +0100  Benjamin Otte <otte@redhat.com>
+
+       * ext/lame/gstlame.c:
+         gst_element_class_set_details => gst_element_class_set_details_simple
+
 2010-03-18 14:31:35 +0100  Benjamin Otte <otte@redhat.com>
 
        * ext/aalib/gstaasink.c:
          Use GST_MSECOND to convert delay in msecs to nanosecs
          Fixes #603547
 
+2009-12-02 11:21:22 -0300  Thiago Santos <thiago.sousa.santos@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         lame: Avoid crash when seeking before negotiating
+         lame's 'lgv' variable is only initialized when the caps
+         is negotiated, whenever a seek happens before that, it would
+         attempt to call a function on an empty pointer, causing the crash.
+         Fixes #603515
+
 2009-12-01 19:24:02 +0100  Wim Taymans <wim.taymans@collabora.co.uk>
 
        * ext/jpeg/gstjpegdec.c:
          mdat atoms.  Also keep adapter/offset better in sync with upstream
          and fix some debug statements.  Fixes #587426.
 
-2009-07-06 10:40:31 +0200  Philip Jägenstedt <philipj@opera.com>
+2009-07-06 10:40:31 +0200  Philip Jgenstedt <philipj@opera.com>
 
        * gst/avi/gstavidemux.c:
          avidemux: Replace deprecated GST_DISABLE_DEBUG with correct macro. Fixes #587826
          Fix compiler warnings
          Fixes bug #582715.
 
+2009-05-14 12:32:16 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: Improve debugging a bit
+
 2009-05-13 22:46:44 +0200  Josep Torra <n770galaxy@gmail.com>
 
        * configure.ac:
          avidemux: Fix pointer arithmetic
          This fixes a seeking regression, bug #134522.
 
+2009-05-12 19:22:07 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: add Since tag to gtk-doc chunk
+
 2009-05-12 21:36:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * docs/plugins/Makefile.am:
        * configure.ac:
          Always define the conditional HAVE_GTK to fix configure in some cases
 
+2009-05-10 16:53:07 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: Don't write a Xing header
+
 2009-05-10 11:17:23 +0200  Marc-Andre Lureau <marcandre.lureau@gmail.com>
 
        * autogen.sh:
          the bufferalloc (required for reverse negotiation apparently) instead
          of the pending buffer.
 
+2009-05-08 14:24:47 +0100  Christian Schaller <christian.schaller@collabora.co.uk>
+
+       * ext/twolame/gsttwolame.c:
+         Switch twolame to primary rank
+
 2009-05-08 12:00:57 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * ext/soup/gstsouphttpsrc.c:
        * gst/matroska/matroska-mux.c:
          Add RANKS for various encoders and muxers
 
+2009-05-07 17:59:52 +0100  Christian Schaller <christian.schaller@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         Add ranks to mp3 encoders
+
+2009-05-07 17:59:52 +0100  Christian Schaller <christian.schaller@collabora.co.uk>
+
+       * ext/twolame/gsttwolame.c:
+         Add ranks to mp3 encoders
+
 2009-05-07 17:09:44 +0200  Wim Taymans <wim.taymans@collabora.co.uk>
 
        * gst/matroska/matroska-demux.c:
          rganalysis: Add ability to post level messages
          Fixes bug #581568.
 
+2009-05-07 10:10:02 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: Fixup the bitrate only for CBR
+         Additionally clarify some property descriptions.
+
 2009-05-06 23:56:44 +0200  Wim Taymans <wim.taymans@collabora.co.uk>
 
        * gst/rtp/gstrtpjpegpay.c:
          rtpjpegpay: refuse some unsupported jpeg formats
 
+2009-05-06 21:47:17 +0200  Alessandro Decina <alessandro.d@gmail.com>
+
+       * ext/lame/gstlamemp3enc.c:
+         lame: fix format string in debug statement
+
 2009-05-06 18:06:49 +0200  Wim Taymans <wim.taymans@collabora.co.uk>
 
        * gst/rtp/gstrtptheorapay.c:
          qtdemux: fix byte order swapping in 3GPP classification entity tag
          Fixes #580746.
 
+2009-05-05 16:38:19 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lame: fix compilation with LAME versions < 3.98
+         lame_set_VBR_quality(), which takes a floating point value for the
+         quality, has been added only in v3.98. Use lame_set_VBR_q(), which
+         takes quality as an integer, for older LAME versions.
+         Fixes #581341.
+
 2009-05-05 17:07:13 +0200  Arnout Vandecappelle <arnout@mind.be>
 
        * gst/multipart/multipartdemux.c:
        * ext/speex/gstspeexdec.c:
          speexdec: make speex_dec_convert work with same-format values when no data has been decoded.
 
+2009-05-04 12:51:29 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lamemp3enc: Add a note to the encoding-engine-quality property
+         that says, that this does not affect the bitrate at all.
+
+2009-05-04 12:48:43 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         lame: Implement preset interface
+
+2009-05-04 12:47:03 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/twolame/gsttwolame.c:
+         twolame: Implement preset interface
+
 2009-05-04 12:43:42 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
        * ext/flac/gstflacenc.c:
          amount of pixels to fill the complete image.
          Fixes #569611
 
+2009-04-30 10:21:40 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+       * ext/lame/gstlamemp3enc.h:
+         lamemp3enc: Remove fast-vbr property and rename vbr-quality to quality
+
+2009-04-30 10:16:45 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+         lame/lamemp3enc: Fix memory leak on FLUSH_STOP
+
+2009-04-30 10:14:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlame.c:
+         lame: Deprecate the lame element
+
+2009-04-30 10:10:08 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/gstlamemp3enc.c:
+         lame: Update example pipelines with the new properties
+
+2009-04-29 19:01:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * ext/lame/Makefile.am:
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlamemp3enc.c:
+       * ext/lame/gstlamemp3enc.h:
+       * ext/lame/plugin.c:
+         lame: Add lamemp3enc element with much simplified interface
+         This deprecates the lame element and fixes bug #494528.
+
 2009-05-01 19:35:11 +0200  Wim Taymans <wim.taymans@collabora.co.uk>
 
        * gst/qtdemux/qtdemux.c:
        * gst/qtdemux/qtdemux.c:
          Fix push mode buffering sanity check to actually fit the description.
 
+2009-04-19 14:03:38 +0200  Edward Hervey <bilboed@bilboed.com>
+
+       * ext/twolame/gsttwolame.c:
+         twolame: Remove unneeded variable, value assigned was never read.
+
+2009-04-19 14:02:03 +0200  Edward Hervey <bilboed@bilboed.com>
+
+       * ext/lame/gstlame.c:
+         lame: Remove unneeded variable, it's assigned a value never read.
+
 2009-04-18 19:11:06 +0200  Edward Hervey <bilboed@bilboed.com>
 
        * gst/rtp/gstrtph263pay.c:
        * .gitignore:
          .gitignore: Ignore m4 directory
 
+2008-11-04 12:42:30 +0000  Stefan Kost <ensonic@users.sourceforge.net>
+
+         [MOVED FROM BAD] Don't install static libs for plugins. Fixes #550851 for -bad.
+         Original commit message from CVS:
+         * ext/alsaspdif/Makefile.am:
+         * ext/amrwb/Makefile.am:
+         * ext/apexsink/Makefile.am:
+         * ext/arts/Makefile.am:
+         * ext/artsd/Makefile.am:
+         * ext/audiofile/Makefile.am:
+         * ext/audioresample/Makefile.am:
+         * ext/bz2/Makefile.am:
+         * ext/cdaudio/Makefile.am:
+         * ext/celt/Makefile.am:
+         * ext/dc1394/Makefile.am:
+         * ext/dirac/Makefile.am:
+         * ext/directfb/Makefile.am:
+         * ext/divx/Makefile.am:
+         * ext/dts/Makefile.am:
+         * ext/faac/Makefile.am:
+         * ext/faad/Makefile.am:
+         * ext/gsm/Makefile.am:
+         * ext/hermes/Makefile.am:
+         * ext/ivorbis/Makefile.am:
+         * ext/jack/Makefile.am:
+         * ext/jp2k/Makefile.am:
+         * ext/ladspa/Makefile.am:
+         * ext/lcs/Makefile.am:
+         * ext/libfame/Makefile.am:
+         * ext/libmms/Makefile.am:
+         * ext/metadata/Makefile.am:
+         * ext/mpeg2enc/Makefile.am:
+         * ext/mplex/Makefile.am:
+         * ext/musepack/Makefile.am:
+         * ext/musicbrainz/Makefile.am:
+         * ext/mythtv/Makefile.am:
+         * ext/nas/Makefile.am:
+         * ext/neon/Makefile.am:
+         * ext/ofa/Makefile.am:
+         * ext/polyp/Makefile.am:
+         * ext/resindvd/Makefile.am:
+         * ext/sdl/Makefile.am:
+         * ext/shout/Makefile.am:
+         * ext/snapshot/Makefile.am:
+         * ext/sndfile/Makefile.am:
+         * ext/soundtouch/Makefile.am:
+         * ext/spc/Makefile.am:
+         * ext/swfdec/Makefile.am:
+         * ext/tarkin/Makefile.am:
+         * ext/theora/Makefile.am:
+         * ext/timidity/Makefile.am:
+         * ext/twolame/Makefile.am:
+         * ext/x264/Makefile.am:
+         * ext/xine/Makefile.am:
+         * ext/xvid/Makefile.am:
+         * gst-libs/gst/app/Makefile.am:
+         * gst-libs/gst/dshow/Makefile.am:
+         * gst/aiffparse/Makefile.am:
+         * gst/app/Makefile.am:
+         * gst/audiobuffer/Makefile.am:
+         * gst/bayer/Makefile.am:
+         * gst/cdxaparse/Makefile.am:
+         * gst/chart/Makefile.am:
+         * gst/colorspace/Makefile.am:
+         * gst/dccp/Makefile.am:
+         * gst/deinterlace/Makefile.am:
+         * gst/deinterlace2/Makefile.am:
+         * gst/dvdspu/Makefile.am:
+         * gst/festival/Makefile.am:
+         * gst/filter/Makefile.am:
+         * gst/flacparse/Makefile.am:
+         * gst/flv/Makefile.am:
+         * gst/games/Makefile.am:
+         * gst/h264parse/Makefile.am:
+         * gst/librfb/Makefile.am:
+         * gst/mixmatrix/Makefile.am:
+         * gst/modplug/Makefile.am:
+         * gst/mpeg1sys/Makefile.am:
+         * gst/mpeg4videoparse/Makefile.am:
+         * gst/mpegdemux/Makefile.am:
+         * gst/mpegtsmux/Makefile.am:
+         * gst/mpegvideoparse/Makefile.am:
+         * gst/mve/Makefile.am:
+         * gst/nsf/Makefile.am:
+         * gst/nuvdemux/Makefile.am:
+         * gst/overlay/Makefile.am:
+         * gst/passthrough/Makefile.am:
+         * gst/pcapparse/Makefile.am:
+         * gst/playondemand/Makefile.am:
+         * gst/rawparse/Makefile.am:
+         * gst/real/Makefile.am:
+         * gst/rtjpeg/Makefile.am:
+         * gst/rtpmanager/Makefile.am:
+         * gst/scaletempo/Makefile.am:
+         * gst/sdp/Makefile.am:
+         * gst/selector/Makefile.am:
+         * gst/smooth/Makefile.am:
+         * gst/smoothwave/Makefile.am:
+         * gst/speed/Makefile.am:
+         * gst/speexresample/Makefile.am:
+         * gst/stereo/Makefile.am:
+         * gst/subenc/Makefile.am:
+         * gst/tta/Makefile.am:
+         * gst/vbidec/Makefile.am:
+         * gst/videodrop/Makefile.am:
+         * gst/videosignal/Makefile.am:
+         * gst/virtualdub/Makefile.am:
+         * gst/vmnc/Makefile.am:
+         * gst/y4m/Makefile.am:
+         * sys/acmenc/Makefile.am:
+         * sys/cdrom/Makefile.am:
+         * sys/dshowdecwrapper/Makefile.am:
+         * sys/dshowsrcwrapper/Makefile.am:
+         * sys/dvb/Makefile.am:
+         * sys/dxr3/Makefile.am:
+         * sys/fbdev/Makefile.am:
+         * sys/oss4/Makefile.am:
+         * sys/qcam/Makefile.am:
+         * sys/qtwrapper/Makefile.am:
+         * sys/vcd/Makefile.am:
+         * sys/wininet/Makefile.am:
+         * win32/common/config.h:
+         Don't install static libs for plugins. Fixes #550851 for -bad.
+
+2008-09-02 09:56:44 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         [MOVED FROM BAD] Enable/fix up translations for these plugins.
+         Original commit message from CVS:
+         * ext/resindvd/plugin.c: (plugin_init):
+         * ext/resindvd/resindvdsrc.c:
+         * ext/twolame/gsttwolame.c: (plugin_init):
+         * gst/aiffparse/aiffparse.c: (plugin_init):
+         Enable/fix up translations for these plugins.
+         * po/LINGUAS:
+         Add 'ca' to LINGUAS.
+         * po/POTFILES.in:
+         * po/POTFILES.skip:
+         Add more files for translation and more files which tools
+         should skip.
+
+2008-08-07 14:34:03 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         [MOVED FROM BAD] ext/twolame/gsttwolame.*: Allow raw float samples as input for encoding.
+         Original commit message from CVS:
+         * ext/twolame/gsttwolame.c: (gst_two_lame_sink_setcaps),
+         (gst_two_lame_chain):
+         * ext/twolame/gsttwolame.h:
+         Allow raw float samples as input for encoding.
+
+2008-08-02 17:39:13 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         [MOVED FROM BAD] Add TwoLAME MP2 encoding element, based on the LAME element.
+         Original commit message from CVS:
+         * configure.ac:
+         * ext/Makefile.am:
+         * ext/twolame/Makefile.am:
+         * ext/twolame/gsttwolame.c: (gst_two_lame_mode_get_type),
+         (gst_two_lame_padding_get_type), (gst_two_lame_emphasis_get_type),
+         (gst_two_lame_release_memory), (gst_two_lame_finalize),
+         (gst_two_lame_base_init), (gst_two_lame_class_init),
+         (gst_two_lame_src_setcaps), (gst_two_lame_sink_setcaps),
+         (gst_two_lame_init), (gst_two_lame_set_property),
+         (gst_two_lame_get_property), (gst_two_lame_sink_event),
+         (gst_two_lame_chain), (gst_two_lame_setup),
+         (gst_two_lame_change_state), (gst_two_lame_get_default_settings),
+         (plugin_init):
+         * ext/twolame/gsttwolame.h:
+         Add TwoLAME MP2 encoding element, based on the LAME element.
+
 2009-03-09 23:12:33 +0000  Jan Schmidt <thaytan@noraisin.net>
 
        * common:
          Remove problematic and useless refcount check.
          Fixes #556381
 
+2008-10-13 18:10:25 +0000  Stefan Kost <ensonic@users.sourceforge.net>
+
+         Don't install static libs for plugins. Fixes #550851 for ugly.
+         Original commit message from CVS:
+         * ext/a52dec/Makefile.am:
+         * ext/amrnb/Makefile.am:
+         * ext/cdio/Makefile.am:
+         * ext/dvdnav/Makefile.am:
+         * ext/dvdread/Makefile.am:
+         * ext/lame/Makefile.am:
+         * ext/mad/Makefile.am:
+         * ext/mpeg2dec/Makefile.am:
+         * ext/sidplay/Makefile.am:
+         * gst/ac3parse/Makefile.am:
+         * gst/asfdemux/Makefile.am:
+         * gst/dvdlpcmdec/Makefile.am:
+         * gst/dvdsub/Makefile.am:
+         * gst/iec958/Makefile.am:
+         * gst/mpegaudioparse/Makefile.am:
+         * gst/mpegstream/Makefile.am:
+         * gst/realmedia/Makefile.am:
+         * gst/synaesthesia/Makefile.am:
+         Don't install static libs for plugins. Fixes #550851 for ugly.
+
 2008-10-10 12:28:34 +0000  Jan Schmidt <thaytan@mad.scientist.com>
 
          ext/flac/: Cast some size_t arguments to guint to avoid compiler warnings on 64-bit systems.
          Original commit message from CVS:
          add pulseaudio to plugins list in spec file
 
+2008-08-07 16:14:42 +0000  Frederic Crozat <fcrozat@mandriva.org>
+
+         Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#546822).
+         Original commit message from CVS:
+         Patch by: Frederic Crozat <fcrozat@mandriva.org>
+         * ext/dvdread/dvdreadsrc.c: (plugin_init):
+         * ext/lame/gstlame.c: (plugin_init):
+         * gst/asfdemux/gstasf.c: (plugin_init):
+         Make sure gettext returns translations in UTF-8 encoding rather
+         than in the current locale encoding (#546822).
+
 2008-08-07 16:13:41 +0000  Sebastian Dröge <slomo@circular-chaos.org>
 
          ext/flac/gstflacenc.c: If seeking failed return the appropiate return value to FLAC.
          shutting down or seeking, and it's not an error.
          Fixes: #540300 again.
 
+2008-07-31 14:24:27 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         ext/lame/gstlame.c: Use the default for the strict-iso property too.
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_class_init),
+         (gst_lame_get_default_settings):
+         Use the default for the strict-iso property too.
+         Allow a bitrate setting of 0, which lets lame choose the default value
+         and which makes it possible to set the compression-ratio property.
+
+2008-07-29 16:57:16 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         ext/lame/gstlame.*: Get the defaults settings of LAME in the plugin initialization function and return FALSE here if ...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_class_init), (gst_lame_init),
+         (gst_lame_chain), (gst_lame_get_default_settings), (plugin_init):
+         * ext/lame/gstlame.h:
+         Get the defaults settings of LAME in the plugin initialization
+         function and return FALSE here if something goes wrong. This removes
+         the hacky failing instance init function.
+         Use LAMEs default value for all settings instead of overwriting some
+         of them. Overwriting some of them gives unexpected results if one only
+         sets a preset. Fixes bug #498004.
+
 2008-07-28 20:17:46 +0000  Jan Schmidt <thaytan@mad.scientist.com>
 
          configure.ac: 0.10.8.4 pre-release
          * configure.ac:
          0.10.8.4 pre-release
 
+2008-07-27 15:56:27 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         ext/lame/gstlame.c: Use LAME's default for the min/max/mean VBR bitrate. Setting our own defaults will restrict the b...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_init):
+         Use LAME's default for the min/max/mean VBR bitrate. Setting our own
+         defaults will restrict the bitrate when using the presets in a bad way.
+         Fixes bug #498004.
+
+2008-07-27 11:01:12 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         Put the MPEG audio version into the caps as "mpegaudioversion".
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_setcaps):
+         * gst/mpegaudioparse/gstmpegaudioparse.c:
+         (mp3_type_frame_length_from_header), (mp3_caps_create),
+         (gst_mp3parse_chain):
+         Put the MPEG audio version into the caps as "mpegaudioversion".
+         This is different from "mpegversion".
+
 2008-07-25 14:50:03 +0000  Edward Hervey <bilboed@bilboed.com>
 
          gst/qtdemux/qtdemux.c: Fix segment-stop regression.
          g_snprintf rather than snprintf.
          Fixes #544433.
 
+2008-07-22 18:25:08 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         ext/lame/gstlame.*: Fix build with lame >= 3.97. The padding type and cwlimit settings are deprecated now and the fun...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_class_init), (gst_lame_init),
+         (gst_lame_set_property), (gst_lame_get_property), (gst_lame_setup):
+         * ext/lame/gstlame.h:
+         Fix build with lame >= 3.97. The padding type and cwlimit settings
+         are deprecated now and the function declarations are hidden in the
+         headers so deprecate the GObject properties for them and remove them
+         in 0.11. Fixes bug #544039.
+
 2008-07-22 06:32:03 +0000  Stefan Kost <ensonic@users.sourceforge.net>
 
          gst/debug/gsttaginject.*: Sent tags in _transform_ip() instead of _start(). Fixes #543404 partially.
          * gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
          Correctly distinguish 8bit vs 16bit raw audio.  Fixes #542410.
 
+2008-07-10 18:51:11 +0000  Stefan Kost <ensonic@users.sourceforge.net>
+
+         Document one more.
+         Original commit message from CVS:
+         * docs/plugins/Makefile.am:
+         * docs/plugins/gst-plugins-bad-plugins-docs.sgml:
+         * docs/plugins/gst-plugins-bad-plugins-sections.txt:
+         * docs/plugins/gst-plugins-bad-plugins.args:
+         * docs/plugins/gst-plugins-bad-plugins.hierarchy:
+         * docs/plugins/gst-plugins-bad-plugins.interfaces:
+         * docs/plugins/gst-plugins-bad-plugins.prerequisites:
+         * docs/plugins/gst-plugins-bad-plugins.signals:
+         * docs/plugins/inspect/plugin-stereo.xml:
+         * gst/stereo/gststereo.c:
+         Document one more.
+
 2008-07-08 21:05:18 +0000  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
 
          gst/qtdemux/qtdemux.c: Set pixel-aspect-ratio in caps using display width and height provided in track.
          Update a comment to note that the delivery-method is optional,
          Fixes #537675.
 
+2008-06-13 06:57:21 +0000  Stefan Kost <ensonic@users.sourceforge.net>
+
+         Add missing elements to docs. Restore alphabetical order in section file. Document mad (it was included in docs alrea...
+         Original commit message from CVS:
+         * docs/plugins/gst-plugins-ugly-plugins-docs.sgml:
+         * docs/plugins/gst-plugins-ugly-plugins-sections.txt:
+         * ext/a52dec/gsta52dec.c:
+         * ext/amrnb/amrnbdec.c:
+         * ext/amrnb/amrnbenc.c:
+         * ext/amrnb/amrnbparse.c:
+         * ext/lame/gstlame.c:
+         * ext/mad/gstmad.c:
+         * ext/sidplay/gstsiddec.cc:
+         * gst/asfdemux/gstrtspwms.c:
+         * gst/mpegaudioparse/gstxingmux.c:
+         * gst/realmedia/rademux.c:
+         * gst/realmedia/rdtmanager.c:
+         * gst/realmedia/rtspreal.c:
+         * gst/synaesthesia/gstsynaesthesia.c:
+         Add missing elements to docs. Restore alphabetical order in section
+         file. Document mad (it was included in docs already).
+         Fix doc-markup: use convinience syntax for examples
+         (produces valid docbook), add several refsec2 when we have several
+         titles. Fix some types.
+
+2008-06-13 05:52:17 +0000  Stefan Kost <ensonic@users.sourceforge.net>
+
+         Do not use short_description in section docs for elements. We extract them from element details and there will be war...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c:
+         * ext/sidplay/gstsiddec.cc:
+         * gst/mpegaudioparse/gstxingmux.c:
+         Do not use short_description in section docs for elements. We extract
+         them from element details and there will be warnings if they differ.
+
 2008-06-12 17:30:06 +0000  Wim Taymans <wim.taymans@gmail.com>
 
          gst/rtsp/gstrtspsrc.c: Set udpsrc for receiving data from multicast groups to PAUSED instead of leaving them in READY...
          * gst/goom2k1/*: ... here, in case somebody is sick enough
          Fixes #515073
 
+2008-02-22 14:55:57 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.c: Fix broken GST_ELEMENT_ERROR macro, fixes compile with the Sun
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_setcaps):
+         Fix broken GST_ELEMENT_ERROR macro, fixes compile with the Sun
+         Workshop 12 compiler, but probably also crashes (#517985).
+
 2008-02-22 09:56:03 +0000  Wim Taymans <wim.taymans@gmail.com>
 
          gst/rtsp/gstrtspsrc.c: Post the server response code in an error message instead of a generic 'error' message. Fixes ...
          Use and unset the GError when pipeline creation fails instead of
          simply leaking it. Fixes bug #515704.
 
+2008-02-11 09:13:33 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         ext/lame/gstlame.c: Don't leak the allowed caps.
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_setup):
+         Don't leak the allowed caps.
+         * tests/check/pipelines/lame.c: (GST_START_TEST):
+         Stop leaking all buffers. Fixes bug #515575.
+
 2008-02-10 10:46:13 +0000  Sebastian Dröge <slomo@circular-chaos.org>
 
          gst/audiofx/: Fix long description of audiofx elements. Fixes bug #515457.
          the picture metadata defines and structs don't exist yet.
          Fixes #509301.
 
+2008-01-17 17:26:48 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.*: Fix the case where you initially have stereo input, and so lame's mode is not set to mono, and th...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c:
+         * ext/lame/gstlame.h:
+         Fix the case where you initially have stereo input, and so lame's
+         mode is not set to mono, and then you get input with mono audio and
+         soon after you get stereo input again. What happened before this
+         commit is that it would keep the encoding mode as mono. It should
+         change it back to the one requested by the app (or the default one)
+         if not requested.
+
 2008-01-17 11:13:16 +0000  Olivier Crete <tester@tester.ca>
 
          gst/udp/gstmultiudpsink.*: Add property to automatically join a multicast group or not. This can be useful when shari...
          Initialise variables to work around (false) 'foo might be used
          uninitialized in this function' warnings by gcc-3.3.3 (#509298).
 
+2008-01-14 11:24:57 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         ext/lame/gstlame.c: Use gst_util_uint64_scale instead of gst_util_uint64_scale_int as 8 * GST_SECOND is too large for...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_event):
+         Use gst_util_uint64_scale instead of gst_util_uint64_scale_int
+         as 8 * GST_SECOND is too large for int.
+
+2008-01-14 09:17:47 +0000  Mark Nauwelaerts <manauw@syknet.be>
+
+         ext/lame/gstlame.c: Correctly set number of channels when using mono-encoding mode and fix the duration calculation o...
+         Original commit message from CVS:
+         Patch by: Mark Nauwelaerts <manauw at syknet dot be>
+         * ext/lame/gstlame.c: (gst_lame_sink_setcaps),
+         (gst_lame_sink_event):
+         Correctly set number of channels when using mono-encoding mode
+         and fix the duration calculation of the EOS buffer.
+
 2008-01-12 02:32:35 +0000  David Schleef <ds@schleef.org>
 
          Ignore more files for the buildbot.
          * gst/qtdemux/gstrtpxqtdepay.h:
          Fail if we don't know the quicktime format.
 
+2007-09-26 13:40:35 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.c: Fix up case where there is no peer, in which case _get_allowed_caps() will return NULL.
+         Original commit message from CVS:
+         * ext/lame/gstlame.c:
+         Fix up case where there is no peer, in which case
+         _get_allowed_caps() will return NULL.
+
 2007-09-26 13:19:17 +0000  Tim-Philipp Müller <tim@centricular.net>
 
          ext/flac/gstflacenc.*: Save the flow return from the last gst_pad_push() and make sure we pass the right flow return ...
          the binary size a bit. Leaving old code around for now,
          selectable by a define in the code. Fixes #435435.
 
+2007-09-25 13:20:27 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.c: Use GST_PTR_FORMAT to print caps in debug statement.
+         Original commit message from CVS:
+         * ext/lame/gstlame.c:
+         Use GST_PTR_FORMAT to print caps in debug statement.
+
 2007-09-25 08:51:36 +0000  Sebastian Dröge <slomo@circular-chaos.org>
 
          configure.ac: Use AG_GST_ARG_WITH_PLUGINS, AG_GST_ARG_ENABLE_EXTERNAL and
          * sys/vcd/vcdsrc.c:
          Massive leak fixing, plus code cleanups.
 
+2007-09-24 10:26:21 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+         ext/lame/gstlame.c: Allow fixing the sample rate lame converts to by negotiating fixed sample rate on the src pad caps.
+         Original commit message from CVS:
+         * ext/lame/gstlame.c:
+         Allow fixing the sample rate lame converts to by negotiating fixed
+         sample rate on the src pad caps.
+         Add docs for it.
+         * tests/check/Makefile.am:
+         * tests/check/pipelines/lame.c:
+         Add a check for it.
+
 2007-09-23 18:57:14 +0000  Stefan Kost <ensonic@users.sourceforge.net>
 
          sys/oss/gstosshelper.c: Use GST_WARNING instead of a g_critical. This situation is not caused by the application.
          as the convolution is done out of place anyway. Should
          be done in place later.
 
+2007-08-09 17:39:47 +0000  Sebastian Dröge <slomo@circular-chaos.org>
+
+         Port the stereo element to GStreamer 0.10.
+         Original commit message from CVS:
+         * configure.ac:
+         * gst/stereo/Makefile.am:
+         * gst/stereo/gststereo.c: (gst_stereo_base_init),
+         (gst_stereo_class_init), (gst_stereo_init),
+         (gst_stereo_transform_ip), (gst_stereo_set_property),
+         (gst_stereo_get_property):
+         * gst/stereo/gststereo.h:
+         Port the stereo element to GStreamer 0.10.
+
 2007-08-09 10:54:05 +0000  Thomas Vander Stichele <thomas@apestaart.org>
 
          po/: Updated translations.
          unit-size. Also plug a possible memleak that happens when decoding
          fails for some reason.
 
+2007-03-21 12:53:57 +0000  Jan Schmidt <thaytan@mad.scientist.com>
+
+         ext/lame/gstlame.c: Disable the bitrate checking when the user has requested
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_setup):
+         Disable the bitrate checking when the user has requested
+         Free Format mode, as all bitrates less than the maximum
+         are valid then.
+
 2007-03-21 11:49:32 +0000  Tim-Philipp Müller <tim@centricular.net>
 
          gst/apetag/gsttagdemux.c: Rename registered type in preparation of GstTagDemux moving to
          * configure.ac:
          Convert to new AG_GST style.
 
+2007-02-28 18:41:38 +0000  Jan Schmidt <thaytan@mad.scientist.com>
+
+         ext/lame/gstlame.c: Display sensible defaults and limits for the vbr-min/max/mean properties. Fix the 'hard-limit' VB...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_class_init), (gst_lame_init),
+         (gst_lame_setup):
+         Display sensible defaults and limits for the
+         vbr-min/max/mean properties. Fix the 'hard-limit' VBR min
+         property - it's supposed to be a boolean 0/1 value.
+
+2007-02-28 16:01:08 +0000  Jan Schmidt <thaytan@mad.scientist.com>
+
+         ext/lame/gstlame.c: Initialise the variables so gcc doesn't complain about possibly uninitialised uses, even though t...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c:
+         Initialise the variables so gcc doesn't complain about possibly
+         uninitialised uses, even though they can't actually happen.
+
 2007-02-28 12:59:43 +0000  Thomas Vander Stichele <thomas@apestaart.org>
 
          tests/check/: add test for states
          * tests/check/elements/level.c: (GST_START_TEST):
          Fix level for multi-channel case.
 
+2007-02-21 16:02:33 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+         ext/lame/gstlame.c: Fix up bitrate checking macro.  Make it give us a
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_setcaps),
+         (gst_lame_set_property), (gst_lame_setup):
+         Fix up bitrate checking macro.  Make it give us a
+         GST_ELEMENT_WARNING message so the application has a chance of
+         reporting this to the user.  Move the checking to _setup, so we
+         are sure it runs in the READY state, when we hope to have a pipeline
+         and a bus that is not flushing.
+         This fixes e.g. using 96 kbit/sec as a bitrate.
+
 2007-02-21 10:18:12 +0000  Stefan Kost <ensonic@users.sourceforge.net>
 
          gst/level/gstlevel.*: Use function pointer for process function and add process functions for float audio.
          * sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_dispose):
          Help gst-indent.
 
+2007-02-09 16:24:45 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.*: On receiving EOS, we try to push a last buffer with the remaining samples. Don't do that if we go...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_event), (gst_lame_chain),
+         (gst_lame_change_state):
+         * ext/lame/gstlame.h:
+         On receiving EOS, we try to push a last buffer with the remaining
+         samples. Don't do that if we got an unclean flow return on the last
+         gst_pad_push(), downstream might not handle this very gracefully
+         (see #403168).
+         * gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_chain):
+         Pass flow returns upstream (helps #403168).
+
 2007-02-09 09:24:58 +0000  Tim-Philipp Müller <tim@centricular.net>
 
          gst/avi/gstavimux.c: Explicitly cast result of pointer arithmetic to integer in order to avoid compiler warnings on s...
          Fix build with gcc-2.x (declare variables at the beginning of a
          block etc.). Fixes #391971.
 
+2006-12-30 20:01:35 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+         ext/lame/gstlame.c: warn when outgoing sample rate is different from incoming
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_setcaps), (gst_lame_chain):
+         warn when outgoing sample rate is different from incoming
+
 2006-12-30 12:44:01 +0000  Tim-Philipp Müller <tim@centricular.net>
 
          tests/check/elements/videocrop.c: When we can't create an element needed for the test, print a message detailing whic...
          (gst_quarktv_planetable_clear):
          Add some NULL pointer checks (possibly related to #385623).
 
+2006-12-14 10:15:24 +0000  Roland Kay <roland.kay@ox.compsoc.net>
+
+         ext/lame/gstlame.*: Fix leak (by calling lame_init_params() before lame_close()); handle
+         Original commit message from CVS:
+         Based on patch by: Roland Kay  <roland.kay at ox compsoc net>
+         * ext/lame/gstlame.c: (gst_lame_init), (gst_lame_chain),
+         (gst_lame_setup):
+         * ext/lame/gstlame.h:
+         Fix leak (by calling lame_init_params() before lame_close()); handle
+         NULL return from lame_init() more gracefully. Fixes #385311.
+
 2006-12-13 17:12:22 +0000  Wim Taymans <wim.taymans@gmail.com>
 
          gst/qtdemux/qtdemux.c: Add AMR-WB to the list of supported formats.
          (gst_qtdemux_handle_src_query), (qtdemux_parse_trak):
          Don't parse extra sample params for raw pcm. Fixes #374914.
 
+2006-11-14 10:29:37 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+         ext/lame/gstlame.*: Make lame timestamp flushed eos buffer by some additional timestamp accounting. Fixes #374760.
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_event), (gst_lame_chain),
+         (gst_lame_change_state):
+         * ext/lame/gstlame.h:
+         Make lame timestamp flushed eos buffer by some additional timestamp
+         accounting. Fixes #374760.
+
 2006-11-13 18:31:18 +0000  Mark Nauwelaerts <manauw@skynet.be>
 
          gst/videomixer/videomixer.c: Fix memleak by unref'ing collectpads instance (when finalizing)
          Fix a bunch of problems discovered by the Forte compiler, mostly type
          mixups and pointer arithmetics with void pointers. Fixes #362603.
 
+2006-10-13 14:45:11 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.c: Round up not allowed bitrates to the next higher allowed one (Closes: #361140).
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_set_property):
+         Round up not allowed bitrates to the next higher allowed one
+         (Closes: #361140).
+
+2006-10-13 14:19:24 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         Add docs for lame and lame to docs. Specify allowed bitrates in the properties description (#361140). Canonicalise ob...
+         Original commit message from CVS:
+         * docs/plugins/Makefile.am:
+         * docs/plugins/gst-plugins-ugly-plugins-docs.sgml:
+         * docs/plugins/gst-plugins-ugly-plugins-sections.txt:
+         * ext/lame/gstlame.c: (gst_lame_class_init):
+         * ext/lame/gstlame.h:
+         Add docs for lame and lame to docs. Specify allowed bitrates
+         in the properties description (#361140). Canonicalise object
+         property names (ie. use hyphen instead of underscore).
+         * docs/plugins/inspect/plugin-a52dec.xml:
+         * docs/plugins/inspect/plugin-amrnb.xml:
+         * docs/plugins/inspect/plugin-asf.xml:
+         * docs/plugins/inspect/plugin-dvdlpcmdec.xml:
+         * docs/plugins/inspect/plugin-dvdread.xml:
+         * docs/plugins/inspect/plugin-dvdsub.xml:
+         * docs/plugins/inspect/plugin-iec958.xml:
+         * docs/plugins/inspect/plugin-lame.xml:
+         * docs/plugins/inspect/plugin-mad.xml:
+         * docs/plugins/inspect/plugin-mpeg2dec.xml:
+         * docs/plugins/inspect/plugin-mpegaudioparse.xml:
+         * docs/plugins/inspect/plugin-mpegstream.xml:
+         * docs/plugins/inspect/plugin-siddec.xml:
+         Update version to CVS.
+
+2006-10-13 10:00:27 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         Add i18n magic to lame plugin. Throw decent error message when we fail to setup the encoder (#361140, 361151); misc. ...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_setcaps),
+         (gst_lame_set_property), (gst_lame_get_property), (gst_lame_chain),
+         (plugin_init):
+         * po/POTFILES.in:
+         Add i18n magic to lame plugin. Throw decent error message when we
+         fail to setup the encoder (#361140, 361151); misc. minor clean-ups.
+
 2006-10-12 19:02:51 +0000  Tim-Philipp Müller <tim@centricular.net>
 
          ext/speex/: Miscellaneous clean-ups, among other things: speexenc => enc to enhance code readability; change speexenc...
          * sys/v4l2/v4l2src_calls.h:
          Cleanup error messages and unify header comments
 
+2006-08-31 13:04:31 +0000  Jan Schmidt <thaytan@mad.scientist.com>
+
+         Add missing GST_LIBS to the link flags
+         Original commit message from CVS:
+         * ext/lame/Makefile.am:
+         * ext/mpeg2dec/Makefile.am:
+         * gst/dvdlpcmdec/Makefile.am:
+         * gst/dvdsub/Makefile.am:
+         * gst/mpegaudioparse/Makefile.am:
+         Add missing GST_LIBS to the link flags
+
 2006-08-30 18:01:52 +0000  Edgard Lima <edgard.lima@indt.org.br>
 
        * sys/v4l2/gstv4l2src.c:
          Small cleanups. Fixes #348752.
          API: buffer property
 
+2006-07-26 17:09:04 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.c: Fix lame putting lots of 0's at start of mp3.  Fixes bug #348786.
+         Original commit message from CVS:
+         2006-07-26  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_setup):
+         Fix lame putting lots of 0's at start of mp3.  Fixes bug #348786.
+
 2006-07-26 16:36:59 +0000  Kai Vehmanen <kv2004@eca.cx>
 
          gst/rtp/: Fix timestamp calculation on outgoing RTP packets.
          * gst/id3demux/gstid3demux.c: (id3demux_get_upstream_size):
          Use gst_pad_query_peer_duration() utility function here.
 
+2006-06-11 17:08:11 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+         update build files
+         Original commit message from CVS:
+         * autogen.sh:
+         * configure.ac:
+         * ext/a52dec/Makefile.am:
+         * ext/dvdnav/Makefile.am:
+         * ext/dvdread/Makefile.am:
+         * ext/lame/Makefile.am:
+         * ext/mad/Makefile.am:
+         * ext/mpeg2dec/Makefile.am:
+         * ext/sidplay/Makefile.am:
+         update build files
+
 2006-06-11 13:57:19 +0000  Thomas Vander Stichele <thomas@apestaart.org>
 
          autogen.sh: require am17
          * sys/vcd/vcdsrc.h:
          Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
 
+2006-06-01 22:00:26 +0000  Stefan Kost <ensonic@users.sourceforge.net>
+
+         Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
+         Original commit message from CVS:
+         * ext/alsaspdif/alsaspdifsink.h:
+         * ext/amrwb/gstamrwbdec.h:
+         * ext/amrwb/gstamrwbenc.h:
+         * ext/amrwb/gstamrwbparse.h:
+         * ext/arts/gst_arts.h:
+         * ext/artsd/gstartsdsink.h:
+         * ext/audiofile/gstafparse.h:
+         * ext/audiofile/gstafsink.h:
+         * ext/audiofile/gstafsrc.h:
+         * ext/audioresample/gstaudioresample.h:
+         * ext/bz2/gstbz2dec.h:
+         * ext/bz2/gstbz2enc.h:
+         * ext/dirac/gstdiracdec.h:
+         * ext/directfb/dfbvideosink.h:
+         * ext/divx/gstdivxdec.h:
+         * ext/divx/gstdivxenc.h:
+         * ext/dts/gstdtsdec.h:
+         * ext/faac/gstfaac.h:
+         * ext/gsm/gstgsmdec.h:
+         * ext/gsm/gstgsmenc.h:
+         * ext/ivorbis/vorbisenc.h:
+         * ext/libfame/gstlibfame.h:
+         * ext/nas/nassink.h:
+         * ext/neon/gstneonhttpsrc.h:
+         * ext/polyp/polypsink.h:
+         * ext/sdl/sdlaudiosink.h:
+         * ext/sdl/sdlvideosink.h:
+         * ext/shout/gstshout.h:
+         * ext/snapshot/gstsnapshot.h:
+         * ext/sndfile/gstsf.h:
+         * ext/swfdec/gstswfdec.h:
+         * ext/tarkin/gsttarkindec.h:
+         * ext/tarkin/gsttarkinenc.h:
+         * ext/theora/theoradec.h:
+         * ext/wavpack/gstwavpackdec.h:
+         * ext/wavpack/gstwavpackparse.h:
+         * ext/xine/gstxine.h:
+         * ext/xvid/gstxviddec.h:
+         * ext/xvid/gstxvidenc.h:
+         * gst/cdxaparse/gstcdxaparse.h:
+         * gst/cdxaparse/gstcdxastrip.h:
+         * gst/colorspace/gstcolorspace.h:
+         * gst/festival/gstfestival.h:
+         * gst/freeze/gstfreeze.h:
+         * gst/gdp/gstgdpdepay.h:
+         * gst/gdp/gstgdppay.h:
+         * gst/modplug/gstmodplug.h:
+         * gst/mpeg1sys/gstmpeg1systemencode.h:
+         * gst/mpeg1videoparse/gstmp1videoparse.h:
+         * gst/mpeg2sub/gstmpeg2subt.h:
+         * gst/mpegaudioparse/gstmpegaudioparse.h:
+         * gst/multifilesink/gstmultifilesink.h:
+         * gst/overlay/gstoverlay.h:
+         * gst/playondemand/gstplayondemand.h:
+         * gst/qtdemux/qtdemux.h:
+         * gst/rtjpeg/gstrtjpegdec.h:
+         * gst/rtjpeg/gstrtjpegenc.h:
+         * gst/smooth/gstsmooth.h:
+         * gst/smoothwave/gstsmoothwave.h:
+         * gst/spectrum/gstspectrum.h:
+         * gst/speed/gstspeed.h:
+         * gst/stereo/gststereo.h:
+         * gst/switch/gstswitch.h:
+         * gst/tta/gstttadec.h:
+         * gst/tta/gstttaparse.h:
+         * gst/videodrop/gstvideodrop.h:
+         * gst/xingheader/gstxingmux.h:
+         * sys/directdraw/gstdirectdrawsink.h:
+         * sys/directsound/gstdirectsoundsink.h:
+         * sys/dxr3/dxr3audiosink.h:
+         * sys/dxr3/dxr3spusink.h:
+         * sys/dxr3/dxr3videosink.h:
+         * sys/qcam/gstqcamsrc.h:
+         * sys/vcd/vcdsrc.h:
+         Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
+
 2006-06-01 21:07:26 +0000  Stefan Kost <ensonic@users.sourceforge.net>
 
          Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
          * gst/wavparse/gstwavparse.c: (gst_wavparse_dispose):
          C89 compliance fixes. Fixes #340980
 
+2006-05-06 11:38:30 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.*: Remove tag writing from lame (which was completely broken anyway, #329184). Leaving GstTagSetter ...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_get_type),
+         (gst_lame_release_memory), (gst_lame_init), (gst_lame_sink_event),
+         (gst_lame_setup), (gst_lame_change_state):
+         * ext/lame/gstlame.h:
+         Remove tag writing from lame (which was completely broken
+         anyway, #329184). Leaving GstTagSetter interface around for
+         now, albeit non-functional. Should be removed completely
+         in 0.11. Use the 'id3v2mux' plugin from -good for writing
+         tags.
+
 2006-05-06 09:01:34 +0000  Tim-Philipp Müller <tim@centricular.net>
 
          ext/flac/gstflacdec.*: Handle segment seeks that include the end of the file as stop point properly: when the decoder...
          Original commit message from CVS:
          Some changes proposed by wingo in bug #338818 (but not everything yet). Patch from Martin Rubli to fix framerate detection.
 
+2006-05-05 08:23:39 +0000  Andres Salomon <dilinger@debian.org>
+
+         ext/lame/gstlame.c: Fix typo (comma vs. semicolon) (#340710).
+         Original commit message from CVS:
+         Patch by: Andres Salomon  <dilinger at debian org>
+         * ext/lame/gstlame.c: (gst_lame_sink_event):
+         Fix typo (comma vs. semicolon) (#340710).
+
 2006-05-04 17:27:27 +0000  Michal Benes <michal.benes@xeris.cz>
 
          gst/matroska/matroska-demux.c: Don't leak caps when freeing the stream context (#340623).
          Define GstElementDetails as const and also static (when defined as
          global)
 
+2006-04-25 21:56:38 +0000  Stefan Kost <ensonic@users.sourceforge.net>
+
+         Define GstElementDetails as const and also static (when defined as global)
+         Original commit message from CVS:
+         * ext/amrwb/gstamrwbdec.c:
+         * ext/amrwb/gstamrwbenc.c:
+         * ext/amrwb/gstamrwbparse.c:
+         * ext/arts/gst_arts.c:
+         * ext/artsd/gstartsdsink.c:
+         * ext/audiofile/gstafparse.c:
+         * ext/audiofile/gstafsink.c:
+         * ext/audiofile/gstafsrc.c:
+         * ext/audioresample/gstaudioresample.c:
+         * ext/bz2/gstbz2dec.c:
+         * ext/bz2/gstbz2enc.c:
+         * ext/cdaudio/gstcdaudio.c:
+         * ext/directfb/dfbvideosink.c:
+         * ext/divx/gstdivxdec.c:
+         * ext/divx/gstdivxenc.c:
+         * ext/dts/gstdtsdec.c: (gst_dtsdec_base_init):
+         * ext/faac/gstfaac.c: (gst_faac_base_init):
+         * ext/faad/gstfaad.c:
+         * ext/gsm/gstgsmdec.c:
+         * ext/gsm/gstgsmenc.c:
+         * ext/hermes/gsthermescolorspace.c:
+         * ext/ivorbis/vorbisfile.c:
+         * ext/lcs/gstcolorspace.c:
+         * ext/libfame/gstlibfame.c:
+         * ext/libmms/gstmms.c: (gst_mms_base_init):
+         * ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init):
+         * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init):
+         * ext/nas/nassink.c: (gst_nassink_base_init):
+         * ext/neon/gstneonhttpsrc.c:
+         * ext/sdl/sdlaudiosink.c:
+         * ext/sdl/sdlvideosink.c:
+         * ext/shout/gstshout.c:
+         * ext/snapshot/gstsnapshot.c:
+         * ext/sndfile/gstsf.c:
+         * ext/swfdec/gstswfdec.c:
+         * ext/tarkin/gsttarkindec.c:
+         * ext/tarkin/gsttarkinenc.c:
+         * ext/theora/theoradec.c:
+         * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init):
+         * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init):
+         * ext/xvid/gstxviddec.c:
+         * ext/xvid/gstxvidenc.c:
+         * gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init):
+         * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init):
+         * gst/chart/gstchart.c:
+         * gst/colorspace/gstcolorspace.c:
+         * gst/deinterlace/gstdeinterlace.c:
+         * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init):
+         * gst/festival/gstfestival.c:
+         * gst/filter/gstbpwsinc.c:
+         * gst/filter/gstiir.c:
+         * gst/filter/gstlpwsinc.c:
+         * gst/freeze/gstfreeze.c:
+         * gst/games/gstpuzzle.c: (gst_puzzle_base_init):
+         * gst/librfb/gstrfbsrc.c:
+         * gst/mixmatrix/mixmatrix.c:
+         * gst/mpeg1sys/gstmpeg1systemencode.c:
+         * gst/mpeg1videoparse/gstmp1videoparse.c:
+         * gst/mpeg2sub/gstmpeg2subt.c:
+         * gst/mpegaudioparse/gstmpegaudioparse.c:
+         * gst/multifilesink/gstmultifilesink.c:
+         * gst/overlay/gstoverlay.c:
+         * gst/passthrough/gstpassthrough.c:
+         * gst/playondemand/gstplayondemand.c:
+         * gst/qtdemux/qtdemux.c:
+         * gst/rtjpeg/gstrtjpegdec.c:
+         * gst/rtjpeg/gstrtjpegenc.c:
+         * gst/smooth/gstsmooth.c:
+         * gst/smoothwave/gstsmoothwave.c:
+         * gst/spectrum/gstspectrum.c:
+         * gst/speed/gstspeed.c:
+         * gst/stereo/gststereo.c:
+         * gst/switch/gstswitch.c:
+         * gst/tta/gstttadec.c: (gst_tta_dec_base_init):
+         * gst/tta/gstttaparse.c: (gst_tta_parse_base_init):
+         * gst/vbidec/gstvbidec.c:
+         * gst/videocrop/gstvideocrop.c:
+         * gst/videodrop/gstvideodrop.c:
+         * gst/virtualdub/gstxsharpen.c:
+         * gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init):
+         * gst/y4m/gsty4mencode.c:
+         * sys/cdrom/gstcdplayer.c:
+         * sys/directdraw/gstdirectdrawsink.c:
+         * sys/directsound/gstdirectsoundsink.c:
+         * sys/glsink/glimagesink.c:
+         * sys/qcam/gstqcamsrc.c:
+         * sys/v4l2/gstv4l2src.c:
+         * sys/vcd/vcdsrc.c: (gst_vcdsrc_base_init):
+         * sys/ximagesrc/ximagesrc.c:
+         Define GstElementDetails as const and also static (when defined as
+         global)
+
 2006-04-25 21:39:46 +0000  Stefan Kost <ensonic@users.sourceforge.net>
 
          Define GstElementDetails as const and also static (when defined as global)
          best, on big endian systems. Drop its rank in that case. OTOH on
          x86 it's quite fine. See changes from today in gst-ffmpeg as well.
 
+2006-04-21 12:40:41 +0000  Ed Catmur <ed@catmur.co.uk>
+
+         ext/lame/gstlame.c: Don't crash if we get an EOS event before the encoder has been set up (#339287).
+         Original commit message from CVS:
+         Patch by: Ed Catmur  <ed at catmur dot co dot uk>
+         * ext/lame/gstlame.c: (gst_lame_sink_event):
+         Don't crash if we get an EOS event before the encoder
+         has been set up (#339287).
+
 2006-04-21 09:27:11 +0000  Michael Smith <msmith@xiph.org>
 
          Add icydemux, and tests.
          * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_class_init):
          Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
 
+2006-04-08 21:48:01 +0000  Stefan Kost <ensonic@users.sourceforge.net>
+
+         Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
+         Original commit message from CVS:
+         * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_class_init):
+         * ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_class_init):
+         * ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_class_init):
+         * ext/arts/gst_arts.c: (gst_arts_class_init):
+         * ext/artsd/gstartsdsink.c: (gst_artsdsink_class_init):
+         * ext/audiofile/gstafsink.c: (gst_afsink_class_init):
+         * ext/audiofile/gstafsrc.c: (gst_afsrc_class_init):
+         * ext/audioresample/gstaudioresample.c:
+         * ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init):
+         * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_class_init):
+         * ext/divx/gstdivxdec.c: (gst_divxdec_class_init):
+         * ext/hermes/gsthermescolorspace.c:
+         (gst_hermes_colorspace_class_init):
+         * ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_class_init):
+         * ext/jack/gstjack.c: (gst_jack_class_init):
+         * ext/jack/gstjackbin.c: (gst_jack_bin_class_init):
+         * ext/lcs/gstcolorspace.c: (gst_colorspace_class_init):
+         * ext/libfame/gstlibfame.c: (gst_fameenc_class_init):
+         * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_class_init):
+         * ext/nas/nassink.c: (gst_nassink_class_init):
+         * ext/shout/gstshout.c: (gst_icecastsend_class_init):
+         * ext/snapshot/gstsnapshot.c: (gst_snapshot_class_init):
+         * ext/sndfile/gstsf.c: (gst_sf_class_init):
+         * ext/swfdec/gstswfdec.c: (gst_swfdecbuffer_class_init),
+         (gst_swfdec_class_init):
+         * ext/tarkin/gsttarkindec.c: (gst_tarkindec_class_init):
+         * ext/tarkin/gsttarkinenc.c: (gst_tarkinenc_class_init):
+         * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_class_init):
+         * gst/chart/gstchart.c: (gst_chart_class_init):
+         * gst/colorspace/gstcolorspace.c: (gst_colorspace_class_init):
+         * gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_class_init):
+         * gst/festival/gstfestival.c: (gst_festival_class_init):
+         * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init):
+         * gst/filter/gstiir.c: (gst_iir_class_init):
+         * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init):
+         * gst/librfb/gstrfbsrc.c: (gst_rfbsrc_class_init):
+         * gst/mixmatrix/mixmatrix.c: (gst_mixmatrix_class_init):
+         * gst/mpeg1sys/gstmpeg1systemencode.c:
+         (gst_system_encode_class_init):
+         * gst/mpeg1videoparse/gstmp1videoparse.c:
+         (gst_mp1videoparse_class_init):
+         * gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_class_init):
+         * gst/mpegaudioparse/gstmpegaudioparse.c:
+         (gst_mp3parse_class_init):
+         * gst/overlay/gstoverlay.c: (gst_overlay_class_init):
+         * gst/passthrough/gstpassthrough.c: (passthrough_class_init):
+         * gst/playondemand/gstplayondemand.c: (play_on_demand_class_init):
+         * gst/rtjpeg/gstrtjpegdec.c: (gst_rtjpegdec_class_init):
+         * gst/rtjpeg/gstrtjpegenc.c: (gst_rtjpegenc_class_init):
+         * gst/smooth/gstsmooth.c: (gst_smooth_class_init):
+         * gst/smoothwave/gstsmoothwave.c: (gst_smoothwave_class_init):
+         * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init):
+         * gst/stereo/gststereo.c: (gst_stereo_class_init):
+         * gst/switch/gstswitch.c: (gst_switch_class_init):
+         * gst/tta/gstttadec.c: (gst_tta_dec_class_init):
+         * gst/tta/gstttaparse.c: (gst_tta_parse_class_init):
+         * gst/vbidec/gstvbidec.c: (gst_vbidec_class_init):
+         * gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init):
+         * gst/virtualdub/gstxsharpen.c: (gst_xsharpen_class_init):
+         * gst/y4m/gsty4mencode.c: (gst_y4mencode_class_init):
+         * sys/cdrom/gstcdplayer.c: (cdplayer_class_init):
+         * sys/directsound/gstdirectsoundsink.c:
+         (gst_directsoundsink_class_init):
+         * sys/dxr3/dxr3audiosink.c: (dxr3audiosink_class_init):
+         * sys/dxr3/dxr3spusink.c: (dxr3spusink_class_init):
+         * sys/dxr3/dxr3videosink.c: (dxr3videosink_class_init):
+         * sys/qcam/gstqcamsrc.c: (gst_qcamsrc_class_init):
+         * sys/v4l2/gstv4l2colorbalance.c:
+         (gst_v4l2_color_balance_channel_class_init):
+         * sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_channel_class_init),
+         (gst_v4l2_tuner_norm_class_init):
+         * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_class_init):
+         Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
+
 2006-04-08 21:21:45 +0000  Stefan Kost <ensonic@users.sourceforge.net>
 
          Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
 
 2006-04-01 10:09:11 +0000  Thomas Vander Stichele <thomas@apestaart.org>
 
+       * gst/audiofx/gststereo.c:
+         rework build; add translations for v4l2
+         Original commit message from CVS:
+         rework build; add translations for v4l2
+
+2006-04-01 10:09:11 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
        * gst/equalizer/gstiirequalizer.c:
        * gst/qtdemux/qtdemux.c:
        * gst/spectrum/gstspectrum.c:
          * po/vi.po:
          updated
 
+2006-04-01 09:54:39 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+         configure.ac: rework similarly to other modules
+         Original commit message from CVS:
+         * configure.ac:
+         rework similarly to other modules
+         * ext/a52dec/gsta52dec.c:
+         * ext/amrnb/amrnb.c:
+         * ext/dvdnav/dvdnavsrc.c:
+         * ext/dvdread/dvdreadsrc.c:
+         * ext/lame/gstlame.c:
+         * ext/mad/gstid3tag.c:
+         * ext/mpeg2dec/gstmpeg2dec.c:
+         * ext/sidplay/gstsiddec.cc:
+         * gst/asfdemux/gstasf.c:
+         * gst/dvdlpcmdec/gstdvdlpcmdec.c:
+         * gst/dvdsub/gstdvdsubdec.c:
+         * gst/iec958/ac3iec.c:
+         * gst/mpegaudioparse/gstmpegaudioparse.c:
+         * gst/mpegstream/gstmpegstream.c:
+         * gst/realmedia/rmdemux.c: (plugin_init):
+         use the correct defines
+
 2006-03-31 17:52:36 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
 
          Add tests and fix PAR caps issue to ximagesrc
          Seek in READY patch. Only works for pull based mode.
          Fixes #323880
 
+2006-03-28 16:06:05 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.*: Make xingheader property non-functional, it's broken anyway after all (use xingmux instead).
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_init), (gst_lame_set_property),
+         (gst_lame_get_property), (gst_lame_setup):
+         * ext/lame/gstlame.h:
+         Make xingheader property non-functional, it's broken anyway
+         after all (use xingmux instead).
+
+2006-03-28 15:10:18 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.c: On EOS, flush encoder and send remaining data. Fix return value handling in sink event function.
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_event):
+         On EOS, flush encoder and send remaining data. Fix
+         return value handling in sink event function.
+
 2006-03-27 17:06:45 +0000  Edgard Lima <edgard.lima@indt.org.br>
 
        * sys/v4l2/v4l2src_calls.c:
          - Use gst_pad_new_from_static_template(), shorter and safer.
          - Free unused QtDemuxStream when not used.
 
+2006-03-15 13:43:42 +0000  Christophe Fergeau <teuf@gnome.org>
+
+         ext/lame/gstlame.c: use GST_DEBUG_FUNCPTR more often.
+         Original commit message from CVS:
+         Patch by: Christophe Fergeau  <teuf gnome org>
+         * ext/lame/gstlame.c: (gst_lame_release_memory),
+         (gst_lame_finalize), (gst_lame_class_init),
+         (gst_lame_sink_setcaps), (gst_lame_init), (gst_lame_sink_event),
+         (gst_lame_change_state):
+         Fix some memory leaks (#333345), use GST_DEBUG_FUNCPTR more often.
+
 2006-03-14 17:56:02 +0000  Tim-Philipp Müller <tim@centricular.net>
 
          configure.ac: Bump -base requirement to 0.10.5 for gst_tag_from_id3_user_tag(), used by id3demux.
          Include "_stdint.h" in an attempt to make the
          PPC-buildbot happy.
 
+2006-03-12 11:00:33 +0000  Christophe Fergeau <teuf@gnome.org>
+
+         ext/lame/gstlame.c: mark the xing-header property as BROKEN (see http://bugzilla.gnome.org/show_bug.cgi?id=330317#c19...
+         Original commit message from CVS:
+         2006-03-12  Christophe Fergeau  <teuf@gnome.org>
+         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
+         * ext/lame/gstlame.c: (gst_lame_class_init): mark the xing-header
+         property as BROKEN (see
+         http://bugzilla.gnome.org/show_bug.cgi?id=330317#c19 for an
+         explanation why it's broken).
+
 2006-03-11 22:50:03 +0000  Edgard Lima <edgard.lima@indt.org.br>
 
        * sys/v4l2/Makefile.am:
          it as taglist on the bus. Allow up to 8 channesl for raw
          PCM in the source pad template caps.
 
+2006-02-16 17:16:06 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+         ext/lame/gstlame.c: Fix up lame a bit.
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_init), (gst_lame_chain),
+         (gst_lame_change_state):
+         Fix up lame a bit.
+         Apply patch #319782 by Gautier Portet.
+
 2006-02-16 16:53:52 +0000  Wim Taymans <wim.taymans@gmail.com>
 
          gst/multipart/multipartdemux.c: Applied #318663. Gives quite a few false positives in autoscan mode, but it's better ...
          * gst/matroska/matroska-ids.h:
          Added recognition of Real Audio and Video streams in matroska demuxer.
 
+2006-01-23 18:37:16 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.*: Contrary to what the const char in the lame API might suggest, lame expects us to keep the string...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_finalize), (gst_lame_class_init),
+         (gst_lame_init), (add_one_tag), (gst_lame_set_metadata):
+         * ext/lame/gstlame.h:
+         Contrary to what the const char in the lame API might suggest,
+         lame expects us to keep the strings we pass to id3tag_set_foo()
+         around; it doesn't free them either though, so we have to store
+         them somewhere and free them later when we can be sure lame
+         doesn't need them any longer.
+
 2006-01-23 15:10:55 +0000  Edward Hervey <bilboed@bilboed.com>
 
          gst/qtdemux/qtdemux.c: Added codec recognition for: _ VP31 : video/x-vp3 _ AVDJ : image/jpeg _ dvcp, dvc  : video/x-d...
          _ dvcp, dvc  : video/x-dv, systemstream=(boolean)false
          _ 0x6d730017 : audio/x-adpcm, layout=(string)quicktime
 
+2006-01-23 15:02:04 +0000  Tim-Philipp Müller <tim@centricular.net>
+
+         ext/lame/gstlame.c: don't pass an uninitialised string pointer to lame if we don't know how to handle the tag type, a...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (add_one_tag):
+         Fix handling of GST_TAG_DATE (#311679), don't pass an
+         uninitialised string pointer to lame if we don't know
+         how to handle the tag type, and fix minor memory leak.
+
 2006-01-23 14:32:47 +0000  Jan Schmidt <thaytan@mad.scientist.com>
 
          gst/id3demux/id3v2frames.c: Remove errant break statement, and fix compilation with older GCC.
          Original commit message from CVS:
          expand tabs
 
+2005-12-06 19:48:07 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.h:
+         expand tabs
+         Original commit message from CVS:
+         expand tabs
+
 2005-12-06 19:44:58 +0000  Thomas Vander Stichele <thomas@apestaart.org>
 
        * ChangeLog:
          (gst_videomixer_update_queues):
          Fractional framerates, videomixer.
 
+2005-11-22 17:15:25 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         doh
+         Original commit message from CVS:
+         doh
+
 2005-11-22 17:09:36 +0000  Michael Smith <msmith@xiph.org>
 
          ext/dv/: Fractional framerates for DV.
          * ext/dv/gstdvdemux.h:
          Fractional framerates for DV.
 
+2005-11-22 17:04:38 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         fix up GValueEnum
+         Original commit message from CVS:
+         fix up GValueEnum
+
 2005-11-22 14:44:26 +0000  Tim-Philipp Müller <tim@centricular.net>
 
          gst/autodetect/: Use gst_plugin_feature_list_free() to free feature list and in the case of autovideosink free the li...
          Original commit message from CVS:
          various cosmetic fixes
 
+2005-11-22 12:39:29 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+         Update for gst_tag_setter API changes.
+         Original commit message from CVS:
+         2005-11-22  Andy Wingo  <wingo@pobox.com>
+         * Update for gst_tag_setter API changes.
+
 2005-11-22 12:38:33 +0000  Andy Wingo <wingo@pobox.com>
 
        * ChangeLog:
          * ext/speex/Makefile.am:
          libgsttagedit has been renamed to libgsttag.
 
+2005-11-21 23:50:02 +0000  Edward Hervey <bilboed@bilboed.com>
+
+         ext/lame/gstlame.c: Don't take the stream lock
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_event):
+         Don't take the stream lock
+
 2005-11-21 20:11:59 +0000  Wim Taymans <wim.taymans@gmail.com>
 
          gst/rtsp/rtspconnection.c: Apply patch from Sebastien Cote to fix #319184.
          * examples/stats/mp2ogg.c:
          more typo fixes
 
+2005-10-12 14:30:36 +0000  Stefan Kost <ensonic@users.sourceforge.net>
+
+         renamed GST_FLAGS macros to GST_OBJECT_FLAGS moved bitshift from macro to enum definition
+         Original commit message from CVS:
+         * examples/indexing/indexmpeg.c: (main):
+         * ext/a52dec/gsta52dec.c: (gst_a52dec_init):
+         * ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_is_open),
+         (dvdnavsrc_set_property), (dvdnavsrc_open), (dvdnavsrc_close),
+         (dvdnavsrc_event), (dvdnavsrc_convert), (dvdnavsrc_query):
+         * ext/dvdread/dvdreadsrc.c: (dvdreadsrc_set_property),
+         (dvdreadsrc_srcpad_query), (dvdreadsrc_get),
+         (dvdreadsrc_open_file), (dvdreadsrc_close_file):
+         * ext/dvdread/dvdreadsrc.h:
+         * ext/lame/gstlame.h:
+         * gst/asfdemux/gstasfdemux.c: (gst_asf_demux_init):
+         * gst/asfdemux/gstasfmux.c: (gst_asfmux_init):
+         * gst/iec958/ac3iec.h:
+         * gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_init):
+         * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_init):
+         * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_init):
+         * gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_init):
+         * gst/synaesthesia/gstsynaesthesia.c: (gst_synaesthesia_init):
+         renamed GST_FLAGS macros to GST_OBJECT_FLAGS
+         moved bitshift from macro to enum definition
+
 2005-10-12 14:29:55 +0000  Stefan Kost <ensonic@users.sourceforge.net>
 
          renamed GST_FLAGS macros to GST_OBJECT_FLAGS moved bitshift from macro to enum definition
          * gst/udp/gstudpsrc.c: (gst_udpsrc_set_property):
          Set caps on pads.
 
+2005-09-19 11:07:40 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+         ext/lame/gstlame.c: Set caps on outgoing buffers.
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_chain):
+         Set caps on outgoing buffers.
+
 2005-09-19 11:06:05 +0000  Thomas Vander Stichele <thomas@apestaart.org>
 
        * gst/debug/Makefile.am:
          Original commit message from CVS:
          normal builds shouldn't scan gobjects
 
+2005-09-16 16:04:28 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         clean up further so we don't try to set up five times for a simple pipeline
+         Original commit message from CVS:
+         clean up further so we don't try to set up five times for
+         a simple pipeline
+
 2005-09-16 00:38:50 +0000  Thomas Vander Stichele <thomas@apestaart.org>
 
        * check/Makefile.am:
          2005-09-02  Andy Wingo  <wingo@pobox.com>
          * All plugins updated for element state changes.
 
+2005-09-02 15:43:54 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+         All plugins updated for element state changes.
+         Original commit message from CVS:
+         2005-09-02  Andy Wingo  <wingo@pobox.com>
+         * All plugins updated for element state changes.
+
 2005-09-01 21:24:57 +0000  Thomas Vander Stichele <thomas@apestaart.org>
 
        * ext/aalib/Makefile.am:
          Original commit message from CVS:
          add some files
 
+2005-08-17 19:05:51 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+         configure.ac: Added mpegaudioparse
+         Original commit message from CVS:
+         * configure.ac:
+         Added mpegaudioparse
+         * ext/lame/gstlame.c: (gst_lame_src_getcaps),
+         (gst_lame_src_setcaps), (gst_lame_sink_setcaps),
+         (gst_lame_sink_event), (gst_lame_chain):
+         Some cleanups.
+         Fix memleak.
+         * gst/mpegaudioparse/gstmpegaudioparse.c:
+         (gst_mp3parse_class_init), (gst_mp3parse_init),
+         (gst_mp3parse_chain), (gst_mp3parse_change_state):
+         * gst/mpegaudioparse/gstmpegaudioparse.h:
+         Ported mpegaudioparse
+
+2005-08-16 16:12:15 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+         Fix compile warning.
+         Original commit message from CVS:
+         * configure.ac:
+         * ext/amrnb/amrnbparse.c: (gst_amrnbparse_read_header):
+         Fix compile warning.
+         * ext/lame/gstlame.c: (gst_lame_class_init),
+         (gst_lame_src_getcaps), (gst_lame_src_setcaps),
+         (gst_lame_sink_setcaps), (gst_lame_init), (gst_lame_sink_event),
+         (gst_lame_chain), (gst_lame_change_state):
+         * ext/lame/gstlame.h:
+         Port lame plugin
+
+2005-07-05 10:51:49 +0000  Andy Wingo <wingo@pobox.com>
+
+         Way, way, way too many files: Remove crack comment from the 2000 era.
+         Original commit message from CVS:
+         2005-07-05  Andy Wingo  <wingo@pobox.com>
+         * Way, way, way too many files:
+         Remove crack comment from the 2000 era.
+
+2005-07-05 10:51:41 +0000  Andy Wingo <wingo@pobox.com>
+
+         Way, way, way too many files: Remove crack comment from the 2000 era.
+         Original commit message from CVS:
+         2005-07-05  Andy Wingo  <wingo@pobox.com>
+         * Way, way, way too many files:
+         Remove crack comment from the 2000 era.
+
+2004-10-26 11:36:52 +0000  Iain Holmes <iain@prettypeople.org>
+
+       * ext/lame/gstlame.c:
+         Memory leak fixes
+         Original commit message from CVS:
+         Memory leak fixes
+         Allow level to take mono or stereo audio
+
+2004-08-26 00:32:00 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.*: Added new media support to lame
+         Original commit message from CVS:
+         2004-08-26  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_init), (gst_lame_chain):
+         * ext/lame/gstlame.h:
+         Added new media support to lame
+
+2004-08-19 22:44:50 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         Only enable lame presets if version of lame has presets in API
+         Original commit message from CVS:
+         2004-08-19  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * configure.ac:
+         * ext/lame/Makefile.am:
+         * ext/lame/gstlame.c: (gst_lame_class_init),
+         (gst_lame_set_property), (gst_lame_get_property), (gst_lame_setup):
+         Only enable lame presets if version of lame has presets in API
+
+2004-08-15 13:47:00 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.c: describe the enum values for vbr mode and presets more verbosely
+         Original commit message from CVS:
+         2004-08-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_vbrmode_get_type),
+         (gst_lame_preset_get_type), (gst_lame_class_init):
+         describe the enum values for vbr mode and presets more verbosely
+
+2004-08-13 15:22:49 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.*: add preset property to lame so it can use lame presets
+         Original commit message from CVS:
+         2004-08-13  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_mode_get_type),
+         (gst_lame_quality_get_type), (gst_lame_padding_get_type),
+         (gst_lame_preset_get_type), (gst_lame_class_init), (gst_lame_init),
+         (gst_lame_set_property), (gst_lame_get_property), (gst_lame_setup):
+         * ext/lame/gstlame.h:
+         add preset property to lame so it can use lame presets
+
+2004-08-13 14:55:27 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.c: whoops forgot break, thanks teuf
+         Original commit message from CVS:
+         2004-08-13  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_get_property):
+         whoops forgot break, thanks teuf
+
+2004-08-13 14:41:02 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.*: fix lame's broken vbr stuff, allow it to resample if need be, and also make xing header optional
+         Original commit message from CVS:
+         2004-08-13  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_vbrmode_get_type),
+         (gst_lame_class_init), (gst_lame_src_getcaps),
+         (gst_lame_sink_link), (gst_lame_init), (gst_lame_set_property),
+         (gst_lame_get_property), (gst_lame_setup):
+         * ext/lame/gstlame.h:
+         fix lame's broken vbr stuff, allow it to resample if need be, and also
+         make xing header optional
+
+2004-08-12 17:22:30 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.c: added getcaps function so samplerate doesntget fixated to silly values
+         Original commit message from CVS:
+         2004-08-12  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_src_getcaps), (gst_lame_init):
+         added getcaps function so samplerate doesntget fixated to silly values
+
+2004-08-12 16:44:14 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.c: revert previous fix
+         Original commit message from CVS:
+         2004-08-12  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_src_link):
+         revert previous fix
+
+2004-08-12 16:12:00 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.c: made source pad link function check if sinkpad is ok..fixes the problem where core fixates the ou...
+         Original commit message from CVS:
+         2004-08-12  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_src_link):
+         made source pad link function check if sinkpad is ok..fixes the problem
+         where core fixates the output rate of lame stupidly
+
+2004-08-12 15:48:50 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.c: set default compression ratio paramter to 0.0 so bitrate parameter works :)
+         Original commit message from CVS:
+         2004-08-12  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_class_init), (gst_lame_init):
+         set default compression ratio paramter to 0.0 so bitrate parameter
+         works :)
+
+2004-08-09 09:22:12 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         fix add debugging
+         Original commit message from CVS:
+         fix add debugging
+
+2004-08-02 11:39:17 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         gearing up for release
+         Original commit message from CVS:
+         gearing up for release
+
+2004-08-02 09:16:14 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         add link function. fixes @148986
+         Original commit message from CVS:
+         add link function. fixes @148986
+
+2004-07-28 20:26:31 +0000  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+         ext/lame/gstlame.c: send tag events downstream
+         Original commit message from CVS:
+         2004-07-28  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+         * ext/lame/gstlame.c: (gst_lame_chain): send tag events downstream
+         * ext/shout2/gstshout2.c: (gst_shout2send_protocol_get_type),
+         (gst_shout2send_get_type), (gst_shout2send_set_clock),
+         (gst_shout2send_class_init), (gst_shout2send_init),
+         (set_shout_metadata), (gst_shout2send_set_metadata),
+         (gst_shout2send_chain), (gst_shout2send_set_property),
+         (gst_shout2send_get_property), (gst_shout2send_connect),
+         (gst_shout2send_change_state):
+         * ext/shout2/gstshout2.h:
+         - fix for sending mp3 audio to icecast2 server, if pad link function not
+         called before PAUSED state
+         - added option to use GStreamer clock sync (as opposed to libshout's own sync)
+         - added tagging support for mp3 audio broadcasted
+         * gst/monoscope/gstmonoscope.c: (gst_monoscope_class_init):
+         debug info
+
+2004-07-27 21:51:30 +0000  Steve Lhomme <steve.lhomme@free.fr>
+
+       * gst/audiofx/gststereo.c:
+         fix local includes and 64 bits constants
+         Original commit message from CVS:
+         fix local includes and 64 bits constants
+
+2004-07-26 15:42:18 +0000  Benjamin Otte <otte@gnome.org>
+
+         ext/lame/gstlame.c: add debugging category, add error checks like checking return values of setup calls, make sure it...
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_sink_link), (gst_lame_init),
+         (gst_lame_chain), (gst_lame_setup), (gst_lame_change_state),
+         (plugin_init):
+         add debugging category, add error checks like checking return values
+         of setup calls, make sure it still works after
+         PLAYING=>NULL=>PLAYING, fix encoding of mono streams
+
+2004-06-14 10:58:27 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         sync mp3 caps
+         Original commit message from CVS:
+         sync mp3 caps
+
+2004-06-14 10:52:35 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         add comment
+         Original commit message from CVS:
+         add comment
+
+2004-05-21 23:28:57 +0000  Stéphane Loeuillet <gstreamer@leroutier.net>
+
+       * ext/lame/gstlame.c:
+         second batch : remove ',' at end of enums as they could confuse older gcc, foreign compilers (forte) and gtk-doc (in ...
+         Original commit message from CVS:
+         second batch :
+         remove ',' at end of enums as they could confuse older gcc, foreign compilers (forte) and gtk-doc
+         (in gst-plugins/ext/ this time)
+
+2004-05-09 14:37:15 +0000  Benjamin Otte <otte@gnome.org>
+
+         ext/: \1/Codec, (fixes #142193)
+         Original commit message from CVS:
+         reviewed by Benjamin Otte  <otte@gnome.org>
+         * ext/a52dec/gsta52dec.c:
+         * ext/divx/gstdivxdec.c:
+         * ext/divx/gstdivxenc.c:
+         * ext/dts/gstdtsdec.c: (gst_dtsdec_base_init):
+         * ext/faac/gstfaac.c: (gst_faac_base_init):
+         * ext/faad/gstfaad.c: (gst_faad_base_init):
+         * ext/ivorbis/vorbisfile.c:
+         * ext/lame/gstlame.c:
+         * ext/libfame/gstlibfame.c:
+         * ext/mpeg2enc/gstmpeg2enc.cc:
+         * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init):
+         * ext/sidplay/gstsiddec.cc:
+         * ext/speex/gstspeexdec.c:
+         * ext/speex/gstspeexenc.c:
+         * ext/xvid/gstxviddec.c:
+         * ext/xvid/gstxvidenc.c:
+         correct klasses. Mostly s,Codec/(Audio|Video),\1/Codec,
+         (fixes #142193)
+
+2004-05-07 00:43:50 +0000  Benjamin Otte <otte@gnome.org>
+
+         ext/lame/gstlame.c: simplify
+         Original commit message from CVS:
+         * ext/lame/gstlame.c: (gst_lame_chain):
+         simplify
+         * ext/mad/gstmad.c: (gst_mad_handle_event):
+         fix event leak
+         * gst/typefind/gsttypefindfunctions.c: (mp3_type_find):
+         be able to detect mp3 files < 4096 bytes
+
+2004-05-03 16:46:10 +0000  Stéphane Loeuillet <gstreamer@leroutier.net>
+
+       * ext/lame/gstlame.c:
+         don't trust lame_init to set good values as defaults
+         Original commit message from CVS:
+         don't trust lame_init to set good values as defaults
+
+2004-03-15 19:32:27 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * gst/audiofx/gststereo.c:
+         don't mix tabs and spaces
+         Original commit message from CVS:
+         don't mix tabs and spaces
+
+2004-03-15 19:32:25 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         don't mix tabs and spaces
+         Original commit message from CVS:
+         don't mix tabs and spaces
+
+2004-03-15 16:32:54 +0000  Johan Dahlin <johan@gnome.org>
+
+         *.h: Revert indenting
+         Original commit message from CVS:
+         * *.h: Revert indenting
+
+2004-03-15 16:32:53 +0000  Johan Dahlin <johan@gnome.org>
+
+         *.h: Revert indenting
+         Original commit message from CVS:
+         * *.h: Revert indenting
+
+2004-03-14 22:34:33 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * gst/audiofx/gststereo.c:
+       * gst/audiofx/gststereo.h:
+         gst-indent
+         Original commit message from CVS:
+         gst-indent
+
+2004-03-14 22:34:30 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+       * ext/lame/test-lame.c:
+         gst-indent
+         Original commit message from CVS:
+         gst-indent
+
+2004-02-22 15:14:24 +0000  Benjamin Otte <otte@gnome.org>
+
+         configure.ac: export [_]*{gst,Gst,GST}.* symbols from plugins
+         Original commit message from CVS:
+         2004-02-22  Benjamin Otte  <otte@gnome.org>
+         * configure.ac:
+         export [_]*{gst,Gst,GST}.* symbols from plugins
+         2004-02-22  Christophe Fergeau <teuf@gnome.org>
+         reviewed by: Benjamin Otte  <otte@gnome.org>
+         * ext/lame/gstlame.c: (add_one_tag):
+         * ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list):
+         * ext/vorbis/vorbisenc.c: (gst_vorbisenc_get_tag_value),
+         (gst_vorbisenc_metadata_set1):
+         * gst/tags/gstid3tag.c:
+         * gst/tags/gstvorbistag.c: (gst_vorbis_tag_add):
+         apply fixes from bugs #135042 (lame can't write tags) and #133817
+         (add GST_ALBUM_VOLUME_{COUNT,NUMBER} tags)
+
+2004-02-19 22:19:55 +0000  Benjamin Otte <otte@gnome.org>
+
+         ext/: use gst_tag_list_insert when you want to insert tags
+         Original commit message from CVS:
+         2004-02-19  Benjamin Otte  <otte@gnome.org>
+         * ext/lame/gstlame.c: (gst_lame_chain):
+         * ext/vorbis/vorbisenc.c: (gst_vorbisenc_chain):
+         use gst_tag_list_insert when you want to insert tags
+
+2004-02-02 17:23:32 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         change NULL to (NULL) for GST_ELEMENT_ERROR
+         Original commit message from CVS:
+         change NULL to (NULL) for GST_ELEMENT_ERROR
+         Make sure errors end with "."
+
+2004-01-29 23:20:44 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         GST_ELEMENT_ERROR
+         Original commit message from CVS:
+         GST_ELEMENT_ERROR
+
+2004-01-18 21:46:58 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         use new error signal and classification
+         Original commit message from CVS:
+         use new error signal and classification
+
+2003-12-22 01:47:08 +0000  David Schleef <ds@schleef.org>
+
+       * ext/lame/gstlame.c:
+         Merge CAPS branch
+         Original commit message from CVS:
+         Merge CAPS branch
+
+2003-12-07 14:47:09 +0000  Christophe Fergeau <teuf@gnome.org>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         Uses new tagging framework
+         Original commit message from CVS:
+         Uses new tagging framework
+
+2003-12-04 10:37:38 +0000  Andy Wingo <wingo@pobox.com>
+
+       * gst/audiofx/gststereo.c:
+         remove copyright field from plugins
+         Original commit message from CVS:
+         remove copyright field from plugins
+
+2003-12-04 10:37:35 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+         remove copyright field from plugins
+         Original commit message from CVS:
+         remove copyright field from plugins
+
+2003-12-02 02:28:12 +0000  David Schleef <ds@schleef.org>
+
+       * ext/lame/test-lame.c:
+         change _connect to _link
+         Original commit message from CVS:
+         change _connect to _link
+
+2003-11-16 22:02:23 +0000  Leif Johnson <leif@ambient.2y.net>
+
+       * gst/audiofx/gststereo.c:
+         + checking in plugin category changes
+         Original commit message from CVS:
+         + checking in plugin category changes
+
+2003-11-07 12:47:02 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * gst/audiofx/gststereo.h:
+         Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes fro...
+         Original commit message from CVS:
+         Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes from several source files
+
+2003-11-07 12:46:51 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * ext/lame/gstlame.h:
+         Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes fro...
+         Original commit message from CVS:
+         Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes from several source files
+
+2003-11-02 22:34:11 +0000  Benjamin Otte <otte@gnome.org>
+
+       * gst/audiofx/gststereo.c:
+         fix for new plugin system
+         Original commit message from CVS:
+         fix for new plugin system
+
+2003-11-02 00:13:26 +0000  Iain Holmes <iain@prettypeople.org>
+
+       * ext/lame/gstlame.c:
+         Fixed lame too
+         Original commit message from CVS:
+         Fixed lame too
+
+2003-10-09 09:04:23 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * ext/lame/gstlame.c:
+         Fix typo in Andy's commit
+         Original commit message from CVS:
+         Fix typo in Andy's commit
+
+2003-10-08 16:08:19 +0000  Andy Wingo <wingo@pobox.com>
+
+       * gst/audiofx/gststereo.c:
+         /GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
+         Original commit message from CVS:
+         /GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
+
+2003-10-08 16:08:10 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+         /GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
+         Original commit message from CVS:
+         /GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
+
+2003-09-30 19:48:39 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * ext/lame/gstlame.c:
+         Input and output samplerate are *not* necessarily the same in lame. This fixes the output caps
+         Original commit message from CVS:
+         Input and output samplerate are *not* necessarily the same in lame. This fixes the output caps
+
+2003-09-16 10:00:00 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         reverting error patch before making a branch.
+         Original commit message from CVS:
+         reverting error patch before making a branch.
+
+2003-09-15 01:08:38 +0000  Benjamin Otte <otte@gnome.org>
+
+       * ext/lame/gstlame.c:
+         converted gst_element_error to new format in ext/ - gettext pending
+         Original commit message from CVS:
+         converted gst_element_error to new format in ext/ - gettext pending
+
+2003-09-12 11:35:23 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * ext/lame/gstlame.c:
+         Fix tiny caps error in lame caps - mpegversion(1) was missing
+         Original commit message from CVS:
+         Fix tiny caps error in lame caps - mpegversion(1) was missing
+
+2003-08-10 00:01:58 +0000  David Schleef <ds@schleef.org>
+
+       * ext/lame/Makefile.am:
+         Remove redundant plugindir definition
+         Original commit message from CVS:
+         Remove redundant plugindir definition
+
+2003-07-10 15:39:11 +0000  Christian Schaller <uraeus@gnome.org>
+
+       * ext/lame/README:
+       * ext/lame/gstlame.c:
+         fix license field of lame plugin to say LGPL, lame is LGPL. Add Readme with info
+         Original commit message from CVS:
+         fix license field of lame plugin to say LGPL, lame is LGPL. Add Readme with info
+
+2003-07-06 20:49:50 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * ext/lame/gstlame.c:
+         New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as descri...
+         Original commit message from CVS:
+         New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as described in the previous commit's document. Note: some plugins will break, some pipelines will break, expect HEAD to be broken or at least not 100% working for a few days, but don't forget to report bugs
+
+2003-07-05 22:48:58 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         patch from hadess, modified
+         Original commit message from CVS:
+         patch from hadess, modified
+
+2003-06-29 19:46:13 +0000  Benjamin Otte <otte@gnome.org>
+
+       * gst/audiofx/gststereo.c:
+         compatibility fix for new GST_DEBUG stuff.
+         Original commit message from CVS:
+         compatibility fix for new GST_DEBUG stuff.
+         Includes fixes for missing includes for config.h and unistd.h
+         I only ensured for plugins I can build that they work, so if some of them are still broken, you gotta fix them yourselves unfortunately.
+
+2003-06-29 19:46:09 +0000  Benjamin Otte <otte@gnome.org>
+
+       * ext/lame/gstlame.c:
+         compatibility fix for new GST_DEBUG stuff.
+         Original commit message from CVS:
+         compatibility fix for new GST_DEBUG stuff.
+         Includes fixes for missing includes for config.h and unistd.h
+         I only ensured for plugins I can build that they work, so if some of them are still broken, you gotta fix them yourselves unfortunately.
+
+2003-06-07 00:34:51 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         Another duration patch from Joshua (slightly modified by me)
+         Original commit message from CVS:
+         Another duration patch from Joshua (slightly modified by me)
+
+2003-05-29 19:32:39 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * ext/lame/gstlame.h:
+         Fix build prob
+         Original commit message from CVS:
+         Fix build prob
+
+2003-05-29 12:41:42 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+         - copy offset from input buffer
+         Original commit message from CVS:
+         - copy offset from input buffer
+
+2003-05-13 12:28:16 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         Get timestamping somewhat better
+         Original commit message from CVS:
+         Get timestamping somewhat better
+
+2003-05-12 20:08:17 +0000  Zeeshan Ali <zeenix@gmail.com>
+
+       * ext/lame/gstlame.c:
+         Hacked lame to make it copy the timestamp on the source buffer to the sink buffer
+         Original commit message from CVS:
+         Hacked lame to make it copy the timestamp on the source buffer to the sink buffer
+
+2003-01-10 13:38:27 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         PadConnect -> PadLink
+         Original commit message from CVS:
+         PadConnect -> PadLink
+
+2003-01-10 10:22:24 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         another batch of connect->link fixes please let me know about issues and please refrain of making them yourself, so t...
+         Original commit message from CVS:
+         another batch of connect->link fixes
+         please let me know about issues
+         and please refrain of making them yourself, so that I don't spend double
+         the time resolving conflicts
+
+2002-12-08 17:20:44 +0000  Iain Holmes <iain@prettypeople.org>
+
+       * ext/lame/gstlame.c:
+         Replace audio/mp3 with audio/x-mp3 and audio/x-flac with application/x-flac
+         Original commit message from CVS:
+         Replace audio/mp3 with audio/x-mp3 and audio/x-flac with application/x-flac
+
+2002-12-08 14:50:04 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/Makefile.am:
+         parallel install fixes
+         Original commit message from CVS:
+         parallel install fixes
+
+2002-12-08 02:44:00 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+         cleanups
+         Original commit message from CVS:
+         cleanups
+
+2002-11-20 21:02:40 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+         Remove redundant properties.
+         Original commit message from CVS:
+         Remove redundant properties.
+
+2002-11-02 05:39:21 +0000  David I. Lehn <dlehn@users.sourceforge.net>
+
+       * ext/lame/Makefile.am:
+         use AM_CFLAGS instead of CFLAGS
+         Original commit message from CVS:
+         use AM_CFLAGS instead of CFLAGS
+
+2002-10-02 08:04:00 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         api change
+         Original commit message from CVS:
+         api change
+
+2002-09-18 19:02:52 +0000  Christian Schaller <uraeus@gnome.org>
+
+       * gst/audiofx/gststereo.c:
+         plugins part of license field patch
+         Original commit message from CVS:
+         plugins part of license field patch
+
+2002-09-18 19:02:46 +0000  Christian Schaller <uraeus@gnome.org>
+
+       * ext/lame/gstlame.c:
+         plugins part of license field patch
+         Original commit message from CVS:
+         plugins part of license field patch
+
+2002-09-10 09:31:38 +0000  Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+       * ext/lame/test-lame.c:
+         This updates all plugins to the new API for gst_pad_try_set_caps
+         Original commit message from CVS:
+         This updates all plugins to the new API for gst_pad_try_set_caps
+
+2002-09-01 15:40:39 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         small updates
+         Original commit message from CVS:
+         small updates
+
+2002-07-08 19:32:49 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+         unref event
+         Original commit message from CVS:
+         unref event
+
+2002-07-07 14:17:00 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+         Don't free uninitialized pointers
+         Original commit message from CVS:
+         Don't free uninitialized pointers
+
+2002-07-07 14:06:38 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+         Lame should accept events even when not negotiated yet.
+         Original commit message from CVS:
+         Lame should accept events even when not negotiated yet.
+
+2002-06-08 09:26:09 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         reorder
+         Original commit message from CVS:
+         reorder
+
+2002-04-20 21:42:51 +0000  Andy Wingo <wingo@pobox.com>
+
+       * gst/audiofx/gststereo.c:
+         a hack to work around intltool's brokenness a current check for mpeg2dec details->klass reorganizations an element br...
+         Original commit message from CVS:
+         * a hack to work around intltool's brokenness
+         * a current check for mpeg2dec
+         * details->klass reorganizations
+         * an element browser that uses details->klass
+         * separated cdxa parse out from the avi directory
+
+2002-04-11 20:42:26 +0000  Andy Wingo <wingo@pobox.com>
+
+       * gst/audiofx/gststereo.c:
+         GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE same with *factory and typefind.
+         Original commit message from CVS:
+         GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE
+         same with *factory and typefind.
+         also, some -Werror fixes.
+
+2002-04-11 20:42:25 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/test-lame.c:
+         GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE same with *factory and typefind.
+         Original commit message from CVS:
+         GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE
+         same with *factory and typefind.
+         also, some -Werror fixes.
+
+2002-03-30 17:06:26 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/test-lame.c:
+         Changed to the new props API
+         Original commit message from CVS:
+         Changed to the new props API
+         Other small tuff.
+
+2002-03-27 04:02:38 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+         update g_value stuff to match property types
+         Original commit message from CVS:
+         update g_value stuff to match property types
+
+2002-03-24 22:07:03 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+         filter newlines out of GST_DEBUG statements to reflect new core behavior fixes to adder's caps, again
+         Original commit message from CVS:
+         * filter newlines out of GST_DEBUG statements to reflect new core behavior
+         * fixes to adder's caps, again
+
+2002-03-20 21:45:04 +0000  Andy Wingo <wingo@pobox.com>
+
+       * gst/audiofx/gststereo.c:
+       * gst/audiofx/gststereo.h:
+         s/Gnome-Streamer/GStreamer/
+         Original commit message from CVS:
+         s/Gnome-Streamer/GStreamer/
+
+2002-03-20 21:45:03 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         s/Gnome-Streamer/GStreamer/
+         Original commit message from CVS:
+         s/Gnome-Streamer/GStreamer/
+
+2002-03-19 17:14:57 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+         fix compile error (untested)
+         Original commit message from CVS:
+         fix compile error (untested)
+
+2002-03-19 04:10:06 +0000  Andy Wingo <wingo@pobox.com>
+
+       * gst/audiofx/gststereo.c:
+         removal of //-style comments don't link plugins to core libs -- the versioning is done internally to the plugins with...
+         Original commit message from CVS:
+         * removal of //-style comments
+         * don't link plugins to core libs -- the versioning is done internally to the plugins with the plugin_info struct,
+         and symbol resolution is lazy, so we can always know if a plugin can be loaded by the plugin_info data. in theory.
+
+2002-03-19 04:10:05 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/Makefile.am:
+       * ext/lame/gstlame.c:
+         removal of //-style comments don't link plugins to core libs -- the versioning is done internally to the plugins with...
+         Original commit message from CVS:
+         * removal of //-style comments
+         * don't link plugins to core libs -- the versioning is done internally to the plugins with the plugin_info struct,
+         and symbol resolution is lazy, so we can always know if a plugin can be loaded by the plugin_info data. in theory.
+
+2002-03-19 01:39:42 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/Makefile.am:
+         s/@GST_PLUGIN_LDFLAGS@/$(GST_PLUGIN_LDFLAGS)/ @-substitued variables variables are defined as make variables automagi...
+         Original commit message from CVS:
+         s/@GST_PLUGIN_LDFLAGS@/$(GST_PLUGIN_LDFLAGS)/
+         @-substitued variables variables are defined as make variables automagically,
+         and this gives the user the freedom to say make GST_PLUGIN_LDFLAGS=-myflag
+
+2002-03-03 00:53:24 +0000  Andy Wingo <wingo@pobox.com>
+
+       * ext/lame/gstlame.c:
+         get up-to-date with the gst_caps_debug api improved capsnego in mad improved capsnego in adder improved capsnego in i...
+         Original commit message from CVS:
+         * get up-to-date with the gst_caps_debug api
+         * improved capsnego in mad
+         * improved capsnego in adder
+         * improved capsnego in intfloat plugins
+         * unbroke capsnego in stereomono plugins
+         * fix cothread stack allocation within the main thread in new cothreads
+
+2002-02-21 17:33:59 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/Makefile.am:
+         uncomment lame test until we can get the register to work
+         Original commit message from CVS:
+         uncomment lame test until we can get the register to work
+
+2002-02-21 17:20:35 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         use gst-debuginfo.m4 macro so plugins are actually compiled with debug info some more debug output for lame
+         Original commit message from CVS:
+         * use gst-debuginfo.m4 macro so plugins are actually compiled with
+         debug info
+         * some more debug output for lame
+
+2002-02-21 14:04:02 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         on sink connect, check if the current pad is compatible with the given caps cleaned up debug output change pad templa...
+         Original commit message from CVS:
+         * on sink connect, check if the current pad is compatible with the given
+         caps
+         * cleaned up debug output
+         * change pad template to only accept allowed sample rates
+         if these changes are considered ok by others then the same should be
+         applied to other encoding plugins (notably the compatibility check)
+
+2002-02-19 20:49:52 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/test-lame.c:
+         ok, this works
+         Original commit message from CVS:
+         ok, this works
+
+2002-02-19 20:35:42 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/test-lame.c:
+         Always bring the elements to READY before trying to do capsnego. fix the caps as lame doesn't accept law==1
+         Original commit message from CVS:
+         Always bring the elements to READY before trying to do capsnego.
+         fix the caps as lame doesn't accept law==1
+
+2002-02-19 20:19:36 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/test-lame.c:
+         still does not work ;(
+         Original commit message from CVS:
+         still does not work ;(
+
+2002-02-19 18:28:05 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/Makefile.am:
+       * ext/lame/test-lame.c:
+         adding a test for lame stuff
+         Original commit message from CVS:
+         adding a test for lame stuff
+
+2002-02-19 17:29:55 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+         Added event handling.
+         Original commit message from CVS:
+         Added event handling.
+         Fix flush
+         Fix state change.
+         Convert to gobject deep_notify
+
+2002-02-19 12:55:16 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.c:
+         somebody help me fix lame ;)
+         Original commit message from CVS:
+         somebody help me fix lame ;)
+         I commented out the state change function because it is called before lame has the right caps.
+         Is the state change function still necessary ?
+         in any case, at least now lame actually listens to osssrc re: rate and channels
+
+2002-01-31 17:08:46 +0000  David I. Lehn <dlehn@users.sourceforge.net>
+
+       * ext/lame/gstlame.h:
+         Revert lame include dir change.  Upstream uses $prefix/include/lame/lame.h.
+         Original commit message from CVS:
+         Revert lame include dir change.  Upstream uses $prefix/include/lame/lame.h.
+
+2002-01-30 11:25:58 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/gstlame.h:
+         I checked lame packages and source code and they seem to want lame.h in prefix/include/lame.h so I fixed stuff accord...
+         Original commit message from CVS:
+         I checked lame packages and source code and they seem to want lame.h in
+         prefix/include/lame.h
+         so I fixed stuff accordingly.
+         Do any systems have lame in include/lame/lame.h ?
+         If so, mail me and we'll work it out.
+
+2002-01-18 02:05:25 +0000  Wrobell <wrobell@ite.pl>
+
+       * ext/lame/Makefile.am:
+         - plugins are built without versioning info
+         Original commit message from CVS:
+         - plugins are built without versioning info
+
+2002-01-13 22:27:24 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+         Bring the plugins in sync with the new core capsnego system.
+         Original commit message from CVS:
+         Bring the plugins in sync with the new core capsnego system.
+         Added some features, enhancements...
+
+2002-01-12 03:34:26 +0000  David I. Lehn <dlehn@users.sourceforge.net>
+
+       * ext/lame/Makefile.am:
+         s/filter/plugin/ link plugins to GST_LIBS rearrange rules to a common format
+         Original commit message from CVS:
+         * s/filter/plugin/
+         * link plugins to GST_LIBS
+         * rearrange rules to a common format
+
+2001-12-22 23:26:33 +0000  Andy Wingo <wingo@pobox.com>
+
+       * gst/audiofx/gststereo.c:
+       * gst/audiofx/gststereo.h:
+         Initial revision
+         Original commit message from CVS:
+         Initial revision
+
+2001-12-21 12:47:09 +0000  Wim Taymans <wim.taymans@gmail.com>
+
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         Lame cleanup
+         Original commit message from CVS:
+         Lame cleanup
+         Added EOS, flush, error reporting etc.
+
+2001-12-20 23:48:55 +0000  Thomas Vander Stichele <thomas@apestaart.org>
+
+       * ext/lame/Makefile.am:
+       * ext/lame/gstlame.c:
+       * ext/lame/gstlame.h:
+         adding lame
+         Original commit message from CVS:
+         adding lame
+
 2001-12-17 18:37:01 +0000  Thomas Vander Stichele <thomas@apestaart.org>
 
          building up speed