=== release 1.16.1 ===

2019-09-23 11:09:38 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* configure.ac:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.16.1

2019-09-23 11:09:38 +0100  Tim-Philipp Müller <tim@centricular.com>

	* docs/plugins/gst-plugins-good-plugins.args:
	* docs/plugins/inspect/plugin-1394.xml:
	* docs/plugins/inspect/plugin-aasink.xml:
	* docs/plugins/inspect/plugin-alaw.xml:
	* docs/plugins/inspect/plugin-alpha.xml:
	* docs/plugins/inspect/plugin-alphacolor.xml:
	* docs/plugins/inspect/plugin-apetag.xml:
	* docs/plugins/inspect/plugin-audiofx.xml:
	* docs/plugins/inspect/plugin-audioparsers.xml:
	* docs/plugins/inspect/plugin-auparse.xml:
	* docs/plugins/inspect/plugin-autodetect.xml:
	* docs/plugins/inspect/plugin-avi.xml:
	* docs/plugins/inspect/plugin-cacasink.xml:
	* docs/plugins/inspect/plugin-cairo.xml:
	* docs/plugins/inspect/plugin-cutter.xml:
	* docs/plugins/inspect/plugin-debug.xml:
	* docs/plugins/inspect/plugin-deinterlace.xml:
	* docs/plugins/inspect/plugin-dtmf.xml:
	* docs/plugins/inspect/plugin-dv.xml:
	* docs/plugins/inspect/plugin-effectv.xml:
	* docs/plugins/inspect/plugin-equalizer.xml:
	* docs/plugins/inspect/plugin-flac.xml:
	* docs/plugins/inspect/plugin-flv.xml:
	* docs/plugins/inspect/plugin-flxdec.xml:
	* docs/plugins/inspect/plugin-gdkpixbuf.xml:
	* docs/plugins/inspect/plugin-goom.xml:
	* docs/plugins/inspect/plugin-goom2k1.xml:
	* docs/plugins/inspect/plugin-gtk.xml:
	* docs/plugins/inspect/plugin-icydemux.xml:
	* docs/plugins/inspect/plugin-id3demux.xml:
	* docs/plugins/inspect/plugin-imagefreeze.xml:
	* docs/plugins/inspect/plugin-interleave.xml:
	* docs/plugins/inspect/plugin-isomp4.xml:
	* docs/plugins/inspect/plugin-jack.xml:
	* docs/plugins/inspect/plugin-jpeg.xml:
	* docs/plugins/inspect/plugin-lame.xml:
	* docs/plugins/inspect/plugin-level.xml:
	* docs/plugins/inspect/plugin-matroska.xml:
	* docs/plugins/inspect/plugin-mpg123.xml:
	* docs/plugins/inspect/plugin-mulaw.xml:
	* docs/plugins/inspect/plugin-multifile.xml:
	* docs/plugins/inspect/plugin-multipart.xml:
	* docs/plugins/inspect/plugin-navigationtest.xml:
	* docs/plugins/inspect/plugin-oss4.xml:
	* docs/plugins/inspect/plugin-ossaudio.xml:
	* docs/plugins/inspect/plugin-png.xml:
	* docs/plugins/inspect/plugin-pulseaudio.xml:
	* docs/plugins/inspect/plugin-qmlgl.xml:
	* docs/plugins/inspect/plugin-replaygain.xml:
	* docs/plugins/inspect/plugin-rtp.xml:
	* docs/plugins/inspect/plugin-rtpmanager.xml:
	* docs/plugins/inspect/plugin-rtsp.xml:
	* docs/plugins/inspect/plugin-shapewipe.xml:
	* docs/plugins/inspect/plugin-shout2.xml:
	* docs/plugins/inspect/plugin-smpte.xml:
	* docs/plugins/inspect/plugin-soup.xml:
	* docs/plugins/inspect/plugin-spectrum.xml:
	* docs/plugins/inspect/plugin-speex.xml:
	* docs/plugins/inspect/plugin-taglib.xml:
	* docs/plugins/inspect/plugin-twolame.xml:
	* docs/plugins/inspect/plugin-udp.xml:
	* docs/plugins/inspect/plugin-video4linux2.xml:
	* docs/plugins/inspect/plugin-videobox.xml:
	* docs/plugins/inspect/plugin-videocrop.xml:
	* docs/plugins/inspect/plugin-videofilter.xml:
	* docs/plugins/inspect/plugin-videomixer.xml:
	* docs/plugins/inspect/plugin-vpx.xml:
	* docs/plugins/inspect/plugin-wavenc.xml:
	* docs/plugins/inspect/plugin-wavpack.xml:
	* docs/plugins/inspect/plugin-wavparse.xml:
	* docs/plugins/inspect/plugin-ximagesrc.xml:
	* docs/plugins/inspect/plugin-y4menc.xml:
	  Update docs

2019-09-23 11:09:37 +0100  Tim-Philipp Müller <tim@centricular.com>

	* po/fr.po:
	* po/nb.po:
	  Update translations

2019-09-08 20:43:17 -0400  Doug Nazar <nazard@nazar.ca>

	* gst/alpha/gstalpha.c:
	  alpha: Fix one_over_kc calculation
	  On arm/aarch64, converting from float directly to unsigned int uses
	  a different opcode and negative numbers result in 0. Cast to
	  signed int first.

2019-08-07 18:29:25 -0400  Mathieu Duponchelle <mathieu@centricular.com>

	* tests/check/gst-plugins-good.supp:
	  valgrind: suppress Cond error coming from gnutls
	  taken from https://salsa.debian.org/debian/flatpak/commit/fb4a8dda211c4bc036781f2b0d706266e95ce068

