=== release 1.10.4 ===

2017-02-23  Sebastian Dröge <slomo@coaxion.net>

	* configure.ac:
	  releasing 1.10.4

2017-02-10 20:50:17 +0900  Seungha Yang <sh.yang@lge.com>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: Extract redirection uri on libsoup's restarted callback
	  Let libsoup handle redirection automatically.
	  And then, to figure out redirection uri, extract it on "restarted"
	  callback which will be fired before soup_session_send() is returned.
	  https://bugzilla.gnome.org/show_bug.cgi?id=778428

2017-01-02 19:29:04 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: Update image size when extrapolating
	  Update the image size according the amount of data we are going to
	  read/write. This workaround bugs in driver where the sizeimage provided
	  by TRY/S_FMT represent the buffer length (maximum size) rather then the expected
	  bytesused (buffer size).
	  https://bugzilla.gnome.org/show_bug.cgi?id=775564

2017-02-17 15:50:32 -0800  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2: fix typo in _acquire_format() error messages
	  Fixes:
	  https://bugzilla.gnome.org/show_bug.cgi?id=778815

2017-02-10 10:32:57 -0300  Juan Pablo Ugarte <ugarte@endlessm.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: mark singleton caps as "may be leaked" objects.
	  Set MAY_BE_LEAKED flag on static pads returned by gst_v4l2_object_get_*_caps()
	  functions. Made functions thread safe by using g_once_init[enter|leave]
	  funtions.
	  https://bugzilla.gnome.org/show_bug.cgi?id=778453

2017-01-17 16:41:58 +0100  Jean-Christophe Trotin <jean-christophe.trotin@st.com>

	* sys/v4l2/gstv4l2allocator.c:
	  v4l2allocator: reference memory before the buffer is queued
	  In gst_v4l2_allocator_qbuf(), the memory is referenced after the
	  buffer is queued. Once queued (VIDIOC_QBUF), the buffer might be handled
	  by the V4L2 driver (e.g. decoded) and dequeued (gst_v4l2_allocator_dqbuf),
	  through a different thread, before the memory is referenced (gst_memory_ref).
	  In this case, in gst_v4l2_allocator_dqbuf(), the memory is unreferenced
	  (gst_memory_unref) before having been referenced: the memory refcount
	  reaches 0, and the memory is freed.
	  So, to avoid this crossing case, in gst_v4l2_allocator_qbuf(), the
	  memory shall be referenced before the buffer is queued.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777399

2016-12-14 19:15:03 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: Don't check size in a non-list value
	  After commit 1ea9735a I see these error while using the webcam
	  integrated in my laptop:
	  GStreamer-CRITICAL **: gst_value_list_get_size: assertion 'GST_VALUE_HOLDS_LIST (value)' failed
	  The issue is gst_v4l2src_value_simplify() was doing its job of
	  generating a single value, rather than the original list. That why,
	  when getting the list size, a critical warning was raised.
	  This patch takes advantage of the compiler optimizations to verify
	  first if the list was simplified, thus use it directly, otherwise,
	  if it is a list, verify its size.
	  https://bugzilla.gnome.org/show_bug.cgi?id=776106

2016-12-06 17:42:31 +0530  Arun Raghavan <arun@osg.samsung.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: Don't set empty interlace-mode list
	  If for some reason we fail to probe formats (all try_fmt calls fail, for
	  example), this is not a critical error, but we end up with an empty list
	  of interlace modes. This causes all subsequent negotiation to fail.
	  This patch fixes interlace-mode setting to be skipped if we failed to
	  detect any.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775702

2016-11-14 22:33:27 +0530  Arun Raghavan <arun@osg.samsung.com>

	* config.h.meson:
	  meson: Add define for v4l2-probe config option

2017-01-24 19:23:44 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>

	* tests/check/meson.build:
	  meson: Properly use ':' for defining keywords

2017-02-15 00:13:30 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/udp/gstudpsrc.c:
	  udpsrc: Use IP_MULTICAST_ALL for filtering IPv4 packets if available
	  This goes around the inefficient control message based filtering and
	  does all the filtering kernel-side. Unfortunately this is Linux-only and
	  there is no IPv6 variant of it (yet).

2017-02-10 10:53:05 +0100  Søren Juul <zpon.dk@gmail.com>

	* gst/icydemux/gsticydemux.c:
	* tests/check/elements/icydemux.c:
	  icydemux: reset tags on empty value
	  Some radio streams uses StreamTitle='' to reset the title after a
	  track stopped playing, e.g. while the host talks between tracks or
	  during news segments.
	  This change forces an empty tag object to be distributed if
	  StreamTitle or StreamUrl is received with empty value, thus allowing
	  downstream elements to get notified about this.
	  https://bugzilla.gnome.org/show_bug.cgi?id=778437

2017-02-07 13:10:18 +1100  Jan Schmidt <jan@centricular.com>

	* gst/multifile/gstsplitmuxpartreader.c:
	  splitmuxsrc: Allow for buffers before the segment when measuring
	  Used signed calculations when measuring the max_ts of an input
	  fragment, so as to calculate the correct duration and offset
	  when buffers have timestamps preceding their segment

