summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2021-09-23 01:33:39 +0100
committerTim-Philipp Müller <tim@centricular.com>2021-09-23 01:33:41 +0100
commit20bbeb5e37666c53c254c7b08470ad8a00d97630 (patch)
tree713e90a8507c3543060e09db2f6a8b89086fb332
parent2d23bccf47bf48a73d9a1c220e0d0c410fee0e83 (diff)
downloadgstreamer-plugins-good-master.tar.gz
-rw-r--r--ChangeLog1033
-rw-r--r--NEWS25
-rw-r--r--RELEASE2
-rw-r--r--docs/gst_plugins_cache.json8
-rw-r--r--gst-plugins-good.doap10
-rw-r--r--meson.build2
6 files changed, 1063 insertions, 17 deletions
diff --git a/ChangeLog b/ChangeLog
index 8f54dc5c4..f997cc95b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,1035 @@
+=== 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>
@@ -6,6 +1038,7 @@
* NEWS:
* README:
* RELEASE:
+ * docs/gst_plugins_cache.json:
* gst-plugins-good.doap:
* meson.build:
Release 1.19.1
diff --git a/NEWS b/NEWS
index cc6c3b4a8..0e581c39b 100644
--- a/NEWS
+++ b/NEWS
@@ -1,15 +1,15 @@
GStreamer 1.20 Release Notes
GStreamer 1.20 has not been released yet. It is scheduled for release
-around July 2021.
+around October/November 2021.
1.19.x is the unstable development version that is being developed in
-the git master branch and which will eventually result in 1.20, and
-1.19.1 is the current development release in that series
+the git main branch and which will eventually result in 1.20, and 1.19.2
+is the current development release in that series
-It is expected that feature freeze will be around June/July 2021,
-followed by several 1.19 pre-releases and the new 1.20 stable release
-around July 2021.
+It is expected that feature freeze will be in early October 2021,
+followed by one or two 1.19.9x pre-releases and the new 1.20 stable
+release around October/November 2021.
1.20 will be backwards-compatible to the stable 1.18, 1.16, 1.14, 1.12,
1.10, 1.8, 1.6,, 1.4, 1.2 and 1.0 release series.
@@ -17,7 +17,7 @@ around July 2021.
See https://gstreamer.freedesktop.org/releases/1.20/ for the latest
version of this document.
-Last updated: Sunday 30 May 2021, 16:00 UTC (log)
+Last updated: Wednesday 22 September 2021, 18:00 UTC (log)
Introduction
@@ -247,6 +247,10 @@ Documentation improvements
Possibly Breaking Changes
- this section will be filled in in due course
+- MPEG-TS SCTE-35 API changes (FIXME: flesh out)
+- gst_parse_launch() and friends now error out on non-existing
+ properties on top-level bins where they would silently fail and
+ ignore those before.
Known Issues
@@ -274,16 +278,15 @@ the git 1.20 branch, which will be a stable branch.
1.20.0
-1.20.0 is scheduled to be released around July 2021.
+1.20.0 is scheduled to be released around October/November 2021.
Schedule for 1.22
Our next major feature release will be 1.22, and 1.21 will be the
unstable development version leading up to the stable 1.22 release. The
-development of 1.21/1.22 will happen in the git master branch.
+development of 1.21/1.22 will happen in the git main branch.
-The plan for the 1.22 development cycle is yet to be confirmed, but it
-is hoped that feature freeze will take place some time in December 2021.
+The plan for the 1.22 development cycle is yet to be confirmed.
1.22 will be backwards-compatible to the stable 1.20, 1.18, 1.16, 1.14,
1.12, 1.10, 1.8, 1.6, 1.4, 1.2 and 1.0 release series.
diff --git a/RELEASE b/RELEASE
index 43016107f..02e7d4a91 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,4 +1,4 @@
-This is GStreamer gst-plugins-good 1.19.1.
+This is GStreamer gst-plugins-good 1.19.2.
GStreamer 1.19 is the development branch leading up to the next major
stable version which will be 1.20.
diff --git a/docs/gst_plugins_cache.json b/docs/gst_plugins_cache.json
index 96b6ca3ce..1d9e18d14 100644
--- a/docs/gst_plugins_cache.json
+++ b/docs/gst_plugins_cache.json
@@ -6607,7 +6607,7 @@
"construct": false,
"construct-only": false,
"controllable": false,
- "default": "GStreamer 1.19.1.1 FLV muxer",
+ "default": "GStreamer 1.19.2 FLV muxer",
"mutable": "null",
"readable": true,
"type": "gchararray",
@@ -6619,7 +6619,7 @@
"construct": false,
"construct-only": false,
"controllable": false,
- "default": "GStreamer 1.19.1.1 FLV muxer",
+ "default": "GStreamer 1.19.2 FLV muxer",
"mutable": "null",
"readable": true,
"type": "gchararray",
@@ -20224,7 +20224,7 @@
"construct": false,
"construct-only": false,
"controllable": false,
- "default": "GStreamer/1.19.1.1",
+ "default": "GStreamer/1.19.2",
"mutable": "null",
"readable": true,
"type": "gchararray",
@@ -22181,7 +22181,7 @@
"construct": false,
"construct-only": false,
"controllable": false,
- "default": "GStreamer souphttpsrc 1.19.1.1 ",
+ "default": "GStreamer souphttpsrc 1.19.2 ",
"mutable": "null",
"readable": true,
"type": "gchararray",
diff --git a/gst-plugins-good.doap b/gst-plugins-good.doap
index ba8918ce9..6111bac03 100644
--- a/gst-plugins-good.doap
+++ b/gst-plugins-good.doap
@@ -34,6 +34,16 @@ the plug-in code, LGPL or LGPL-compatible for the supporting library).
<release>
<Version>
+ <revision>1.19.2</revision>
+ <branch>master</branch>
+ <name></name>
+ <created>2021-09-23</created>
+ <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.19.2.tar.xz" />
+ </Version>
+ </release>
+
+ <release>
+ <Version>
<revision>1.19.1</revision>
<branch>master</branch>
<name></name>
diff --git a/meson.build b/meson.build
index 1f433f05a..f8e129933 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@
project('gst-plugins-good', 'c',
- version : '1.19.1.1',
+ version : '1.19.2',
meson_version : '>= 0.54',
default_options : [ 'warning_level=1',
'buildtype=debugoptimized' ])