2019-06-04 13:39:00 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* tests/check/gst-plugins-good.supp:
	  supp: Ignore leaks caused by shout/sethostent
	  sethostent() seems to be using a global state and we endup with leaks from
	  that API when called through shout_init(). We had the option to only
	  ignore the shout case, but the impression is that if we have shout and
	  another sethostend user, as it's a global state, we may endup with a
	  different stack trace for the same leak. So in the end, we just ignore
	  memory allocated by sethostent in general.

2019-08-22 00:18:51 +0900  Seungha Yang <seungha.yang@navercorp.com>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: Fix incompatible type build warning
	  gstsouphttpsrc.c(2191): warning C4133:
	  '=': incompatible types - from 'guint (__cdecl *)(GType)' to 'GstURIType (__cdecl *)(GType)'

2019-05-24 10:31:39 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtpmanager/gstrtpjitterbuffer.c:
	  rtpjitterbuffer: max-dropout-time gets cast to int32
	  So any value over MAXINT32 gets considered as negative and is silently ignored.

2019-06-15 02:00:43 +1000  Jan Schmidt <jan@centricular.com>

	* gst/rtpmanager/rtpjitterbuffer.c:
	  rtpjitterbuffer: Clear clock master before unreffing
	  Make sure to clear any master clock on the media_clock
	  before unreffing it to release the timer callback that's
	  updating the clock and keeping it reffed.

2019-08-01 15:02:23 +0900  Seungha Yang <seungha.yang@navercorp.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Use empty-array safe way to cleanup GPtrArray
	  Fix assertion fail
	  GLib-CRITICAL **: g_ptr_array_remove_range: assertion 'index_ < rarray->len' failed

2019-08-06 22:27:40 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/ext/types-compat.h:
	  v4l2: Fix type compatibility issue with glibc 2.30
	  From now on, we will use linux/types.h on Linux, and use typedef of the
	  various flavour of BSD.
	  Fixes #635

2019-07-31 21:55:16 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/rtpmanager/gstrtpfunnel.c:
	  rtpfunnel: forward correct segment when switching pad
	  Forwarding a single segment event from the pad that first gets
	  chained is incorrect: when that first event was sent by an element
	  such as x264enc, with its offset start, we end pushing out of segment
	  buffers for the other pad(s).
	  Instead, everytime the active pad changes, forward the appropriate
	  segment event.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1028

2019-07-25 21:21:26 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>

	* ext/gtk/gstgtkglsink.c:
	* ext/gtk/gstgtkglsink.h:
	  gtkglsink: fix crash when widget is resized after element destruction
	  Prevent _size_changed_cb() to be called after gtkglsink has been finalized.
	  Fix #632

2019-07-25 15:08:54 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/jpeg/gstjpegdec.c:
	  jpegdec: Don't dereference NULL input state if we have no caps in TIME segments
	  Simply assume that the JPEG frame is not going to be interlaced instead
	  of crashing.

2019-07-22 10:28:50 +0200  Knut Andre Tidemann <knutandre.tidemann@zenitel.com>

	* gst/rtp/gstrtpopuspay.c:
	  rtp: opuspay: fix memory leak in gst_rtp_opus_pay_setcaps.
	  The src caps were never dereferenced, causing a memory leak.

2018-06-13 14:55:29 -0700  Song Bing <bing.song@nxp.com>

	* sys/v4l2/gstv4l2videodec.c:
	  v4l2videodec: Fix drain() function return type
	  Return right type for drain() function.

2019-05-21 15:25:03 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/rtpmanager/gstrtpssrcdemux.c:
	* tests/check/elements/rtpssrcdemux.c:
	  rtpssrcdemux: Avoid taking streamlock out-of-band
	  In this change we now protect the internal srcpads list using the
	  stream lock and limit usage of the internal stream lock to
	  preventing data flowing on the other src pad type while creating
	  and signalling the new pad.
	  This fixes a deadlock with RTPBin shutdown lock. These two locks would
	  end up being taken in two different order, which caused a deadlock. More
	  generally, we should not rely on a streamlock when handling out-of-band
	  data, so as a side effect, we should not take a stream lock when
	  iterating internal links.

2019-05-30 11:13:07 +0900  Damian Hobson-Garcia <dhobsong@igel.co.jp>

	* sys/v4l2/gstv4l2bufferpool.c:
	  v4l2bufferpool: return TRUE when buffer pool orphaning succeeds
	  When trying to orphan a buffer pool, successfully return and unref
	  the pool when the pool is either successfully stopped or orphaned.
	  Indicate failure and leave the pool untouched otherwise.

2019-05-30 13:12:31 +0900  Damian Hobson-Garcia <dhobsong@igel.co.jp>

	* sys/v4l2/gstv4l2bufferpool.c:
	  v4l2bufferpool: Free orphaned allocator resources when buffers are released
	  Allocator resources cannot be freed when a buffer pool is orphaned
	  while its buffers are in use. They should, however, be freed once those
	  buffers are no longer needed. This patch disposes of any buffers
	  belonging to an orphaned pool as they are released, and makes sure
	  that the allocator is cleaned up when the last buffer is returned.

2019-05-27 18:08:54 +0900  Damian Hobson-Garcia <dhobsong@igel.co.jp>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: Orphan buffer pool on object_stop if supported
	  Use V4L2 buffer orphaning, on recent kernels so that
	  the device can be restarted immediately with
	  a new buffer pool during renogatiation.

2019-05-22 18:06:04 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/multifile/gstsplitmuxsink.c:
	  splitmuxsink: Only set running time on finalizing sink element when in async-finalize mode
	  There is only a single sink element in async-finalize mode, and we would
	  keep the running time from previous fragments set in that case. As we
	  don't ever set the running time for the very last fragment on EOS, this
	  would mean that the closing time reported for the very last fragment is
	  the same as the closing time of the previous fragment.