2017-01-30 20:20:08 +0000  Tim-Philipp Müller <tim@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: sanity check number of segments in edit list
	  Fixes crash with fuzzed file.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777940

=== release 1.10.3 ===

2017-01-30 16:27:29 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* configure.ac:
	* docs/plugins/gst-plugins-good-plugins.args:
	* docs/plugins/inspect/plugin-1394.xml:
	* docs/plugins/inspect/plugin-aasink.xml:
	* docs/plugins/inspect/plugin-alaw.xml:
	* docs/plugins/inspect/plugin-alpha.xml:
	* docs/plugins/inspect/plugin-alphacolor.xml:
	* docs/plugins/inspect/plugin-apetag.xml:
	* docs/plugins/inspect/plugin-audiofx.xml:
	* docs/plugins/inspect/plugin-audioparsers.xml:
	* docs/plugins/inspect/plugin-auparse.xml:
	* docs/plugins/inspect/plugin-autodetect.xml:
	* docs/plugins/inspect/plugin-avi.xml:
	* docs/plugins/inspect/plugin-cacasink.xml:
	* docs/plugins/inspect/plugin-cairo.xml:
	* docs/plugins/inspect/plugin-cutter.xml:
	* docs/plugins/inspect/plugin-debug.xml:
	* docs/plugins/inspect/plugin-deinterlace.xml:
	* docs/plugins/inspect/plugin-dtmf.xml:
	* docs/plugins/inspect/plugin-dv.xml:
	* docs/plugins/inspect/plugin-effectv.xml:
	* docs/plugins/inspect/plugin-equalizer.xml:
	* docs/plugins/inspect/plugin-flac.xml:
	* docs/plugins/inspect/plugin-flv.xml:
	* docs/plugins/inspect/plugin-flxdec.xml:
	* docs/plugins/inspect/plugin-gdkpixbuf.xml:
	* docs/plugins/inspect/plugin-goom.xml:
	* docs/plugins/inspect/plugin-goom2k1.xml:
	* docs/plugins/inspect/plugin-icydemux.xml:
	* docs/plugins/inspect/plugin-id3demux.xml:
	* docs/plugins/inspect/plugin-imagefreeze.xml:
	* docs/plugins/inspect/plugin-interleave.xml:
	* docs/plugins/inspect/plugin-isomp4.xml:
	* docs/plugins/inspect/plugin-jack.xml:
	* docs/plugins/inspect/plugin-jpeg.xml:
	* docs/plugins/inspect/plugin-level.xml:
	* docs/plugins/inspect/plugin-matroska.xml:
	* docs/plugins/inspect/plugin-mulaw.xml:
	* docs/plugins/inspect/plugin-multifile.xml:
	* docs/plugins/inspect/plugin-multipart.xml:
	* docs/plugins/inspect/plugin-navigationtest.xml:
	* docs/plugins/inspect/plugin-oss4.xml:
	* docs/plugins/inspect/plugin-ossaudio.xml:
	* docs/plugins/inspect/plugin-png.xml:
	* docs/plugins/inspect/plugin-pulseaudio.xml:
	* docs/plugins/inspect/plugin-replaygain.xml:
	* docs/plugins/inspect/plugin-rtp.xml:
	* docs/plugins/inspect/plugin-rtpmanager.xml:
	* docs/plugins/inspect/plugin-rtsp.xml:
	* docs/plugins/inspect/plugin-shapewipe.xml:
	* docs/plugins/inspect/plugin-shout2send.xml:
	* docs/plugins/inspect/plugin-smpte.xml:
	* docs/plugins/inspect/plugin-soup.xml:
	* docs/plugins/inspect/plugin-spectrum.xml:
	* docs/plugins/inspect/plugin-speex.xml:
	* docs/plugins/inspect/plugin-taglib.xml:
	* docs/plugins/inspect/plugin-udp.xml:
	* docs/plugins/inspect/plugin-video4linux2.xml:
	* docs/plugins/inspect/plugin-videobox.xml:
	* docs/plugins/inspect/plugin-videocrop.xml:
	* docs/plugins/inspect/plugin-videofilter.xml:
	* docs/plugins/inspect/plugin-videomixer.xml:
	* docs/plugins/inspect/plugin-vpx.xml:
	* docs/plugins/inspect/plugin-wavenc.xml:
	* docs/plugins/inspect/plugin-wavpack.xml:
	* docs/plugins/inspect/plugin-wavparse.xml:
	* docs/plugins/inspect/plugin-ximagesrc.xml:
	* docs/plugins/inspect/plugin-y4menc.xml:
	* gst-plugins-good.doap:
	* win32/common/config.h:
	  Release 1.10.3

2017-01-30 15:42:11 +0200  Sebastian Dröge <sebastian@centricular.com>

	* po/af.po:
	* po/az.po:
	* po/bg.po:
	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_GB.po:
	* po/eo.po:
	* po/es.po:
	* po/eu.po:
	* po/fi.po:
	* po/fr.po:
	* po/gl.po:
	* po/hr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/lt.po:
	* po/lv.po:
	* po/mt.po:
	* po/nb.po:
	* po/nl.po:
	* po/or.po:
	* po/pl.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sk.po:
	* po/sl.po:
	* po/sq.po:
	* po/sr.po:
	* po/sv.po:
	* po/tr.po:
	* po/uk.po:
	* po/vi.po:
	* po/zh_CN.po:
	* po/zh_HK.po:
	* po/zh_TW.po:
	  Update .po files

