=== release 1.18.3 ===

2021-01-13 21:08:50 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.18.3

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/851>

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/847>

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/847>

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/846>

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/843>

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/840>

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/840>

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/840>

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/840>

2020-12-06 23:56:49 +0000  Tim-Philipp Müller <tim@centricular.com>

	* docs/gst_plugins_cache.json:
	* meson.build:
	  Back to development

=== release 1.18.2 ===

2020-12-06 13:22:58 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* docs/gst_plugins_cache.json:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.18.2

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/829>

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/826>

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/800>

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/821>

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/819>

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/814>

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/814>

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/803>

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/799>

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/799>

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/799>

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/799>

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/799>

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/799>

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/799>

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/793>

2020-10-27 12:34:19 +0000  Tim-Philipp Müller <tim@centricular.com>

	* docs/gst_plugins_cache.json:
	* meson.build:
	  Back to development

=== release 1.18.1 ===

2020-10-26 11:12:10 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* docs/gst_plugins_cache.json:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.18.1

2020-10-23 10:32:18 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  Revert "v4l2object: Only offer inactive pools and if needed"
	  This reverts commit 85b9893e963ea5d342289e318daeefba35ff4a07.
	  This change caused a regression reported in #796. Basically the pool get
	  deactivated by basesrc and the encoder does not recover. Recovering with
	  current design would cause insertion of an unwanted keyframe.
	  This is being reverted in 1.18 only, a proper solution is wanted for 1.20.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/785>

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/783>

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/781>

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/780>

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/765>

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/765>

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/764>

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/763>

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/762>

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/761>

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/760>

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/759>

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/759>

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/758>

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/756>

2020-09-08 17:44:17 +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