2019-05-14 17:36:14 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/rtpmanager/rtpsession.c:
	* tests/check/elements/rtpsession.c:
	  rtpsession: Always keep at least one NACK on early RTCP
	  We recently added code to remove outdate NACK to avoid using bandwidth
	  for packet that have no chance of arriving on time. Though, this had a
	  side effect, which is that it was to get an early RTCP packet with no
	  feedback into it. This was pretty useless but also had a side effect,
	  which is that the RTX RTT value would never be updated. So we we stared
	  having late RTX request due to high RTT, we'd never manage to recover.
	  This fixes the regression by making sure we keep at least one NACK in
	  this situation. This is really light on the bandwidth and allow for
	  quick recover after the RTT have spiked higher then the jitterbuffer
	  capacity.

2019-04-24 13:47:54 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/rtpmanager/rtpsession.c:
	* tests/check/elements/rtpsession.c:
	  rtpsession: Call on-new-ssrc earlier
	  Right now, we may call on-new-ssrc after we have processed the first
	  RTP packet. This prevents properly configuring the source as some
	  property like "probation" are copied internally for use as a
	  decreasing counter. For this specific property, it prevents the
	  application from disabling probation on auxiliary sparse stream.
	  Probation is harmful on sparse streams since the probation algorithm
	  assume frequent and contiguous RTP packets.

2019-04-24 13:54:12 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/rtpmanager/rtpsource.c:
	  rtpsource: Add more information to probation warning

2019-05-02 22:14:35 -0700  Thiago Santos <thiagossantos@gmail.com>

	* gst/rtsp/gstrtspsrc.c:
	  rtspsrc: do not try to send EOS with invalid seqnum
	  The second udpsrc (rtcp) might not have seen the segment event if it was
	  not enabled or if rtcp is not available on the server. So if the
	  application tries to send an EOS event it will try to set an invalid
	  seqnum to the event.

2019-05-01 10:00:51 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/rtp/gstrtpvrawdepay.c:
	  rtprawdepay: Don't get rid of the buffer pool on FLUSH_STOP
	  We expect there to be a pool as long as the caps are known and
	  FLUSH_STOP is not resetting the caps. Getting rid of the pool would
	  cause assertions.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/584

2019-02-08 10:09:17 +0100  Danny Smith <dannys@axis.com>

	* gst/rtpmanager/gstrtpbin.c:
	  rtpbin: Free storage when freeing session

2019-04-23 10:10:01 +0100  Philippe Normand <philn@igalia.com>

	* gst/audiofx/gstscaletempo.c:
	  scaletempo: Advertise interleaved layout in caps templates
	  Scaletempo doesn't support non-interleaved layout. Not explicitely stating this
	  would trigger critical warnings and a caps negotiation failure when scaletempo
	  is used as playbin audio-filter.
	  Patch suggested by George Kiagiadakis <george.kiagiadakis@collabora.com>.
	  Fixes #591

2019-05-02 12:35:21 +0100  Tim-Philipp Müller <tim@centricular.com>

	* .gitlab-ci.yml:
	  ci: use template from 1.16 branch

=== release 1.16.0 ===

2019-04-19 00:23:16 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* README:
	* RELEASE:
	* configure.ac:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.16.0

2019-04-19 00:23:16 +0100  Tim-Philipp Müller <tim@centricular.com>

	* docs/plugins/gst-plugins-good-plugins.args:
	* docs/plugins/inspect/plugin-1394.xml:
	* docs/plugins/inspect/plugin-aasink.xml:
	* docs/plugins/inspect/plugin-alaw.xml:
	* docs/plugins/inspect/plugin-alpha.xml:
	* docs/plugins/inspect/plugin-alphacolor.xml:
	* docs/plugins/inspect/plugin-apetag.xml:
	* docs/plugins/inspect/plugin-audiofx.xml:
	* docs/plugins/inspect/plugin-audioparsers.xml:
	* docs/plugins/inspect/plugin-auparse.xml:
	* docs/plugins/inspect/plugin-autodetect.xml:
	* docs/plugins/inspect/plugin-avi.xml:
	* docs/plugins/inspect/plugin-cacasink.xml:
	* docs/plugins/inspect/plugin-cairo.xml:
	* docs/plugins/inspect/plugin-cutter.xml:
	* docs/plugins/inspect/plugin-debug.xml:
	* docs/plugins/inspect/plugin-deinterlace.xml:
	* docs/plugins/inspect/plugin-dtmf.xml:
	* docs/plugins/inspect/plugin-dv.xml:
	* docs/plugins/inspect/plugin-effectv.xml:
	* docs/plugins/inspect/plugin-equalizer.xml:
	* docs/plugins/inspect/plugin-flac.xml:
	* docs/plugins/inspect/plugin-flv.xml:
	* docs/plugins/inspect/plugin-flxdec.xml:
	* docs/plugins/inspect/plugin-gdkpixbuf.xml:
	* docs/plugins/inspect/plugin-goom.xml:
	* docs/plugins/inspect/plugin-goom2k1.xml:
	* docs/plugins/inspect/plugin-gtk.xml:
	* docs/plugins/inspect/plugin-icydemux.xml:
	* docs/plugins/inspect/plugin-id3demux.xml:
	* docs/plugins/inspect/plugin-imagefreeze.xml:
	* docs/plugins/inspect/plugin-interleave.xml:
	* docs/plugins/inspect/plugin-isomp4.xml:
	* docs/plugins/inspect/plugin-jack.xml:
	* docs/plugins/inspect/plugin-jpeg.xml:
	* docs/plugins/inspect/plugin-lame.xml:
	* docs/plugins/inspect/plugin-level.xml:
	* docs/plugins/inspect/plugin-matroska.xml:
	* docs/plugins/inspect/plugin-mpg123.xml:
	* docs/plugins/inspect/plugin-mulaw.xml:
	* docs/plugins/inspect/plugin-multifile.xml:
	* docs/plugins/inspect/plugin-multipart.xml:
	* docs/plugins/inspect/plugin-navigationtest.xml:
	* docs/plugins/inspect/plugin-oss4.xml:
	* docs/plugins/inspect/plugin-ossaudio.xml:
	* docs/plugins/inspect/plugin-png.xml:
	* docs/plugins/inspect/plugin-pulseaudio.xml:
	* docs/plugins/inspect/plugin-qmlgl.xml:
	* docs/plugins/inspect/plugin-replaygain.xml:
	* docs/plugins/inspect/plugin-rtp.xml:
	* docs/plugins/inspect/plugin-rtpmanager.xml:
	* docs/plugins/inspect/plugin-rtsp.xml:
	* docs/plugins/inspect/plugin-shapewipe.xml:
	* docs/plugins/inspect/plugin-shout2.xml:
	* docs/plugins/inspect/plugin-smpte.xml:
	* docs/plugins/inspect/plugin-soup.xml:
	* docs/plugins/inspect/plugin-spectrum.xml:
	* docs/plugins/inspect/plugin-speex.xml:
	* docs/plugins/inspect/plugin-taglib.xml:
	* docs/plugins/inspect/plugin-twolame.xml:
	* docs/plugins/inspect/plugin-udp.xml:
	* docs/plugins/inspect/plugin-video4linux2.xml:
	* docs/plugins/inspect/plugin-videobox.xml:
	* docs/plugins/inspect/plugin-videocrop.xml:
	* docs/plugins/inspect/plugin-videofilter.xml:
	* docs/plugins/inspect/plugin-videomixer.xml:
	* docs/plugins/inspect/plugin-vpx.xml:
	* docs/plugins/inspect/plugin-wavenc.xml:
	* docs/plugins/inspect/plugin-wavpack.xml:
	* docs/plugins/inspect/plugin-wavparse.xml:
	* docs/plugins/inspect/plugin-ximagesrc.xml:
	* docs/plugins/inspect/plugin-y4menc.xml:
	  Update docs

2019-04-19 00:23:14 +0100  Tim-Philipp Müller <tim@centricular.com>

	* po/el.po:
	* po/zh_CN.po:
	  Update translations

2019-04-18 17:14:18 +0200  Benjamin Sigonneau <b.sigonneau@mediadone.fr>

	* ext/qt/qtplugin.pro:
	  qmlglsink: fix compilation with Qt >= 5.5 on Windows
	  As of Qt >= 5.5, qmake do not link to opengl32 by default anymore. This commit adds opengl32.lib to the .pro
	  file so that the plugin can be build using QtCreator on Windows.

2019-04-17 15:48:26 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* ext/qt/meson.build:
	  meson: Build qt plugin in C++11 mode explicitly
	  This works implicitly most of the time, but we need to set it
	  explicitly for building with Android.

2019-04-16 14:35:06 +0530  Guillaume Desmottes <guillaume.desmottes@collabora.com>

	* sys/v4l2/gstv4l2transform.c:
	* sys/v4l2/gstv4l2videodec.c:
	* sys/v4l2/gstv4l2videoenc.c:
	  v4l2: fix use after free when handling events
	  The sink_event parent function may consume the event so we shouldn't use
	  it after having calling it.

=== release 1.15.90 ===

2019-04-11 00:26:58 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* configure.ac:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.15.90

2019-04-11 00:26:58 +0100  Tim-Philipp Müller <tim@centricular.com>

	* docs/plugins/gst-plugins-good-plugins.args:
	* docs/plugins/inspect/plugin-1394.xml:
	* docs/plugins/inspect/plugin-aasink.xml:
	* docs/plugins/inspect/plugin-alaw.xml:
	* docs/plugins/inspect/plugin-alpha.xml:
	* docs/plugins/inspect/plugin-alphacolor.xml:
	* docs/plugins/inspect/plugin-apetag.xml:
	* docs/plugins/inspect/plugin-audiofx.xml:
	* docs/plugins/inspect/plugin-audioparsers.xml:
	* docs/plugins/inspect/plugin-auparse.xml:
	* docs/plugins/inspect/plugin-autodetect.xml:
	* docs/plugins/inspect/plugin-avi.xml:
	* docs/plugins/inspect/plugin-cacasink.xml:
	* docs/plugins/inspect/plugin-cairo.xml:
	* docs/plugins/inspect/plugin-cutter.xml:
	* docs/plugins/inspect/plugin-debug.xml:
	* docs/plugins/inspect/plugin-deinterlace.xml:
	* docs/plugins/inspect/plugin-dtmf.xml:
	* docs/plugins/inspect/plugin-dv.xml:
	* docs/plugins/inspect/plugin-effectv.xml:
	* docs/plugins/inspect/plugin-equalizer.xml:
	* docs/plugins/inspect/plugin-flac.xml:
	* docs/plugins/inspect/plugin-flv.xml:
	* docs/plugins/inspect/plugin-flxdec.xml:
	* docs/plugins/inspect/plugin-gdkpixbuf.xml:
	* docs/plugins/inspect/plugin-goom.xml:
	* docs/plugins/inspect/plugin-goom2k1.xml:
	* docs/plugins/inspect/plugin-gtk.xml:
	* docs/plugins/inspect/plugin-icydemux.xml:
	* docs/plugins/inspect/plugin-id3demux.xml:
	* docs/plugins/inspect/plugin-imagefreeze.xml:
	* docs/plugins/inspect/plugin-interleave.xml:
	* docs/plugins/inspect/plugin-isomp4.xml:
	* docs/plugins/inspect/plugin-jack.xml:
	* docs/plugins/inspect/plugin-jpeg.xml:
	* docs/plugins/inspect/plugin-lame.xml:
	* docs/plugins/inspect/plugin-level.xml:
	* docs/plugins/inspect/plugin-matroska.xml:
	* docs/plugins/inspect/plugin-mpg123.xml:
	* docs/plugins/inspect/plugin-mulaw.xml:
	* docs/plugins/inspect/plugin-multifile.xml:
	* docs/plugins/inspect/plugin-multipart.xml:
	* docs/plugins/inspect/plugin-navigationtest.xml:
	* docs/plugins/inspect/plugin-oss4.xml:
	* docs/plugins/inspect/plugin-ossaudio.xml:
	* docs/plugins/inspect/plugin-png.xml:
	* docs/plugins/inspect/plugin-pulseaudio.xml:
	* docs/plugins/inspect/plugin-qmlgl.xml:
	* docs/plugins/inspect/plugin-replaygain.xml:
	* docs/plugins/inspect/plugin-rtp.xml:
	* docs/plugins/inspect/plugin-rtpmanager.xml:
	* docs/plugins/inspect/plugin-rtsp.xml:
	* docs/plugins/inspect/plugin-shapewipe.xml:
	* docs/plugins/inspect/plugin-shout2.xml:
	* docs/plugins/inspect/plugin-smpte.xml:
	* docs/plugins/inspect/plugin-soup.xml:
	* docs/plugins/inspect/plugin-spectrum.xml:
	* docs/plugins/inspect/plugin-speex.xml:
	* docs/plugins/inspect/plugin-taglib.xml:
	* docs/plugins/inspect/plugin-twolame.xml:
	* docs/plugins/inspect/plugin-udp.xml:
	* docs/plugins/inspect/plugin-video4linux2.xml:
	* docs/plugins/inspect/plugin-videobox.xml:
	* docs/plugins/inspect/plugin-videocrop.xml:
	* docs/plugins/inspect/plugin-videofilter.xml:
	* docs/plugins/inspect/plugin-videomixer.xml:
	* docs/plugins/inspect/plugin-vpx.xml:
	* docs/plugins/inspect/plugin-wavenc.xml:
	* docs/plugins/inspect/plugin-wavpack.xml:
	* docs/plugins/inspect/plugin-wavparse.xml:
	* docs/plugins/inspect/plugin-ximagesrc.xml:
	* docs/plugins/inspect/plugin-y4menc.xml:
	  Update docs

2019-04-09 23:51:22 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/rtp/gstrtpulpfecdec.c:
	* gst/rtp/gstrtpulpfecenc.c:
	  rtpulpfecdec,enc: unbreak plugin gtk-doc build in autotools
	  Fix doc chunks to not use that syntax for links that have the
	  url as description, it will be put verbatim into the xml/*.xml
	  file and then the expat parser will throw a syntax error like:
	  File "../../common/mangle-db.py", line 71, in <module>
	  main()
	  File "../../common/mangle-db.py", line 69, in main
	  patch (details.replace("-details", ""), os.path.basename(details))
	  File "../../common/mangle-db.py", line 20, in patch
	  doc = xml.dom.minidom.parse(related)
	  File "/usr/lib/python2.7/xml/dom/minidom.py", line 1918, in parse
	  return expatbuilder.parse(file)
	  File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 924, in parse
	  result = builder.parseFile(fp)
	  File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 207, in parseFile
	  parser.Parse(buffer, 0)
	  xml.parsers.expat.ExpatError: not well-formed (invalid token): line 84, column 7

2019-04-08 11:35:34 +0200  Antonio Ospite <antonio.ospite@collabora.com>

	* gst/rtp/gstrtpvrawpay.c:
	  rtpvrawpay: preserve GST_BUFFER_FLAG_DISCONT on the first outputted buffer
	  If the incoming frame buffer has GST_BUFFER_FLAG_DISCONT set this should
	  be preserved and set for the first output buffer too, like other
	  payloaders do.
	  Spotted with gst-validate-1.0 when adding integration tests for
	  rtpsession, a minimal test to reproduce the issue is:
	  $ gst-validate-1.0 videotestsrc num-buffers=1 ! rtpvrawpay ! identity ! fakesink
	  Starting pipeline
	  Pipeline started
	  warning : Buffer didn't have expected DISCONT flag333 speed: 1.000000 />
	  Detected on <identity0:sink>
	  Detected on <identity0:src>
	  Detected on <fakesink0:sink>
	  Description : Buffers after SEGMENT and FLUSH must have a DISCONT flag
	  Issues found: 1
	  =======> Test PASSED (Return value: 0)

2019-03-22 12:42:14 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/gstrtpulpfecdec.c:
	* gst/rtp/gstrtpulpfecenc.c:
	  rtpulpfec*: Replace github URIs with gitlab.fdo ones

2019-03-21 17:01:11 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/gstrtpreddec.c:
	* gst/rtp/gstrtpredenc.c:
	  rtpred*: Add example pipelines

2019-03-21 16:48:37 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/gstrtpreddec.c:
	* gst/rtp/gstrtpulpfecdec.c:
	* gst/rtp/gstrtpulpfecenc.c:
	  rtpulpfec*: Improve documentation

2019-03-20 18:31:48 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/gstrtpstorage.c:
	* gst/rtp/gstrtpulpfecdec.c:
	  rtpstorage + rtpulpfecdec: Get the storage using a query as fallback
	  This allows it to be used using gst-launch for easier testing.

2019-03-19 06:22:29 -0700  Dan Kegel <dank@kegel.com>

	* sys/osxvideo/Makefile.am:
	* sys/osxvideo/meson.build:
	  osxvideo: fix mac os 10.14 build
	  lockFocusIfCanDraw is deprecated in mac os 10.14.  Apple suggests a
	  different way to do what that does, but for now, just suppress the deprecation.
	  There's no way to disable just that deprecation, so shut them all down.
	  OpenGL is also deprecated in mac os 10.14.  There is a gentle way to
	  turn off just those deprecations (GL_SILENCE_DEPRECATION), but since
	  this commit turns them all off, that's moot.
	  https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/577

2019-04-07 12:00:49 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* tests/check/elements/rtpsession.c:
	  test: rtpsession: Verify on-sending-nacks callback

2019-03-27 16:19:15 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/rtpmanager/rtpsession.c:
	* gst/rtpmanager/rtpsession.h:
	  rtpsession: Allow overriding NACK packet creation
	  This introduce a new signal on RTSession, on-sending-nacks is emited
	  right before the list of seqnums to be nacked are processed and
	  transformed into FB Nack. This allow implementing custom nacks
	  handling through another mechanism with APP feedback.

2018-11-20 02:45:04 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/rtpmanager/rtpsession.c:
	* gst/rtpmanager/rtpsession.h:
	* tests/check/elements/rtpsession.c:
	  rtpsession: Add disable-sr-timestamp property
	  The Onvif Streaming Spec, in section 6.11, mandates that when
	  Rate-Control is disabled potential RTCP packets shall have
	  their timestamps set to 0.
	  <https://www.onvif.org/specs/stream/ONVIF-Streaming-Spec.pdf>

2019-03-05 20:57:44 +0100  Philipp Zabel <philipp.zabel@gmail.com>

	* sys/v4l2/ext/types-compat.h:
	  v4l2: remove __user define from types-compat.h
	  Remove the now unused __user define.

2019-03-05 20:53:47 +0100  Philipp Zabel <philipp.zabel@gmail.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: use opRGB colorspace and xfer func defines
	  AdobeRGB defines have been renamed to opRGB in the kernel headers,
	  use the new names.

2019-01-24 16:12:13 +0100  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/gstv4l2videodec.c:
	  v4l2videodec: support orphaning
	  Recent kernels allow REQBUFS(0) on a queue that still has buffers in
	  use (mmapped or exported via dmabuf), orphaning all buffers on the queue.
	  If this is supported, the v4l2videodec element does not have to send a
	  drain request downstream.

2019-01-24 16:12:13 +0100  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/gstv4l2bufferpool.c:
	* sys/v4l2/gstv4l2bufferpool.h:
	  v4l2bufferpool: support orphaning
	  Now that the v4l2allocator allows orphaning the V4L2 buffer queue, add
	  support for orphaning in the v4l2bufferpool. gst_v4l2_buffer_pool_orphan
	  can be used as a replacement for gst_v4l2_buffer_pool_stop, without
	  having to wait for buffers to be returned to the pool.

2019-01-24 16:12:13 +0100  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/gstv4l2allocator.c:
	* sys/v4l2/gstv4l2allocator.h:
	  v4l2allocator: support orphaning
	  Recent kernels allow REQBUFS(0) on a queue that still has buffers in
	  use (mmapped or exported via dmabuf), orphaning all buffers on the queue.
	  Orphaning the allocator causes it to release all buffers with
	  REQBUFS(0), even if they are still in use. An orphaned allocator can
	  only be stopped. It can not be restarted or create new buffers.

2019-01-24 15:36:49 +0100  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/ext/v4l2-common.h:
	* sys/v4l2/ext/v4l2-controls.h:
	* sys/v4l2/ext/videodev2.h:
	  v4l2: update kernel headers to latest from media tree
	  Update to the latest installed headers (output of make headers_install)
	  from the media tree, keeping the slight modifications to the includes.
	  This includes new HEVC controls, the AdobeRGB -> opRGB rename, a new
	  capabilities field for v4l2_requestbuffers and v4l2_create_buffers, new
	  32-bit YUV formats, and request_fd changes.

2019-04-03 14:13:49 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* ext/shout2/gstshout2.c:
	  shout2: Fix leak on error in start

2019-03-29 22:48:53 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* tests/check/elements/rtpsession.c:
	  test: rtpsession: Test FB Nack packing
	  We used to split the NACK if a smaller seqnum of a range of seqnum was
	  submited. This test also make sure that the three operations (append,
	  prepend, update) works properly.

2019-03-29 22:34:47 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* tests/check/elements/rtpsession.c:
	  test: rtpsession: Test handling of NACK surplus
	  This test verify that NACKs that didn't fit in one packet are properly
	  filtered and inserted into the following pipeline.

2019-03-25 13:42:25 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/rtpmanager/rtpsession.c:
	* gst/rtpmanager/rtpsource.c:
	* gst/rtpmanager/rtpsource.h:
	  rtpsession: Send as many nack seqnum as possible
	  In order to do that, we now split the nacks registration from the actual
	  FB nack packet construction. We then try and add as many FB Nacks as
	  possible into the active packets and leave the remaining seqnums in the
	  RTPSource. In order to avoid sending outdated NACK later on, we save the
	  seqnum calculated deadline and cleanup the outdated seqnums before the
	  next RTCP send.
	  Fixes #583

2018-04-30 10:54:19 +0200  John Bassett <john.bassett@pexip.com>

	* gst/rtpmanager/rtpsession.c:
	* tests/check/elements/rtpsession.c:
	  rtpsession: Fix race when sending PLI, FIR and NACK packets
	  Calling rtp_session_send_rtcp before marking the source as requiring a
	  pli/fir/nack meant the rtcp_thread could be scheduled and start running
	  before the source was updated. This meant the request would not be sent
	  early but instead was transmitted with the next regular RTCP packet.
	  Add test for nack generation.

2019-03-29 16:49:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/rtpmanager/rtpsession.c:
	  rtpsession: Fix early rtcp time comparision
	  If the current time is equal to the early rtcp time deadline, there is
	  no need to schedule a timer. This ensure that immediate feedback is
	  really immediate and simplify implementing unit tests with the test
	  clock, which stops perfectly on the timeout time.
	  This fix has been extracted from Pexip feature patch called
	  "rtpsession: Allow instant transmission of RTCP packets"

2019-01-24 11:54:49 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>

	* sys/v4l2/gstv4l2src.c:
	  v4l2src: preserve features when fixating caps
	  The caps features were lost when sorting caps structures in
	  gst_v4l2src_fixate(). This was breaking alternate as
	  GST_CAPS_FEATURE_FORMAT_INTERLACED was removed from the caps.

2018-11-13 21:23:30 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/rtp/gstrtpgstpay.c:
	  rtpgstpay: Set DELTA_UNIT flag when appropriate
	  When used in combination with a rtponviftimestamp element
	  downstream, forwarding this flag ensures it gets correctly
	  serialized in the ONVIF header extension.

2019-04-03 16:42:26 +0200  Antonio Ospite <antonio.ospite@collabora.com>

	* gst/rtpmanager/gstrtpjitterbuffer.c:
	  docs: fix typo s/abonormally/abnormally/

2019-04-03 16:38:56 +0200  Antonio Ospite <antonio.ospite@collabora.com>

	* gst/debugutils/gsttaginject.c:
	* gst/goom2k1/gstgoom.c:
	* gst/monoscope/gstmonoscope.c:
	* gst/rtp/README:
	* gst/rtp/gstrtpac3pay.c:
	* gst/rtp/gstrtpmp4apay.c:
	* gst/rtp/gstrtpmp4vpay.c:
	* gst/rtpmanager/gstrtpjitterbuffer.c:
	* gst/rtpmanager/rtpjitterbuffer.c:
	* gst/rtpmanager/rtpsource.c:
	* gst/smpte/gstsmpte.c:
	  docs: fix typo s/incomming/incoming/

2019-04-03 16:34:22 +0200  Antonio Ospite <antonio.ospite@collabora.com>

	* gst/rtp/gstrtpmp4apay.c:
	* gst/rtp/gstrtpmp4gpay.c:
	* gst/rtp/gstrtpmp4vpay.c:
	* gst/rtp/gstrtpvrawpay.c:
	  rtp: fix indentation after G_DEFINE_TYPE
	  A missing colon after G_DEFINE_TYPE declaration was confusing gst-indent
	  and causing problem in the pre-commit hook.
	  Add the missing colon and fix the following function declaration to
	  follow the normal GStreamer style.

2019-03-07 15:34:03 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* gst/rtpmanager/gstrtpsession.c:
	  rtpsession: fix comment to refer to buffers instead of groups
	  One comments in gst_rtp_session_chain_send_rtp_common() is referring to
	  groups in a buffer list, however this concept of "group" comes from
	  GStreamer 0.10 and does not exist anymore in GStreamer 1.0, so update the
	  comment to refer to buffers instead.

2019-03-06 09:52:45 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* gst/rtpmanager/rtpsource.c:
	  rtpsource: add comment to explain why probation queue is not always cleared

2019-04-02 12:51:04 +0200  Antonio Ospite <antonio.ospite@collabora.com>

	* tests/check/elements/rtpbin_buffer_list.c:
	  test: rtpbin_buffer_list: add test to verify that stats are correct
	  Add a test to verify that stats about sent and received packets are
	  correct even when using buffer lists.
	  NOTE: the newly introduced get_session_source_stats() selects the
	  desired source (sender or receiver) by filtering them by type (using the
	  get_sender parameter) rather than by ssrc because this simplifies the
	  code and it's good enough for testing purposes as there is usually one
	  source per type in the test setup.
	  Filtering by ssrc would have required handling asynchronous signals like
	  "on-new-sender-ssrc", with the relative locking, just to retrieve the
	  actual ssrc of the sender.

2019-03-05 13:43:12 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* gst/rtpmanager/rtpsource.c:
	  rtpsource: fix stats about received packets
	  The update_receiver_stats() function is called also when sending packets
	  in rtp_source_send_rtp(), and sending packets may happen using a buffer
	  list rather than individual buffers.
	  So update the stats using the actual number of packets sent.
	  NOTE: this is fine for the receive path too (rtp_process_send_rtp)
	  because the receive path does not support buffer lists and
	  pinfo->packets would always be equal to 1 in this case.

2019-03-11 10:08:21 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* tests/check/elements/rtpbin_buffer_list.c:
	  test: rtpbin_buffer_list: move buffer list creation next to its validation
	  The tests create a buffer list and then use the chain_list callback to
	  verify that the correct packets have been pushed.
	  Move the creation and validation code next to each other so that the
	  reader can more easily understand what is going on.
	  While at it add some comments to introduce the two related functions.

2019-03-06 19:27:01 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* tests/check/elements/rtpbin_buffer_list.c:
	  test: rtpbin_buffer_list: set the chain_list function directly in the test
	  The helper function set_chain_function does not really do anything useful, remove it.

2019-03-06 19:19:03 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* tests/check/elements/rtpbin_buffer_list.c:
	  test: rtpbin_buffer_list: make check_packet more flexible
	  Make it possible to differentiate between the position in the list and
	  the packet index in the global structures in check_packet, in some
	  future case the list may change, in case some element removes a buffer
	  from the list, and the two indices may not coincide.

2019-03-05 12:47:29 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* tests/check/elements/rtpbin_buffer_list.c:
	  test: rtpbin_buffer_list: factor out a function to create packets buffers

2019-03-04 11:27:33 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* tests/check/elements/rtpbin_buffer_list.c:
	  test: rtpbin_buffer_list: check if the chain_list function has been called
	  Make the test more useful to verify that the chain list function has
	  actually been called.

2019-02-27 12:27:21 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* tests/check/elements/rtpbin_buffer_list.c:
	  test: rtpbin_buffer_list: port to GStreamer 1.0
	  Port the rtpbin_buffer_list test to GStreamer 1.0 and re-enable it.
	  Some other changes include:
	  - the check on the caps has been moved from the buffer level to the
	  pad level;
	  - remove underscore prefix from static functions names, this is not
	  idiomatic in C and rarely used in the other tests;
	  - the unused header_buffer variable has been removed;
	  - check_group() has been renamed to check_packet() because in
	  GStreamer 1.0 there is no concept of "group" anymore, the comments
	  have also been updated to reflect this.

2019-04-01 18:20:53 +0100  Tim-Philipp Müller <tim@centricular.com>

	* tests/check/elements/jpegdec.c:
	  tests: jpegdec: bump discoverer timeout for valgrind
	  Tests might take a bit longer, esp. when run under valgrind
	  and/or they're running on the CI with other things going on,
	  so let's just bump the timeout to something higher and let
	  the test runner time us out if needed.

2019-04-01 18:20:28 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* ext/qt/meson.build:
	  meson: Only ensure that moc is available on Linux
	  On other OSes, it's not possible to have qmake or the qt5 pkg-config
	  files and not have moc, and `moc` will not be in `PATH`, so this only
	  causes problems.

2019-03-21 18:24:43 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/rtpstoragestream.c:
	  rtpstorage: Limit the queue size
	  Limit to the queue size in case there is no arrival time or in case there is
	  a huge flood of packets.

2019-03-18 15:30:54 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtpmanager/gstrtpbin.c:
	  rtpbin: Request the FEC decoder even if ignore-pt is set

2019-03-18 15:27:21 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtpmanager/gstrtpbin.c:
	  rtpbin: Factor out the code that exposes the src pad

2019-03-22 02:08:01 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/gstrtpreddec.c:
	  rtpreddec: Add some more debug prints

2019-03-21 17:32:18 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/rtpstorage.c:
	  rtpstorage: Issue warning if request by size if 0
	  If the size is 0, then nothing will ever be in the storage, if a request is
	  received, it generally implies a misconfigured pipeline.

2019-03-21 17:24:42 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/gstrtpstorage.c:
	* gst/rtp/rtpstorage.c:
	* gst/rtp/rtpstoragestream.c:
	  rtpstorage: Add more debug messages

2019-03-21 17:12:53 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/gstrtpstorage.c:
	* gst/rtp/rtpstorage.c:
	* gst/rtp/rtpstoragestream.c:
	* gst/rtp/rtpstoragestream.h:
	* tests/check/Makefile.am:
	* tests/check/elements/rtpstorage.c:
	* tests/check/meson.build:
	  rtpstorage: Make debug category available to sub objects

2019-03-21 17:12:33 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtp/gstrtpstorage.c:
	  rtpstorage: Add debug funcptr to chain function

2019-03-22 12:01:01 +0100  Julian Bouzas <julian.bouzas@collabora.com>

	* ext/flac/gstflacdec.c:
	* ext/flac/gstflacenc.c:
	  flac: report latency in flacenc and flacdec
	  The FLAC specification states that the data is processed in blocks, regardless of the number of channels. Thus, The latency can be calculated using the blocksize and rate. For example a 1 second block sampled at 44.1KHz has a blocksize of 44100

2019-03-22 23:36:42 +0000  Tim-Philipp Müller <tim@centricular.com>

	* tests/examples/rtsp/test-onvif.c:
	  examples: rtsp: fix compiler warning
	  "control reaches end of non-void function"

2019-03-22 15:07:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/rtpmanager/gstrtpsession.c:
	  gstrtpsession: Remove set but not use running-time

2019-03-19 09:50:04 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst/rtpmanager/gstrtpjitterbuffer.c:
	* gst/rtpmanager/gstrtpptdemux.c:
	* gst/rtpmanager/gstrtpsession.c:
	* gst/rtpmanager/gstrtpssrcdemux.c:
	  rtpmanager: Register chain functions to debug

2019-02-27 15:49:13 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/rtpmanager/gstrtpbin.c:
	  rtpbin: Allow reusing the sender AUX bin
	  This is needed for the case you don't know in advance all the sessions
	  you will be using, but would like to place all the related AUX element
	  in the same GstBin. As per current implementation, each time an sender
	  AUX bin is requested and returned, RTPBin will walk the src pads and
	  create sessions for these pads.
	  In the current implementation, if a src pad already have a sessions, it
	  returns an error and stops. As a side effect, if an AUX bin is reused in
	  a following AUX bin request, it can only work if the pads are created on
	  the last request.
	  This change simply relax the restriction in order to keep walking, and
	  just ensure that all newly created pads have a sessions.

2018-06-25 17:49:07 +0200  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/gstv4l2videoenc.c:
	  v4l2videoenc: set GstVideoCodecFrame sync point flag
	  The V4L2 elements already set the delta unit buffer flag when dequeueing
	  the buffer, but gst_video_encoder_finish_frame overwrites it from the
	  passed codec frame's sync point flag. Set the flag correctly.