2017-01-30 13:33:23 +0200  Sebastian Dröge <sebastian@centricular.com>

	* po/el.po:
	  po: Update translations

2017-01-27 16:14:16 +0200  Vivia Nikolaidou <vivia@toolsonair.com>

	* gst/isomp4/atoms.c:
	  qtmux: Timecode track fixes for STSD entry
	  The n_frames field (frames per second) should follow the nominal frame
	  rate for drop-frame timecodes.
	  Also, the trak's timescale (and duration, accordingly) should follow the
	  STSD entry's timescale and frame duration (fps_n and fps_d accordingly),
	  not the other way around.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777832

2017-01-19 11:08:11 +0100  Arnaud Vrac <avrac@freebox.fr>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: retry request on early termination from the server
	  Fix a regression introduced by commit 183695c61a54f1 (refactor to use
	  Soup's sync API). The code previously attempted to reconnect when the
	  server closed the connection early, for example when the stream was put
	  in pause for some time.
	  Reintroduce this feature by checking if EOS is received before the
	  expected content size is downloaded. In this case, do the request
	  starting at the previous read position.
	  https://bugzilla.gnome.org/show_bug.cgi?id=776720

2017-01-10 09:40:56 -0700  Matt Staples <staples255@gmail.com>

	* gst/rtsp/gstrtspsrc.c:
	  rtspsrc: find_stream_by_channel should ignore unconfigured streams
	  https://bugzilla.gnome.org/show_bug.cgi?id=777101

2017-01-25 18:43:00 +0000  Brendan Shanks <brendan.shanks@teradek.com>

	* gst/isomp4/gstqtmux.c:
	  qtmux: Fix debug typo and remove misleading warning
	  https://bugzilla.gnome.org/show_bug.cgi?id=777362

2017-01-26 13:54:14 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/autodetect/gstautodetect.c:
	  Revert "autodetect: bring the element state down after success"
	  This reverts commit 67f6d3358e4620319335065db25edaaba1f5ae0a.
	  It causes problems in certain scenarios and needs further investigation
	  https://bugzilla.gnome.org/show_bug.cgi?id=764947#c9

2017-01-09 11:32:35 +0530  Rahul Bedarkar <rahul.bedarkar@imgtec.com>

	* gst/wavparse/gstwavparse.c:
	  wavparse: check for not NULL before clearing adapter
	  In case wavparse receives a manually injected FLUSH_STOP event
	  while operating in pull mode we get criticals because we'd try
	  to clear a NULL adapter.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777123

2017-01-20 17:16:10 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/avi/gstavidemux.c:
	  avidemux: Stop reading a ncdt sub-tag if it goes behind the surrounding tag
	  https://bugzilla.gnome.org/show_bug.cgi?id=777532

2017-01-20 07:58:26 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/avi/gstavidemux.c:
	  avidemux: Fix various out of bounds reads when parsing ncdt tags
	  https://bugzilla.gnome.org/show_bug.cgi?id=777500

2017-01-19 13:46:58 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Increment current stts index whenever we finished one stts entry
	  Otherwise we could read more chunks than there are available, doing an
	  out of bounds read and potentially crash.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777469

2017-01-19 13:25:53 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  Revert "qtdemux: Increment current stts index in all code paths after reading one chunk"
	  This reverts commit 99d5d7570d0b53dad3bc8eb653b1320ee422aace. It broke
	  playback of various valid files.

2017-01-19 07:52:33 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Increment current stts index in all code paths after reading one chunk
	  Otherwise we could read more chunks than there are available, doing an
	  out of bounds read and potentially crash.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777469

2017-01-13 16:40:43 +0100  Arnaud Vrac <avrac@freebox.fr>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: properly track redirections
	  The current code configures libsoup to handle redirections
	  transparently, without informing the caller, thus preventing the element
	  to record the redirect code and location uri.
	  Fix this by always setting the SOUP_MESSAGE_NO_REDIRECT, preventing
	  libsoup from handling the redirection. When we receive a redirection
	  request and libsoup can safely handle it, return a custom error which
	  triggers a retry with the new URI.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777222

2017-01-13 00:01:06 +1100  Jan Schmidt <jan@centricular.com>

	* gst/isomp4/gstqtmux.c:
	  qtmux: Don't reset request pad numbering across uses
	  When reset, don't restart request pad numberings, as
	  request pads can survive across state changes. Only
	  restart at 0 if all request pads are handed back first.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777174

2017-01-11 17:53:32 -0800  Andre McCurdy <armccurdy@gmail.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: free seqh after calling qtdemux_parse_svq3_stsd_data()
	  The seqh buffer allocated in qtdemux_parse_svq3_stsd_data() needs to
	  be freed by the caller after use.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777157
	  Signed-off-by: Andre McCurdy <armccurdy@gmail.com>

2017-01-16 15:17:15 +0100  Jean-Christophe Trotin <jean-christophe.trotin@st.com>

	* sys/v4l2/gstv4l2allocator.c:
	  v4l2allocator: fix memory type in allocator probe
	  The buffer memory type provided to the VIDIOC_CREATE_BUFS ioctl shall
	  be set with the value ("memory") given as input parameter of the
	  gst_v4l2_allocator_probe() function.
	  https://bugzilla.gnome.org/show_bug.cgi?id=777327

2016-11-11 14:31:03 +1100  Matthew Waters <matthew@centricular.com>

	* gst/autodetect/gstautodetect.c:
	  autodetect: bring the element state down after success
	  Otherwise some messages that are emitted by the element on NULL->READY
	  will not reach the application.
	  https://bugzilla.gnome.org/show_bug.cgi?id=764947

2016-04-24 21:38:51 +0900  Seungha Yang <sh.yang@lge.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Fix key_time in gst_qtdemux_adjust_seek()
	  time in segment should be PTS based (not DTS).
	  https://bugzilla.gnome.org/show_bug.cgi?id=765498

2017-01-07 23:55:42 +1100  Jan Schmidt <jan@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Don't reset output timestamps when no tfdt
	  If a fragmented stream doesn't have a tfdt, don't
	  reset the output timestamps at each fragment boundary
	  by erroneously using the default value of 0. Introduced
	  by commit 69fc48
	  https://bugzilla.gnome.org/show_bug.cgi?id=754230

2016-12-14 21:45:15 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Check if we have enough data available when parsing edit lists
	  Also consume the data entry by entry to get complicated indexing out of
	  the code.
	  https://bugzilla.gnome.org/show_bug.cgi?id=776107

2016-12-14 10:15:10 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Check that the XiTh size is big enough
	  https://bugzilla.gnome.org/show_bug.cgi?id=775794

2016-12-09 20:27:53 +0900  Heekyoung Seo <heekyoung.seo@lge.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Check node length of video sample description
	  Add check for node length of video sample description and its fields and
	  for the XiTh atom.
	  Also unify the code a bit.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775794

2016-12-11 13:27:27 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/audiofx/gstscaletempo.c:
	  scaletempo: Ensure to reinit buffers whenever they were not allocated yet
	  That is, whenever we go through start/stop we have to ensure that on the
	  next opportunity the buffers are reallocated again. Otherwise the
	  buffers might be NULL because the element was reused with the same
	  configuration as before (i.e. set_caps() wouldn't have reinited the
	  buffers).
	  https://bugzilla.gnome.org/show_bug.cgi?id=775898

2016-12-09 17:55:39 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/flx/gstflxdec.c:
	* gst/flx/gstflxdec.h:
	  flxdec: Only send SEGMENT events after CAPS
	  I.e., don't just forward the event but delay it if we don't have caps on
	  the srcpad yet.

2016-12-09 17:49:40 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/flx/gstflxdec.c:
	  flxdec: Unref and unmap buffers in all code paths as needed
	  https://bugzilla.gnome.org/show_bug.cgi?id=775888

2016-12-06 07:48:47 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/flx/gstflxdec.c:
	  flxdec: Allocate 0-initialized memory for the decoded frame
	  Otherwise we might leak arbitrary information from the uninitialized
	  memory if not every pixel is written.
	  https://scarybeastsecurity.blogspot.gr/2016/12/1days-0days-pocs-more-gstreamer-flic.html

2016-12-05 07:57:19 -0700  Matt Staples <staples255@gmail.com>

	* gst/rtsp/gstrtspsrc.c:
	  rtspsrc: Fix session cleanup when handling redirect on PLAY
	  Redirect on PLAY wasn't doing the necessary session cleanup. Fixed by
	  removing code from gst_rtspsrc_send that changed the state varable upon
	  encountering a redirect. Better to let the redirect handlers in
	  gst_rtspsrc_retrieve_sdp and gst_rtspsrc_play do their own
	  state-dependent cleanup.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775543

2016-12-01 17:08:09 +0100  Edward Hervey <bilboed@bilboed.com>

	* gst/rtpmanager/gstrtpjitterbuffer.c:
	* gst/rtpmanager/rtpjitterbuffer.c:
	  jitterbuffer: Don't leak duplicate items
	  When providing items with a seqnum, there is a (very small) probability
	  that an element with the same seqnum already exists. Don't forget
	  to free that item if it wasn't inserted.
	  And avoid returning undefined values when dealing with duplicate items

2016-11-03 15:03:59 +0100  Havard Graff <havard.graff@gmail.com>

	* gst/rtpmanager/gstrtpjitterbuffer.c:
	* tests/check/elements/rtpjitterbuffer.c:
	  rtpjitterbuffer: fix timer-reuse bug
	  When doing rtx, the jitterbuffer will always add an rtx-timer for the next
	  sequence number.
	  In the case of the packet corresponding to that sequence number arriving,
	  that same timer will be reused, and simply moved on to wait for the
	  following sequence number etc.
	  Once an rtx-timer expires (after all retries), it will be rescheduled as
	  a lost-timer instead for the same sequence number.
	  Now, if this particular sequence-number now arrives (after the timer has
	  become a lost-timer), the reuse mechanism *should* now set a new
	  rtx-timer for the next sequence number, but the bug is that it does
	  not change the timer-type, and hence schedules a lost-timer for that
	  following sequence number, with the result that you will have a very
	  early lost-event for a packet that might still arrive, and you will
	  never be able to send any rtx for this packet.
	  Found by Erlend Graff - erlend@pexip.com
	  https://bugzilla.gnome.org/show_bug.cgi?id=773891

2016-10-09 15:59:05 +0200  Havard Graff <havard.graff@gmail.com>

	* gst/rtpmanager/gstrtpjitterbuffer.c:
	* gst/rtpmanager/rtpjitterbuffer.c:
	* gst/rtpmanager/rtpjitterbuffer.h:
	* tests/check/elements/rtpjitterbuffer.c:
	  rtpjitterbuffer: fix lost-event using dts instead of pts
	  The lost-event was using a different time-domain (dts) than the outgoing
	  buffers (pts). Given certain network-conditions these two would become
	  sufficiently different and the lost-event contained timestamp/duration
	  that was really wrong. As an example GstAudioDecoder could produce
	  a stream that jumps back and forth in time after receiving a lost-event.
	  The previous behavior calculated the pts (based on the rtptime) inside the
	  rtp_jitter_buffer_insert function, but now this functionality has been
	  refactored into a new function rtp_jitter_buffer_calculate_pts that is
	  called much earlier in the _chain function to make pts available to
	  various calculations that wrongly used dts previously
	  (like the lost-event).
	  There are however two calculations where using dts is the right thing to
	  do: calculating the receive-jitter and the rtx-round-trip-time, where the
	  arrival time of the buffer from the network is the right metric
	  (and is what dts in fact is today).
	  The patch also adds two tests regarding B-frames or the
	  “rtptime-going-backwards”-scenario, as there were some concerns that this
	  patch might break this behavior (which the tests shows it does not).

2016-11-03 16:33:53 +0100  Havard Graff <havard.graff@gmail.com>

	* gst/rtpmanager/gstrtpjitterbuffer.c:
	* tests/check/elements/rtpjitterbuffer.c:
	  rtpjitterbuffer: fix bug in reschedule_timer
	  The new timeout is always going to be (timeout + delay), however, the
	  old behavior compared the current timeout to just (timeout), basically
	  being (delay) off.
	  This would happen if rtx-delay == rtx-retry-timeout, with the result that
	  a second rtx attempt for any buffers would be scheduled immediately instead
	  of after rtx-delay ms.
	  Simply calculate (new_timeout = timeout + delay) and then use that instead.
	  https://bugzilla.gnome.org/show_bug.cgi?id=773905

2016-12-01 15:06:06 +0530  Garima Gaur <garima.g@samsung.com>

	* gst/rtp/gstrtph264depay.c:
	* gst/rtp/gstrtpsbcdepay.c:
	  rtp: Fix some memory leaks in usage of gst_pad_get_current_caps()
	  https://bugzilla.gnome.org/show_bug.cgi?id=775071

2016-12-01 11:23:02 +0100  Edward Hervey <edward@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Sanitize unknown codec caps
	  We might have non-printable characters in the unknown fourcc, replace
	  them with '_', in the same way we do it for unknown tags.

2016-12-01 20:04:28 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/avi/gstavidemux.c:
	  avidemux: Free vprp chunk also if it existed but we made no use of it
	  https://bugzilla.gnome.org/show_bug.cgi?id=775479

2016-12-01 17:38:33 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/matroska/matroska-read-common.c:
	  matroskademux: Fix memory leak when parsing attachments
	  gst_tag_image_data_to_image_sample() does not take ownership of the
	  passed memory, so don't set it to NULL to allow us to free it later.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775472

2016-12-01 14:56:18 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/matroska/matroska-read-common.c:
	  matroskademux: Unify zlib/bzip2 decompress loops with the ones from qtdemux
	  Especially, simplify the code a bit.

2016-12-01 14:41:48 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Increase inflate buffer in bigger steps
	  1024 bytes is quite small, let's do 4096 bytes (or one page).
	  Also remove redundant if, we're always in that case when getting here.

2016-12-01 14:30:49 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Ensure that size of the pasp atom is as much as we need
	  https://bugzilla.gnome.org/show_bug.cgi?id=775455

2016-12-01 14:27:55 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Fix zlib inflate loop
	  Handle errors cleanly, deallocate all memory and return the actual size
	  of the inflated data.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775455

2016-12-01 14:30:10 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Free compressed moov node and it's corresponding decompressed data
	  https://bugzilla.gnome.org/show_bug.cgi?id=775455

2016-12-01 14:29:21 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Check size of compressed MOOV header against available data
	  And actually read the size of the cmvd atom from the right position.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775455

2016-12-01 13:38:16 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/audioparsers/gstaacparse.c:
	  aacparse: Make sure we have enough data in the codec_data to be able to parse it
	  Also error out cleanly if mapping the buffer failed.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775450

2016-12-01 13:32:22 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Fix out of bounds read in tag parsing code
	  We can't simply assume that the length of the tag value as given
	  inside the stream is correct but should also check against the amount of
	  data we have actually available.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775451

2016-10-26 13:21:29 +0200  Alejandro G. Castro <alex@igalia.com>

	* gst/rtpmanager/gstrtpsession.c:
	* gst/rtpmanager/rtpsession.c:
	* gst/rtpmanager/rtpsession.h:
	  rtpbin: pipeline gets an EOS when any rtpsources byes
	  Instead of sending EOS when a source byes we have to wait for
	  all the sources to be gone, which means they already sent BYE and
	  were removed from the session. We now handle the EOS in the rtcp
	  loop checking the amount of sources in the session.
	  https://bugzilla.gnome.org/show_bug.cgi?id=773218

2016-10-24 16:56:31 +0000  Enrique Ocaña González <eocanha@igalia.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Use the tfdt decode time on byte streams when it's significantly different than the time in the last sample
	  We consider there's a sifnificant difference when it's larger than on second
	  or than half the duration of the last processed fragment in case the latter is
	  larger.
	  https://bugzilla.gnome.org/show_bug.cgi?id=754230

=== release 1.10.2 ===

2016-11-29 16:21:19 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* configure.ac:
	* docs/plugins/gst-plugins-good-plugins.args:
	* docs/plugins/inspect/plugin-1394.xml:
	* docs/plugins/inspect/plugin-aasink.xml:
	* docs/plugins/inspect/plugin-alaw.xml:
	* docs/plugins/inspect/plugin-alpha.xml:
	* docs/plugins/inspect/plugin-alphacolor.xml:
	* docs/plugins/inspect/plugin-apetag.xml:
	* docs/plugins/inspect/plugin-audiofx.xml:
	* docs/plugins/inspect/plugin-audioparsers.xml:
	* docs/plugins/inspect/plugin-auparse.xml:
	* docs/plugins/inspect/plugin-autodetect.xml:
	* docs/plugins/inspect/plugin-avi.xml:
	* docs/plugins/inspect/plugin-cacasink.xml:
	* docs/plugins/inspect/plugin-cairo.xml:
	* docs/plugins/inspect/plugin-cutter.xml:
	* docs/plugins/inspect/plugin-debug.xml:
	* docs/plugins/inspect/plugin-deinterlace.xml:
	* docs/plugins/inspect/plugin-dtmf.xml:
	* docs/plugins/inspect/plugin-dv.xml:
	* docs/plugins/inspect/plugin-effectv.xml:
	* docs/plugins/inspect/plugin-equalizer.xml:
	* docs/plugins/inspect/plugin-flac.xml:
	* docs/plugins/inspect/plugin-flv.xml:
	* docs/plugins/inspect/plugin-flxdec.xml:
	* docs/plugins/inspect/plugin-gdkpixbuf.xml:
	* docs/plugins/inspect/plugin-goom.xml:
	* docs/plugins/inspect/plugin-goom2k1.xml:
	* docs/plugins/inspect/plugin-icydemux.xml:
	* docs/plugins/inspect/plugin-id3demux.xml:
	* docs/plugins/inspect/plugin-imagefreeze.xml:
	* docs/plugins/inspect/plugin-interleave.xml:
	* docs/plugins/inspect/plugin-isomp4.xml:
	* docs/plugins/inspect/plugin-jack.xml:
	* docs/plugins/inspect/plugin-jpeg.xml:
	* docs/plugins/inspect/plugin-level.xml:
	* docs/plugins/inspect/plugin-matroska.xml:
	* docs/plugins/inspect/plugin-mulaw.xml:
	* docs/plugins/inspect/plugin-multifile.xml:
	* docs/plugins/inspect/plugin-multipart.xml:
	* docs/plugins/inspect/plugin-navigationtest.xml:
	* docs/plugins/inspect/plugin-oss4.xml:
	* docs/plugins/inspect/plugin-ossaudio.xml:
	* docs/plugins/inspect/plugin-png.xml:
	* docs/plugins/inspect/plugin-pulseaudio.xml:
	* docs/plugins/inspect/plugin-replaygain.xml:
	* docs/plugins/inspect/plugin-rtp.xml:
	* docs/plugins/inspect/plugin-rtpmanager.xml:
	* docs/plugins/inspect/plugin-rtsp.xml:
	* docs/plugins/inspect/plugin-shapewipe.xml:
	* docs/plugins/inspect/plugin-shout2send.xml:
	* docs/plugins/inspect/plugin-smpte.xml:
	* docs/plugins/inspect/plugin-soup.xml:
	* docs/plugins/inspect/plugin-spectrum.xml:
	* docs/plugins/inspect/plugin-speex.xml:
	* docs/plugins/inspect/plugin-taglib.xml:
	* docs/plugins/inspect/plugin-udp.xml:
	* docs/plugins/inspect/plugin-video4linux2.xml:
	* docs/plugins/inspect/plugin-videobox.xml:
	* docs/plugins/inspect/plugin-videocrop.xml:
	* docs/plugins/inspect/plugin-videofilter.xml:
	* docs/plugins/inspect/plugin-videomixer.xml:
	* docs/plugins/inspect/plugin-vpx.xml:
	* docs/plugins/inspect/plugin-wavenc.xml:
	* docs/plugins/inspect/plugin-wavpack.xml:
	* docs/plugins/inspect/plugin-wavparse.xml:
	* docs/plugins/inspect/plugin-ximagesrc.xml:
	* docs/plugins/inspect/plugin-y4menc.xml:
	* gst-plugins-good.doap:
	* win32/common/config.h:
	  Release 1.10.2

2016-11-29 15:34:11 +0200  Sebastian Dröge <sebastian@centricular.com>

	* po/af.po:
	* po/az.po:
	* po/bg.po:
	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_GB.po:
	* po/eo.po:
	* po/es.po:
	* po/eu.po:
	* po/fi.po:
	* po/fr.po:
	* po/gl.po:
	* po/hr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/lt.po:
	* po/lv.po:
	* po/mt.po:
	* po/nb.po:
	* po/nl.po:
	* po/or.po:
	* po/pl.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sk.po:
	* po/sl.po:
	* po/sq.po:
	* po/sr.po:
	* po/sv.po:
	* po/tr.po:
	* po/uk.po:
	* po/vi.po:
	* po/zh_CN.po:
	* po/zh_HK.po:
	* po/zh_TW.po:
	  Update .po files

2016-11-29 14:09:44 +0200  Sebastian Dröge <sebastian@centricular.com>

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

2016-11-28 13:51:41 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/avi/gstavidemux.c:
	  avidemux: Ensure that tags are valid UTF-8 before adding them to the taglist
	  https://bugzilla.gnome.org/show_bug.cgi?id=775219

2016-11-28 12:22:49 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/multipart/multipartdemux.c:
	  multipartdemux: Post an error message on the bus if we got EOS without having added any pads

2016-11-28 12:00:09 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: Handle non-UTF8 headers and error reasons more gracefully
	  Especially don't put them into GstStructures in one way or another, just
	  ignore them or error out cleanly depending on the importance of their
	  content.

2016-11-28 09:30:25 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/rtp/gstrtpvrawpay.c:
	  vrawpay: Error out cleanly if mapping the video frame fails
	  Instead of later dereferencing NULL and crashing.

2016-07-28 18:51:24 +0200  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/gstv4l2bufferpool.c:
	  gstv4l2bufferpool: lock flush_stop against regular qbuf
	  These can be called from different threads and both manipulate the
	  pool->buffers array. Lock them properly and let flush_stop move the
	  array contents into a temporary array on the stack to avoid having
	  to call release_buffer under the object lock.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775015

2016-11-24 14:25:22 +0100  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/gstv4l2bufferpool.c:
	  gstv4l2bufferpool: remove critical error message when process is called on an inactive pool
	  If the pool is inactive, it is guaranteed to also be flushing, so the
	  following check will return GST_FLOW_FLUSHING anyway.
	  This can happen if a v4l2src is blocking on DQBUF in create and is sent
	  an EOS event on another thread. In that case the pool is set to
	  flushing/inactive without locking, the v4l2src is unblocked, and may
	  call pool_process with a valid buffer on the already inactive pool.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775014

2016-11-24 14:41:52 +0100  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/gstv4l2src.c:
	  v4l2src: release buffer if create fails
	  gst_base_src_get_range does not expect a buffer to be returned in
	  the error case, so we are leaking a reference here if create fails.
	  https://bugzilla.gnome.org/show_bug.cgi?id=775014

2016-11-20 13:08:27 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Ensure that raw audio and video have properly aligned buffers
	  That is, aligned to the basic type for audio and to 32 bytes for video.
	  Fixes crashes if the raw buffers are passed to SIMD processing functions.
	  https://bugzilla.gnome.org/show_bug.cgi?id=774428

2016-11-20 13:14:08 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/avi/gstavidemux.c:
	* gst/avi/gstavidemux.h:
	  avidemux: Ensure that raw video have properly aligned buffers
	  That is, aligned to to 32 bytes for video. Fixes crashes if the raw
	  buffers are passed to SIMD processing functions.
	  https://bugzilla.gnome.org/show_bug.cgi?id=774428

2016-10-26 12:46:28 +0530  Jagadish <jagadishkamathk@gmail.com>

	* ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
	  gdkpixbufoverlay: Fixing x and y offset computation
	  While computing the x and y offsets, it's the video resolution and
	  resized overlay resolution to be used instead of actual overlay image
	  resoltuion. Due to this, the overlay image used to get wrongly overlayed
	  in undesired location
	  https://bugzilla.gnome.org/show_bug.cgi?id=757292

2016-11-22 20:33:29 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/vpx/gstvpxdec.c:
	  vpxdec: libvpx's release buffer is sometimes called with fb->priv==NULL
	  Don't assert on this but just ignore these cases.

2016-11-22 20:24:59 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/matroska/matroska-demux.c:
	  matroskademux: Fix cluster searching if we search multiple times in one chunk
	  After finding a cluster id in the byte reader, we skip ahead the reader
	  position by one further byte to be able to continue searching from there
	  inside the same chunk if the cluster candidate was a false positive.
	  We have to accomodate for that additional byte when resuming the search,
	  otherwise all following pulls are off-by-one for every resume and we run
	  into an assertion.

2016-11-22 20:01:20 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/matroska/matroska-ids.c:
	  matroska: Add size checks to the parsing of FLAC headers

2016-11-23 07:09:06 +1100  Matthew Waters <matthew@centricular.com>

	* gst/flx/flx_color.c:
	* gst/flx/flx_fmt.h:
	* gst/flx/gstflxdec.c:
	* gst/flx/gstflxdec.h:
	  flxdec: rewrite logic based on GstByteReader/Writer
	  Solves overreading/writing the given arrays and will error out if the
	  streams asks to do that.
	  Also does more error checking that the stream is valid and won't
	  overrun any allocated arrays.  Also mitigate integer overflow errors
	  calculating allocation sizes.
	  https://bugzilla.gnome.org/show_bug.cgi?id=774859

2016-11-23 11:20:49 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/flx/gstflxdec.c:
	  flxdec: Don't unref() parent in the chain function
	  We don't own the reference here, it is owned by the caller and given to
	  us for the scope of this function. Leftover mistake from 0.10 porting.
	  https://bugzilla.gnome.org/show_bug.cgi?id=774897

2016-11-22 23:46:00 +1100  Matthew Waters <matthew@centricular.com>

	* gst/flx/gstflxdec.c:
	  flxdec: fix some warnings comparing unsigned < 0
	  bf43f44fcfada5ec4a3ce60cb374340486fe9fac was comparing an unsigned
	  expression to be < 0 which was always false.
	  gstflxdec.c: In function ‘flx_decode_brun’:
	  gstflxdec.c:322:33: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
	  if ((glong) row - count < 0) {
	  ^
	  gstflxdec.c:332:33: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
	  if ((glong) row - count < 0) {
	  ^
	  https://bugzilla.gnome.org/show_bug.cgi?id=774834

2016-11-22 19:05:00 +1100  Matthew Waters <matthew@centricular.com>

	* gst/flx/gstflxdec.c:
	  flxdec: add some write bounds checking
	  Without checking the bounds of the frame we are writing into, we can
	  write off the end of the destination buffer.
	  https://scarybeastsecurity.blogspot.dk/2016/11/0day-exploit-advancing-exploitation.html
	  https://bugzilla.gnome.org/show_bug.cgi?id=774834

2016-11-20 14:53:18 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  meson: update version

=== release 1.10.1 ===

2016-11-17 15:52:38 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* configure.ac:
	* docs/plugins/gst-plugins-good-plugins.args:
	* docs/plugins/inspect/plugin-1394.xml:
	* docs/plugins/inspect/plugin-aasink.xml:
	* docs/plugins/inspect/plugin-alaw.xml:
	* docs/plugins/inspect/plugin-alpha.xml:
	* docs/plugins/inspect/plugin-alphacolor.xml:
	* docs/plugins/inspect/plugin-apetag.xml:
	* docs/plugins/inspect/plugin-audiofx.xml:
	* docs/plugins/inspect/plugin-audioparsers.xml:
	* docs/plugins/inspect/plugin-auparse.xml:
	* docs/plugins/inspect/plugin-autodetect.xml:
	* docs/plugins/inspect/plugin-avi.xml:
	* docs/plugins/inspect/plugin-cacasink.xml:
	* docs/plugins/inspect/plugin-cairo.xml:
	* docs/plugins/inspect/plugin-cutter.xml:
	* docs/plugins/inspect/plugin-debug.xml:
	* docs/plugins/inspect/plugin-deinterlace.xml:
	* docs/plugins/inspect/plugin-dtmf.xml:
	* docs/plugins/inspect/plugin-dv.xml:
	* docs/plugins/inspect/plugin-effectv.xml:
	* docs/plugins/inspect/plugin-equalizer.xml:
	* docs/plugins/inspect/plugin-flac.xml:
	* docs/plugins/inspect/plugin-flv.xml:
	* docs/plugins/inspect/plugin-flxdec.xml:
	* docs/plugins/inspect/plugin-gdkpixbuf.xml:
	* docs/plugins/inspect/plugin-goom.xml:
	* docs/plugins/inspect/plugin-goom2k1.xml:
	* docs/plugins/inspect/plugin-icydemux.xml:
	* docs/plugins/inspect/plugin-id3demux.xml:
	* docs/plugins/inspect/plugin-imagefreeze.xml:
	* docs/plugins/inspect/plugin-interleave.xml:
	* docs/plugins/inspect/plugin-isomp4.xml:
	* docs/plugins/inspect/plugin-jack.xml:
	* docs/plugins/inspect/plugin-jpeg.xml:
	* docs/plugins/inspect/plugin-level.xml:
	* docs/plugins/inspect/plugin-matroska.xml:
	* docs/plugins/inspect/plugin-mulaw.xml:
	* docs/plugins/inspect/plugin-multifile.xml:
	* docs/plugins/inspect/plugin-multipart.xml:
	* docs/plugins/inspect/plugin-navigationtest.xml:
	* docs/plugins/inspect/plugin-oss4.xml:
	* docs/plugins/inspect/plugin-ossaudio.xml:
	* docs/plugins/inspect/plugin-png.xml:
	* docs/plugins/inspect/plugin-pulseaudio.xml:
	* docs/plugins/inspect/plugin-replaygain.xml:
	* docs/plugins/inspect/plugin-rtp.xml:
	* docs/plugins/inspect/plugin-rtpmanager.xml:
	* docs/plugins/inspect/plugin-rtsp.xml:
	* docs/plugins/inspect/plugin-shapewipe.xml:
	* docs/plugins/inspect/plugin-shout2send.xml:
	* docs/plugins/inspect/plugin-smpte.xml:
	* docs/plugins/inspect/plugin-soup.xml:
