Imported Upstream version 1.8.3
diff --git a/ChangeLog b/ChangeLog
index 2cb78ab..e66d1be 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,454 @@
-=== release 1.8.2 ===
+=== release 1.8.3 ===
 
-2016-06-09  Sebastian Dröge <slomo@coaxion.net>
+2016-08-19  Sebastian Dröge <slomo@coaxion.net>
 
 	* configure.ac:
-	  releasing 1.8.2
+	  releasing 1.8.3
+
+2016-08-19 11:57:57 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/af.po:
+	* po/az.po:
+	* po/bg.po:
+	* po/ca.po:
+	* po/cs.po:
+	* po/da.po:
+	* po/de.po:
+	* po/el.po:
+	* po/en_GB.po:
+	* po/eo.po:
+	* po/es.po:
+	* po/eu.po:
+	* po/fi.po:
+	* po/fr.po:
+	* po/gl.po:
+	* po/hr.po:
+	* po/hu.po:
+	* po/id.po:
+	* po/it.po:
+	* po/ja.po:
+	* po/lt.po:
+	* po/lv.po:
+	* po/mt.po:
+	* po/nb.po:
+	* po/nl.po:
+	* po/or.po:
+	* po/pl.po:
+	* po/pt_BR.po:
+	* po/ro.po:
+	* po/ru.po:
+	* po/sk.po:
+	* po/sl.po:
+	* po/sq.po:
+	* po/sr.po:
+	* po/sv.po:
+	* po/tr.po:
+	* po/uk.po:
+	* po/vi.po:
+	* po/zh_CN.po:
+	* po/zh_HK.po:
+	* po/zh_TW.po:
+	  Update .po files
+
+2016-08-17 09:49:04 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/rtsp/gstrtspsrc.c:
+	  rtspsrc: Allow mimetypes with properties as long as they're application/sdp
+	  Some servers add properties like charset, e.g.
+	  application/sdp; charset=utf8
+	  Ideally we should also parse the charset and do conversion of all messages,
+	  but that's for a later time.
+
+2016-08-11 16:32:21 -0600  Thomas Bluemel <tbluemel@control4.com>
+
+	* gst/udp/gstmultiudpsink.c:
+	  multiudpsink: Initialize bytes_sent field.
+	  This fixes endpoints not receiving any data intermittently.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=769773
+
+2016-08-10 11:26:17 -0600  Thomas Bluemel <tbluemel@control4.com>
+
+	* gst/rtpmanager/rtpjitterbuffer.c:
+	  rtpjitterbuffer: Don't warn for duplicate packets
+	  This is a normal scenario and should not be a warning.  This can
+	  happen frequently when re-transmits of lost packets are enabled.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=762208
+
+2016-08-08 13:49:19 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	  splitmux: Fix typo converting to running time.
+	  Use the correct collected timestamp.
+
+2016-08-08 02:53:48 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	* gst/multifile/gstsplitmuxsink.h:
+	  Revert "splitmuxsink: Use GstBin async-handling instead of our own."
+	  This reverts commit fa008f271a52f82dededc28bd81b020ca7939b47.
+	  async-handling in GstBin causes the pipeline to spin at 100%
+	  CPU as the top-level pipeline tries to change that state
+	  to PLAYING constantly. This is a workaround for a core
+	  problem, essentially, but an improvement in this case for now.
+
+2016-08-08 00:56:38 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	  splitmux: Recheck state after unlocking mutex.
+	  After dropping the splitmux lock, re-check the state,
+	  don't just fall through and sleep unconditionally,
+	  as we may have already missed the wakeup.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=769514
+
+2016-08-03 03:32:07 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsrc.c:
+	  splitmuxsrc: Don't stop and error on EOS flow return
+	  Don't immediately halt on EOS flow return from downstream
+	  due to out of segment. Let the demuxer handle it and send
+	  EOS.
+
+2016-07-25 18:20:03 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	  splitmuxsink: Fix debug statement signedness.
+	  The ts variable is a GstClockTime, don't print it
+	  as a GstClockTimeDiff.
+
+2016-07-17 22:41:02 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	* gst/multifile/gstsplitmuxsink.h:
+	  splitmuxsink: Handle negative running time
+	  Use signed clock times for running time everywhere
+	  so that we handle negative running times without
+	  going haywire, similar to what queue and multiqueue
+	  do these days.
+
+2016-07-18 00:12:55 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	  splitmuxsink: Drop lock when sending dummy event
+	  When pushing the dummy event into the multiqueue,
+	  drop the splitmux lock or else we might deadlock.
+
+2016-07-25 13:34:02 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/rtp/gstrtpbvpay.c:
+	* gst/rtp/gstrtpceltpay.c:
+	* gst/rtp/gstrtpg722pay.c:
+	* gst/rtp/gstrtph263ppay.c:
+	* gst/rtp/gstrtph265pay.c:
+	* gst/rtp/gstrtpilbcpay.c:
+	  rtp: Filter with the filter caps in the payloader's getcaps
+
+2016-06-30 01:56:41 +1000  Jan Schmidt <thaytan@noraisin.net>
+
+	* gst/rtp/gstrtph264pay.c:
+	  rtph264pay: Intersect with filter caps in getcaps function.
+	  Always intersect with the filter caps in the getcaps function
+	  to make sure we return a subset of what was requested.
+	  Other payloaders also have this problem and need fixing
+	  in future commits.
+
+2016-06-30 14:40:40 +0200  Thomas Scheuermann <Thomas.Scheuermann@barco.com>
+
+	* ext/jack/gstjackaudioclient.c:
+	  jack: don't wait for callbacks if the jack server shut down
+	  Otherwise we'll wait forever.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=747275
+
+2016-07-07 18:23:07 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/matroska/matroska-mux.c:
+	  matroskamux: Error out if we start writing data with some pads not having a codec id yet
+	  This can only happen if a) upstream somehow gets around the CAPS event failing
+	  or b) there never being any CAPS event.
+	  The following code assumes that all pads have a codec-id.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=768509
+
+2016-07-04 17:45:40 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* tests/check/elements/qtmux.c:
+	  qtmux: Use complete AAC caps with codec_data in the tests
+
+2016-07-04 16:58:38 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/audioparsers/gstaacparse.c:
+	  aacparse: Reject raw AAC if no codec_data is found in the caps
+	  If necessary, a demuxer will have to invent something here but this is only a
+	  problem with non-conformant files anyway.
+
+2016-07-04 16:55:32 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/isomp4/qtdemux.c:
+	  qtdemux: Invent AAC codec_data if none is present
+	  Without, raw AAC can't be handled and we have some information available in
+	  the decoder that most likely allows us to decode the stream in one way or
+	  another. This is the same code already used by matroskademux for the same
+	  reasons, and ffmpeg/vlc play such files just fine too by guesswork.
+
+2016-07-04 14:54:13 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/isomp4/gstqtmux.c:
+	  qtmux: Reject raw AAC caps without codec_data
+	  The resulting file is not going to be playable without guesswork and raw caps
+	  should always have codec_data.
+
+2016-07-05 21:11:35 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/rtsp/gstrtspsrc.c:
+	  rtspsrc: Set to PLAYING after a seek again after setting up the segment and everything else
+	  There's a small window for a race condition otherwise.
+
+2016-07-01 10:05:00 +0000  Brad Lackey <blackey@gmail.com>
+
+	* gst/rtsp/gstrtspsrc.c:
+	  rtspsrc: Don't disable UDP protocols on redirecting
+	  https://bugzilla.gnome.org/show_bug.cgi?id=768232
+
+2016-07-10 21:30:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/udp/gstudpsrc.c:
+	  udpsrc: Use correct in6_pktinfo struct instead of in_pktinfo
+	  Fixes the build on FreeBSD, which does not have the latter.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=768623
+
+2016-07-08 12:30:10 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* sys/v4l2/gstv4l2.c:
+	* sys/v4l2/gstv4l2bufferpool.c:
+	* sys/v4l2/gstv4l2deviceprovider.c:
+	* sys/v4l2/gstv4l2object.c:
+	* sys/v4l2/gstv4l2object.h:
+	* sys/v4l2/gstv4l2radio.c:
+	* sys/v4l2/gstv4l2sink.c:
+	* sys/v4l2/v4l2_calls.c:
+	  Revert "v4l2: use opened device caps instead of physical device ones"
+	  This reverts commit d6c8cb63859368e7100b0002354ad742e4286eba.
+	  Apparently this was not fully tested and cause regressions.
+
+2016-07-02 01:56:07 -0700  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
+
+	* sys/v4l2/gstv4l2.c:
+	* sys/v4l2/gstv4l2bufferpool.c:
+	* sys/v4l2/gstv4l2deviceprovider.c:
+	* sys/v4l2/gstv4l2object.c:
+	* sys/v4l2/gstv4l2object.h:
+	* sys/v4l2/gstv4l2radio.c:
+	* sys/v4l2/gstv4l2sink.c:
+	* sys/v4l2/v4l2_calls.c:
+	  v4l2: use opened device caps instead of physical device ones
+	  The same physical device can export multiple devices. In
+	  this case, the capabilities field now contains a union of
+	  all caps available from all exported V4L2 devices alongside
+	  a V4L2_CAP_DEVICE_CAPS flag that should be used to decide
+	  what capabilities to consider. In our case, we need the
+	  ones from the exported device we are using.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=768195
+
+2016-07-01 17:28:17 +0900  Seungha Yang <sh.yang@lge.com>
+
+	* gst/isomp4/qtdemux.c:
+	  qtdemux: Push caps only when it was updated
+	  Commit 7873bede3134b15e5066e8d14e54d1f5054d2063 caused new caps
+	  event per moof without consideration of duplication.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=768268
+
+2016-06-30 15:01:46 +0200  Jonas Holmberg <jonashg@axis.com>
+
+	* gst/rtp/gstrtph265depay.c:
+	  rtph265depay: fix invalid memory access
+	  10 bytes was allocated for stream_format but size of "byte-stream" is
+	  more. Use g_strdup() instead.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=753760
+
+2016-06-28 16:44:50 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/udp/gstudpsrc.c:
+	  udpsrc: Windows has no ipi_spec_dst in struct in_pktinfo
+
+2016-06-28 15:15:14 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/udp/gstudpsrc.c:
+	  udpsrc: #define __APPLE_USE_RFC_3542 to be able to use IPV6_PKTINFO on OSX/iOS
+
+2016-06-28 15:08:04 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/udp/gstudpsrc.c:
+	  udpsrc: Move #includes around to a) work around broken glibc header and b) Windows
+
+2016-06-28 14:25:03 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/udp/gstudpsrc.c:
+	  udpsrc: Fix compilation on Windows and *BSD/OSX
+
+2016-06-23 20:21:59 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/udp/gstudpsrc.c:
+	  udpsrc: Filter out multicast packets that are not for our multicast address
+	  https://bugzilla.gnome.org/show_bug.cgi?id=767980
+
+2016-06-28 10:57:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/rtsp/gstrtspsrc.c:
+	  rtspsrc: When seeking, consider the current element state or pending state instead of the RTSP state
+	  If we consider the RTSP state, what can happen is that it is PLAYING but the
+	  element already asynchronously tried to PAUSE and it just did not happen yet.
+	  We would then override this setting to PAUSED (while the element actually is
+	  in PAUSED) and set the RTSP state to PLAYING again. This would then cause us
+	  to produce packets while the sinks are all PAUSED, piling up thousands of
+	  packets in the rtpjitterbuffer and other elements and finally failing.
+
+2016-06-17 16:08:08 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/isomp4/gstqtmux.c:
+	  qtmux: The prores variant is stored in the variant field, not format
+	  And the caps in the sink pad template already used variant (only).
+
+2016-05-23 10:18:48 +0200  Miguel París Díaz <mparisdiaz@gmail.com>
+
+	* gst/rtpmanager/rtpsession.c:
+	  rtpsession: take the lock when changing stats
+	  https://bugzilla.gnome.org/show_bug.cgi?id=766025
+
+2016-06-15 11:19:43 +0200  Jürgen Slowack <jurgen.slowack@barco.com>
+
+	* gst/rtp/gstrtph265pay.c:
+	  rtph265: fix NAL unit type parsing and SPS/PPS/VPS detection
+	  Fixes sps/pps/vps insertion via the config-interval property.
+	  https://bugzilla.gnome.org//show_bug.cgi?id=767680
+
+2016-06-10 13:42:01 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/flv/gstflvdemux.c:
+	  flvdemux: fix date parsing when there are trailing spaces
+	  Fixes parsing of "Thu May 11 15:57:46 2006 ".
+	  https://bugzilla.gnome.org/show_bug.cgi?id=767496
+
+=== release 1.8.2 ===
+
+2016-06-09 11:51:12 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* ChangeLog:
+	* NEWS:
+	* RELEASE:
+	* configure.ac:
+	* docs/plugins/gst-plugins-good-plugins.args:
+	* docs/plugins/inspect/plugin-1394.xml:
+	* docs/plugins/inspect/plugin-aasink.xml:
+	* docs/plugins/inspect/plugin-alaw.xml:
+	* docs/plugins/inspect/plugin-alpha.xml:
+	* docs/plugins/inspect/plugin-alphacolor.xml:
+	* docs/plugins/inspect/plugin-apetag.xml:
+	* docs/plugins/inspect/plugin-audiofx.xml:
+	* docs/plugins/inspect/plugin-audioparsers.xml:
+	* docs/plugins/inspect/plugin-auparse.xml:
+	* docs/plugins/inspect/plugin-autodetect.xml:
+	* docs/plugins/inspect/plugin-avi.xml:
+	* docs/plugins/inspect/plugin-cacasink.xml:
+	* docs/plugins/inspect/plugin-cairo.xml:
+	* docs/plugins/inspect/plugin-cutter.xml:
+	* docs/plugins/inspect/plugin-debug.xml:
+	* docs/plugins/inspect/plugin-deinterlace.xml:
+	* docs/plugins/inspect/plugin-dtmf.xml:
+	* docs/plugins/inspect/plugin-dv.xml:
+	* docs/plugins/inspect/plugin-effectv.xml:
+	* docs/plugins/inspect/plugin-equalizer.xml:
+	* docs/plugins/inspect/plugin-flac.xml:
+	* docs/plugins/inspect/plugin-flv.xml:
+	* docs/plugins/inspect/plugin-flxdec.xml:
+	* docs/plugins/inspect/plugin-gdkpixbuf.xml:
+	* docs/plugins/inspect/plugin-goom.xml:
+	* docs/plugins/inspect/plugin-goom2k1.xml:
+	* docs/plugins/inspect/plugin-icydemux.xml:
+	* docs/plugins/inspect/plugin-id3demux.xml:
+	* docs/plugins/inspect/plugin-imagefreeze.xml:
+	* docs/plugins/inspect/plugin-interleave.xml:
+	* docs/plugins/inspect/plugin-isomp4.xml:
+	* docs/plugins/inspect/plugin-jack.xml:
+	* docs/plugins/inspect/plugin-jpeg.xml:
+	* docs/plugins/inspect/plugin-level.xml:
+	* docs/plugins/inspect/plugin-matroska.xml:
+	* docs/plugins/inspect/plugin-mulaw.xml:
+	* docs/plugins/inspect/plugin-multifile.xml:
+	* docs/plugins/inspect/plugin-multipart.xml:
+	* docs/plugins/inspect/plugin-navigationtest.xml:
+	* docs/plugins/inspect/plugin-oss4.xml:
+	* docs/plugins/inspect/plugin-ossaudio.xml:
+	* docs/plugins/inspect/plugin-png.xml:
+	* docs/plugins/inspect/plugin-pulseaudio.xml:
+	* docs/plugins/inspect/plugin-replaygain.xml:
+	* docs/plugins/inspect/plugin-rtp.xml:
+	* docs/plugins/inspect/plugin-rtpmanager.xml:
+	* docs/plugins/inspect/plugin-rtsp.xml:
+	* docs/plugins/inspect/plugin-shapewipe.xml:
+	* docs/plugins/inspect/plugin-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.8.2
+
+2016-06-09 11:20:54 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/af.po:
+	* po/az.po:
+	* po/bg.po:
+	* po/ca.po:
+	* po/cs.po:
+	* po/da.po:
+	* po/de.po:
+	* po/el.po:
+	* po/en_GB.po:
+	* po/eo.po:
+	* po/es.po:
+	* po/eu.po:
+	* po/fi.po:
+	* po/fr.po:
+	* po/gl.po:
+	* po/hr.po:
+	* po/hu.po:
+	* po/id.po:
+	* po/it.po:
+	* po/ja.po:
+	* po/lt.po:
+	* po/lv.po:
+	* po/mt.po:
+	* po/nb.po:
+	* po/nl.po:
+	* po/or.po:
+	* po/pl.po:
+	* po/pt_BR.po:
+	* po/ro.po:
+	* po/ru.po:
+	* po/sk.po:
+	* po/sl.po:
+	* po/sq.po:
+	* po/sr.po:
+	* po/sv.po:
+	* po/tr.po:
+	* po/uk.po:
+	* po/vi.po:
+	* po/zh_CN.po:
+	* po/zh_HK.po:
+	* po/zh_TW.po:
+	  Update .po files
 
 2016-06-09 10:05:34 +0300  Sebastian Dröge <sebastian@centricular.com>
 
@@ -15235,14 +15680,10 @@
 
 	* ext/pulse/Makefile.am:
 	* ext/pulse/plugin.c:
-	* ext/pulse/pulsedevicemonitor.c:
-	* ext/pulse/pulsedevicemonitor.h:
 	* ext/pulse/pulsedeviceprovider.c:
 	* ext/pulse/pulsedeviceprovider.h:
 	* sys/v4l2/Makefile.am:
 	* sys/v4l2/gstv4l2.c:
-	* sys/v4l2/gstv4l2devicemonitor.c:
-	* sys/v4l2/gstv4l2devicemonitor.h:
 	* sys/v4l2/gstv4l2deviceprovider.c:
 	* sys/v4l2/gstv4l2deviceprovider.h:
 	  Rename GstDeviceMonitor to GstDeviceProvider
@@ -23608,8 +24049,6 @@
 
 2013-09-10 16:44:53 -0600  Seán de Búrca <leftmostcat@gmail.com>
 
-	* gst/videomixer/blendorc-dist.c:
-	* gst/videomixer/blendorc-dist.h:
 	* gst/videomixer/videomixerorc-dist.c:
 	* gst/videomixer/videomixerorc-dist.h:
 	  videomixer: fix build if orc is not installed
@@ -28355,8 +28794,6 @@
 	* sys/osxaudio/gstosxaudiosrc.h:
 	* sys/osxaudio/gstosxcoreaudiocommon.c:
 	* sys/osxaudio/gstosxcoreaudiocommon.h:
-	* sys/osxaudio/gstosxringbuffer.c:
-	* sys/osxaudio/gstosxringbuffer.h:
 	  osxaudio: port to v.1.0
 
 2013-04-16 19:29:48 -0400  Olivier Crête <olivier.crete@collabora.com>
@@ -34176,15 +34613,6 @@
 
 2012-09-16 15:33:57 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
-	* ext/vp8/GstVP8Enc.prs:
-	* ext/vp8/Makefile.am:
-	* ext/vp8/gstvp8dec.c:
-	* ext/vp8/gstvp8dec.h:
-	* ext/vp8/gstvp8enc.c:
-	* ext/vp8/gstvp8enc.h:
-	* ext/vp8/gstvp8utils.c:
-	* ext/vp8/gstvp8utils.h:
-	* ext/vp8/plugin.c:
 	* ext/vpx/GstVP8Enc.prs:
 	* ext/vpx/Makefile.am:
 	* ext/vpx/gstvp8dec.c:
@@ -35968,8 +36396,6 @@
 
 	* configure.ac:
 	* ext/gdk_pixbuf/Makefile.am:
-	* ext/gdk_pixbuf/gstgdkpixbuf.c:
-	* ext/gdk_pixbuf/gstgdkpixbuf.h:
 	* ext/gdk_pixbuf/gstgdkpixbufdec.c:
 	* ext/gdk_pixbuf/gstgdkpixbufdec.h:
 	* ext/gdk_pixbuf/gstgdkpixbufplugin.c:
@@ -45223,7 +45649,6 @@
 
 	* docs/plugins/gst-plugins-good-plugins-docs.sgml:
 	* docs/plugins/gst-plugins-good-plugins-sections.txt:
-	* docs/plugins/inspect/plugin-gstrtpmanager.xml:
 	* docs/plugins/inspect/plugin-rtpmanager.xml:
 	* gst/rtpmanager/gstrtpbin.c:
 	* gst/rtpmanager/gstrtpmanager.c:
@@ -47230,8 +47655,6 @@
 	* ext/soup/gstsoup.c:
 	* ext/soup/gstsouphttpclientsink.c:
 	* ext/soup/gstsouphttpclientsink.h:
-	* ext/soup/gstsouphttpsink.c:
-	* ext/soup/gstsouphttpsink.h:
 	  soup: rename souphttpsink to souphttpclientsink
 	  To avoid confusion, and because we might want a server
 	  sink at some point too.
@@ -48315,8 +48738,6 @@
 	* sys/v4l2/gstv4l2sink.c:
 	* sys/v4l2/gstv4l2videooverlay.c:
 	* sys/v4l2/gstv4l2videooverlay.h:
-	* sys/v4l2/gstv4l2xoverlay.c:
-	* sys/v4l2/gstv4l2xoverlay.h:
 	  v4l2: update for GstXOverlay => GstVideoOverlay rename
 
 2011-08-07 12:23:26 +0200  Sjoerd Simons <sjoerd.simons@collabora.co.uk>
@@ -51766,7 +52187,6 @@
 	* docs/plugins/Makefile.am:
 	* docs/plugins/gst-plugins-good-plugins-docs.sgml:
 	* docs/plugins/inspect/plugin-isomp4.xml:
-	* docs/plugins/inspect/plugin-quicktime.xml:
 	* gst-plugins-good.spec.in:
 	* gst/isomp4/LEGAL:
 	* gst/isomp4/Makefile.am:
@@ -51803,41 +52223,6 @@
 	* gst/isomp4/qtdemux_types.c:
 	* gst/isomp4/qtdemux_types.h:
 	* gst/isomp4/qtpalette.h:
-	* gst/quicktime/LEGAL:
-	* gst/quicktime/Makefile.am:
-	* gst/quicktime/atoms.c:
-	* gst/quicktime/atoms.h:
-	* gst/quicktime/atomsrecovery.c:
-	* gst/quicktime/atomsrecovery.h:
-	* gst/quicktime/descriptors.c:
-	* gst/quicktime/descriptors.h:
-	* gst/quicktime/fourcc.h:
-	* gst/quicktime/ftypcc.h:
-	* gst/quicktime/gstqtmoovrecover.c:
-	* gst/quicktime/gstqtmoovrecover.h:
-	* gst/quicktime/gstqtmux-doc.c:
-	* gst/quicktime/gstqtmux-doc.h:
-	* gst/quicktime/gstqtmux.c:
-	* gst/quicktime/gstqtmux.h:
-	* gst/quicktime/gstqtmuxmap.c:
-	* gst/quicktime/gstqtmuxmap.h:
-	* gst/quicktime/gstrtpxqtdepay.c:
-	* gst/quicktime/gstrtpxqtdepay.h:
-	* gst/quicktime/properties.c:
-	* gst/quicktime/properties.h:
-	* gst/quicktime/qtatomparser.h:
-	* gst/quicktime/qtdemux.c:
-	* gst/quicktime/qtdemux.h:
-	* gst/quicktime/qtdemux.vcproj:
-	* gst/quicktime/qtdemux_dump.c:
-	* gst/quicktime/qtdemux_dump.h:
-	* gst/quicktime/qtdemux_fourcc.h:
-	* gst/quicktime/qtdemux_lang.c:
-	* gst/quicktime/qtdemux_lang.h:
-	* gst/quicktime/qtdemux_types.c:
-	* gst/quicktime/qtdemux_types.h:
-	* gst/quicktime/qtpalette.h:
-	* gst/quicktime/quicktime.c:
 	* po/POTFILES.in:
 	  quicktime: rename plugin to isomp4
 	  https://bugzilla.gnome.org/show_bug.cgi?id=648004
@@ -52602,7 +52987,6 @@
 	* gst/dtmf/Makefile.am:
 	* gst/dtmf/gstdtmfcommon.h:
 	* gst/dtmf/gstdtmfsrc.c:
-	* gst/dtmf/gstrtpdtmfcommon.h:
 	* gst/dtmf/gstrtpdtmfdepay.c:
 	* gst/dtmf/gstrtpdtmfdepay.h:
 	* gst/dtmf/gstrtpdtmfsrc.c:
@@ -53921,23 +54305,6 @@
 	* configure.ac:
 	* docs/plugins/Makefile.am:
 	* docs/plugins/inspect/plugin-quicktime.xml:
-	* gst/qtdemux/LEGAL:
-	* gst/qtdemux/Makefile.am:
-	* gst/qtdemux/gstrtpxqtdepay.c:
-	* gst/qtdemux/gstrtpxqtdepay.h:
-	* gst/qtdemux/qtatomparser.h:
-	* gst/qtdemux/qtdemux.c:
-	* gst/qtdemux/qtdemux.h:
-	* gst/qtdemux/qtdemux.vcproj:
-	* gst/qtdemux/qtdemux_dump.c:
-	* gst/qtdemux/qtdemux_dump.h:
-	* gst/qtdemux/qtdemux_fourcc.h:
-	* gst/qtdemux/qtdemux_lang.c:
-	* gst/qtdemux/qtdemux_lang.h:
-	* gst/qtdemux/qtdemux_types.c:
-	* gst/qtdemux/qtdemux_types.h:
-	* gst/qtdemux/qtpalette.h:
-	* gst/qtdemux/quicktime.c:
 	* gst/quicktime/LEGAL:
 	* gst/quicktime/Makefile.am:
 	* gst/quicktime/gstrtpxqtdepay.c:
@@ -55328,11 +55695,6 @@
 2009-11-28 18:13:31 +0100  Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
 
 	* gst/aacparse/Makefile.am:
-	* gst/aacparse/gstaacparse.c:
-	* gst/aacparse/gstaacparse.h:
-	* gst/aacparse/gstbaseparse.c:
-	* gst/aacparse/gstbaseparse.h:
-	* gst/aacparse/plugin.c:
 	* gst/audioparsers/Makefile.am:
 	* gst/audioparsers/gstaacparse.c:
 	* gst/audioparsers/gstaacparse.h:
@@ -83224,12 +83586,9 @@
 2009-05-15 17:11:27 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
 
 	* tests/check/Makefile.am:
-	* tests/check/audiotestsrc.flac:
 	* tests/check/elements/id3demux.c:
 	* tests/check/elements/souphttpsrc.c:
 	* tests/check/pipelines/flacdec.c:
-	* tests/check/test-cert.pem:
-	* tests/check/test-key.pem:
 	* tests/files/Makefile.am:
 	* tests/files/audiotestsrc.flac:
 	* tests/files/test-cert.pem:
@@ -83308,42 +83667,6 @@
 	* gst/deinterlace/tvtime/weavebff.c:
 	* gst/deinterlace/tvtime/weavetff.c:
 	* gst/deinterlace/tvtime/x86-64_macros.inc:
-	* gst/deinterlace2/Makefile.am:
-	* gst/deinterlace2/gstdeinterlace2.c:
-	* gst/deinterlace2/gstdeinterlace2.h:
-	* gst/deinterlace2/tvtime/greedy.c:
-	* gst/deinterlace2/tvtime/greedyh.asm:
-	* gst/deinterlace2/tvtime/greedyh.c:
-	* gst/deinterlace2/tvtime/greedyhmacros.h:
-	* gst/deinterlace2/tvtime/linear.c:
-	* gst/deinterlace2/tvtime/linearblend.c:
-	* gst/deinterlace2/tvtime/mmx.h:
-	* gst/deinterlace2/tvtime/plugins.h:
-	* gst/deinterlace2/tvtime/scalerbob.c:
-	* gst/deinterlace2/tvtime/sse.h:
-	* gst/deinterlace2/tvtime/tomsmocomp.c:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoop0A.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA8.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA2.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA6.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH2.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVA.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVAH.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc:
-	* gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h:
-	* gst/deinterlace2/tvtime/vfir.c:
-	* gst/deinterlace2/tvtime/weave.c:
-	* gst/deinterlace2/tvtime/weavebff.c:
-	* gst/deinterlace2/tvtime/weavetff.c:
-	* gst/deinterlace2/tvtime/x86-64_macros.inc:
 	  Moved 'deinterlace2' from -bad to -good
 	  And rename it to deinterlace.
 
@@ -86145,29 +86468,6 @@
 
 	* configure.ac:
 	* docs/plugins/Makefile.am:
-	* gst/debug/Makefile.am:
-	* gst/debug/breakmydata.c:
-	* gst/debug/debug.vcproj:
-	* gst/debug/efence.c:
-	* gst/debug/efence.h:
-	* gst/debug/efence.vcproj:
-	* gst/debug/gstdebug.c:
-	* gst/debug/gstnavigationtest.c:
-	* gst/debug/gstnavigationtest.h:
-	* gst/debug/gstnavseek.c:
-	* gst/debug/gstnavseek.h:
-	* gst/debug/gstpushfilesrc.c:
-	* gst/debug/gstpushfilesrc.h:
-	* gst/debug/gsttaginject.c:
-	* gst/debug/gsttaginject.h:
-	* gst/debug/navigationtest.vcproj:
-	* gst/debug/negotiation.c:
-	* gst/debug/progressreport.c:
-	* gst/debug/progressreport.h:
-	* gst/debug/rndbuffersize.c:
-	* gst/debug/testplugin.c:
-	* gst/debug/tests.c:
-	* gst/debug/tests.h:
 	* gst/debugutils/Makefile.am:
 	* gst/debugutils/breakmydata.c:
 	* gst/debugutils/debug.vcproj:
@@ -87193,8 +87493,6 @@
 2009-02-24 14:55:28 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
 
 	* ext/gconf/Makefile.am:
-	* ext/gconf/gconf.c:
-	* ext/gconf/gconf.h:
 	* ext/gconf/gstgconf.c:
 	* ext/gconf/gstgconf.h:
 	* ext/gconf/gstgconfelements.h:
@@ -88769,11 +89067,8 @@
 	* gst/audiofx/audioecho.c:
 	* gst/audiofx/audioecho.h:
 	* gst/audiofx/audiofx.c:
-	* gst/audiofx/audioreverb.c:
-	* gst/audiofx/audioreverb.h:
 	* tests/check/Makefile.am:
 	* tests/check/elements/audioecho.c:
-	* tests/check/elements/audioreverb.c:
 	  Rename audioreverb to audioecho. Fixes bug #568395.
 	  The element can add an echo and a simple reverb effect to
 	  an audio stream but for a real reverb filter it would need
diff --git a/NEWS b/NEWS
index 953c54f..26b271c 100644
--- a/NEWS
+++ b/NEWS
@@ -1,25 +1,29 @@
-### 1.8.2
+### 1.8.3
 
-The first 1.8 bug-fix release (1.8.2) was released on 9 June 2016.
-This release only contains bugfixes and it should be safe to update from 1.8.0.
+The third 1.8 bug-fix release (1.8.3) was released on 19 August 2016.
+This release only contains bugfixes and it should be safe to update from 1.8.3.
 
-#### Major bugfixes in 1.8.2
+#### Major bugfixes in 1.8.3
 
- - Fix vp8enc and flacenc segmentation faults on Windows
- - Fix Android build failure due to BSD sed on OS X
- - Fix Android build failure with applications targetting API > 20
- - Fix playback of live MS SmoothStreaming streams
- - Fix various issues with vtdec and caopengllayersink on OS X
- - Fix severe performance degradation in various image decoders
- - Fix sample rate negotiation in opusdec
- - Fix regression in typefind, causing deadlocks in some situations
- - Fix mpegtsmux to set PTS on all output buffers again
- - Fix extraction of frame dimensions from SDP in RTP JPEG depayloader
- - Fix failure in v4l2videodec when setting of format fails after starting
+ - Fix Android build scripts on OS X and Windows
+ - Fix stepping in PAUSED state in certain circumstances
+ - Fix jackaudiosink hang when exiting
+ - Fix udpsrc receiving multicast packets not only from the selected
+   multicast group
+ - Fix unnecessary decoding of unselected streams in GES
+ - Fix (multi)udpsink randomly not sending to clients
+ - Fix ALL\_BOTH probes not considering EVENT\_FLUSH
+ - Fix average input rate calculations in queue2
+ - Fix various locking issues causing deadlock in adaptivedemux
+ - Fix gst-libav encoders to correctly produce codec\_data in caps
+ - Add Wayland, Windows and Rasberry Pi support to the QML GL video sink
+ - Add support for building with OpenH264 1.6
+ - Add support for controlling deinterlacing in GES video sources
  - ... and many, many more!
 
-For a full list of bugfixes see [Bugzilla][buglist-1.8.2]. Note that this is
+For a full list of bugfixes see [Bugzilla][buglist-1.8.3]. Note that this is
 not the full list of changes. For the full list of changes please refer to the
 GIT logs or ChangeLogs of the particular modules.
 
-[buglist-1.8.2]: https://bugzilla.gnome.org/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&classification=Platform&limit=0&list_id=130196&order=bug_id&product=GStreamer&query_format=advanced&resolution=FIXED&target_milestone=1.8.2
+[buglist-1.8.3]: https://bugzilla.gnome.org/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&classification=Platform&limit=0&list_id=145400&order=bug_id&product=GStreamer&query_format=advanced&resolution=FIXED&target_milestone=1.8.3
+
diff --git a/RELEASE b/RELEASE
index 19882e1..fd7cf9b 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,11 +1,11 @@
 
-Release notes for GStreamer Good Plugins 1.8.2
+Release notes for GStreamer Good Plugins 1.8.3
 
-The GStreamer team is proud to announce the second bugfix release in the stable
+The GStreamer team is proud to announce the third bugfix release in the stable
 1.8 release series of your favourite cross-platform multimedia framework!
 
 
-This release only contains bugfixes and it is safe to update from 1.8.1. For a
+This release only contains bugfixes and it is safe to update from 1.8.x. For a
 full list of bugfixes see Bugzilla.
 
 
@@ -55,42 +55,19 @@
 
 Bugs fixed in this release
      
+      * 767666 : splitmuxsink: infinite change_state loop
+      * 747275 : jackaudiosink: hangs when jackd exits
       * 766025 : rtpsession: race condition accessing ssrcs hash table
-      * 733864 : v4l2videodec: Implement EOS handling through V4L2_DEC_CMD_STOP
-      * 736252 : gdkpixbufdec: packetized mode logic
-      * 748700 : avimux: stopping file without index fails
-      * 754042 : v4l2src: Asserts on renegotiation with USERPTR
-      * 758424 : v4l2videodec: Keep the input buffers, they are needed to copy metadata
-      * 758703 : v4l2src: gst_v4l2_set_attribute warning messages cause infinite loop with .dot dump
-      * 761165 : Setting overlay parameters on v4l2sink fails
-      * 761787 : qtdemux: seek fails with CENC encrypted streams
-      * 762219 : rtpsession: don't act on suspicious BYE RTCP
-      * 764679 : IPv6 UDP stream to site-local multicast address
-      * 764733 : qtdemux: Regression in YouTube TV tests in WebKit MSE after fix for #760779
-      * 764897 : Using non IPv6-socket in IPv6 scope
-      * 765072 : splitmuxsink: Sometimes creates a small one-frame file after EOS
-      * 765320 : flvmux: segfault when no buffers have arrived before EOS
-      * 765391 : vpxenc: Handle frames with too low duration correctly
-      * 765689 : rtspsrc: Various problems related to seeking causing scrub seeking to fail
-      * 765725 : qtmux: Allow MPEG-1 Layer 1 and 2 in addition to 3 in MP4
-      * 765805 : qtdemux: Only first fragment played for fragmented mp4 files recorded with non-seekable sink
-      * 765806 : qtdemux: Store the segment sequence number in the EOS events and STREAM_DONE events/message
-      * 765933 : rtpjitterbuffer: Fix stall when receiving already lost packet
-      * 765946 : dv: Uses different pixel-aspect-ratio than gst-libav
-      * 766172 : v4l2videodec: [Regressions] Should not fail if S_FMT(CAPTURE) fail after STREAMON(CAPTURE)
-      * 766359 : auparse: sticky event misordering, got 'segment' before 'caps'
-      * 766382 : v4l2videodec: use visible size, not coded size, for downstream negotiation filter
-      * 766558 : deinterlace: fix caps leak
-      * 766610 : v4l2object: fix caps leak
-      * 766645 : matroskademux: don't hold object lock whilst pushing out headers, might lead to query deadlock
-      * 766711 : v4l2transform: scaling is broken in case of fixed pixel aspect  ratio
-      * 766712 : v4l2transform should allow to change pixel aspect ratio
-      * 766719 : v4l2transform: Does not fully fixate the caps
-      * 766868 : qtdemux: Segments start at 0 on live MSS time-based streams, ignoring the start time configured upstream
-      * 766870 : rtpj2kpay: leaks input buffer
-      * 767300 : v4l2object uses deprecated RGB15 V4L2 format code
-      * 767424 : flvdemux: Fix unref assertion failure
-      * 767086 : v4l2src: pushes incomplete raw video buffers
+      * 766970 : aacparse: sticky event criticals with RTL HD mpeg-ts stream
+      * 767496 : flvdemux: won't parse a date string with trailing whitespace
+      * 767680 : rtph265pay: fix nal type parsing an sps/pps/vps insertion via config-interval property
+      * 767980 : udpsrc: Receiving multicast packets from all addresses, not just the configured
+      * 768232 : rtspsrc: protocols aren't reset after rtsp redirect
+      * 768268 : qtdemux: Push caps only when it was updated
+      * 768509 : matroskamux: Segmentation fault in string comparison
+      * 768623 : udpsrc: There is no struct in_pktinfo on FreeBSD
+      * 769514 : splitmuxsink: Deadlock
+      * 769773 : multiudpsink: Randomly ceases to send to clients
 
 ==== Download ====
 
@@ -127,31 +104,16 @@
         
 Contributors to this release
     
-      * Alex Ashley
-      * Andreas Naumann
-      * Dimitrios Katsaros
-      * Enrico Jorns
-      * Guillaume Desmottes
-      * Havard Graff
+      * Brad Lackey
       * Jan Schmidt
-      * Jesper Larsen
-      * Josep Torra
-      * Kieran Bingham
-      * Mario Sanchez Prada
-      * Mark Nauwelaerts
-      * Mats Lindestam
+      * Jonas Holmberg
+      * Jürgen Slowack
       * Miguel París Díaz
-      * Mikhail Fludkov
       * Nicolas Dufresne
-      * Nirbheek Chauhan
-      * Patricia Muscalu
-      * Peter Seiderer
-      * Philipp Zabel
-      * Pierre Lamot
+      * Reynaldo H. Verdejo Pinochet
       * Sebastian Dröge
       * Seungha Yang
-      * Thiago Santos
-      * Thibault Saunier
+      * Thomas Bluemel
+      * Thomas Scheuermann
       * Tim-Philipp Müller
-      * Xavier Claessens
  
\ No newline at end of file
diff --git a/configure b/configure
index 8a9dcab..f2ebd4f 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for GStreamer Good Plug-ins 1.8.2.
+# Generated by GNU Autoconf 2.69 for GStreamer Good Plug-ins 1.8.3.
 #
 # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer>.
 #
@@ -591,8 +591,8 @@
 # Identity of this package.
 PACKAGE_NAME='GStreamer Good Plug-ins'
 PACKAGE_TARNAME='gst-plugins-good'
-PACKAGE_VERSION='1.8.2'
-PACKAGE_STRING='GStreamer Good Plug-ins 1.8.2'
+PACKAGE_VERSION='1.8.3'
+PACKAGE_STRING='GStreamer Good Plug-ins 1.8.3'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
 PACKAGE_URL=''
 
@@ -1964,7 +1964,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures GStreamer Good Plug-ins 1.8.2 to adapt to many kinds of systems.
+\`configure' configures GStreamer Good Plug-ins 1.8.3 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -2037,7 +2037,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GStreamer Good Plug-ins 1.8.2:";;
+     short | recursive ) echo "Configuration of GStreamer Good Plug-ins 1.8.3:";;
    esac
   cat <<\_ACEOF
 
@@ -2413,7 +2413,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GStreamer Good Plug-ins configure 1.8.2
+GStreamer Good Plug-ins configure 1.8.3
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -3224,7 +3224,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by GStreamer Good Plug-ins $as_me 1.8.2, which was
+It was created by GStreamer Good Plug-ins $as_me 1.8.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -4206,7 +4206,7 @@
 
 # Define the identity of the package.
  PACKAGE='gst-plugins-good'
- VERSION='1.8.2'
+ VERSION='1.8.3'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -4417,9 +4417,9 @@
 
 
 
-  PACKAGE_VERSION_MAJOR=$(echo 1.8.2 | cut -d'.' -f1)
-  PACKAGE_VERSION_MINOR=$(echo 1.8.2 | cut -d'.' -f2)
-  PACKAGE_VERSION_MICRO=$(echo 1.8.2 | cut -d'.' -f3)
+  PACKAGE_VERSION_MAJOR=$(echo 1.8.3 | cut -d'.' -f1)
+  PACKAGE_VERSION_MINOR=$(echo 1.8.3 | cut -d'.' -f2)
+  PACKAGE_VERSION_MICRO=$(echo 1.8.3 | cut -d'.' -f3)
 
 
 
@@ -4430,7 +4430,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
 $as_echo_n "checking nano version... " >&6; }
 
-  NANO=$(echo 1.8.2 | cut -d'.' -f4)
+  NANO=$(echo 1.8.3 | cut -d'.' -f4)
 
   if test x"$NANO" = x || test "x$NANO" = "x0" ; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
@@ -9271,10 +9271,10 @@
 done
 
 
-  GST_CURRENT=802
+  GST_CURRENT=803
   GST_REVISION=0
-  GST_AGE=802
-  GST_LIBVERSION=802:0:802
+  GST_AGE=803
+  GST_LIBVERSION=803:0:803
 
 
 
@@ -36873,7 +36873,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by GStreamer Good Plug-ins $as_me 1.8.2, which was
+This file was extended by GStreamer Good Plug-ins $as_me 1.8.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -36939,7 +36939,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-GStreamer Good Plug-ins config.status 1.8.2
+GStreamer Good Plug-ins config.status 1.8.3
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -38282,7 +38282,6 @@
     cat <<_LT_EOF >> "$cfgfile"
 #! $SHELL
 # Generated automatically by $as_me ($PACKAGE) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 
 # Provide generalized library-building support services.
diff --git a/configure.ac b/configure.ac
index 6650bf1..e5675d4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5,7 +5,7 @@
 dnl initialize autoconf
 dnl releases only do -Wall, git and prerelease does -Werror too
 dnl use a three digit version number for releases, and four for git/pre
-AC_INIT([GStreamer Good Plug-ins],[1.8.2],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good])
+AC_INIT([GStreamer Good Plug-ins],[1.8.3],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good])
 
 AG_GST_INIT
 
@@ -43,7 +43,7 @@
   [GStreamer API Version])
 
 AG_GST_LIBTOOL_PREPARE
-AS_LIBTOOL(GST, 802, 0, 802)
+AS_LIBTOOL(GST, 803, 0, 803)
 
 dnl *** required versions of GStreamer stuff ***
 GST_REQ=1.8.0
diff --git a/docs/plugins/gst-plugins-good-plugins.args b/docs/plugins/gst-plugins-good-plugins.args
index ef4dd9b..ea7c014 100644
--- a/docs/plugins/gst-plugins-good-plugins.args
+++ b/docs/plugins/gst-plugins-good-plugins.args
@@ -1005,7 +1005,7 @@
 <FLAGS>rw</FLAGS>
 <NICK>User Agent</NICK>
 <BLURB>The User-Agent string to send to the server.</BLURB>
-<DEFAULT>"GStreamer/1.8.2"</DEFAULT>
+<DEFAULT>"GStreamer/1.8.3"</DEFAULT>
 </ARG>
 
 <ARG>
diff --git a/docs/plugins/gst-plugins-good-plugins.hierarchy b/docs/plugins/gst-plugins-good-plugins.hierarchy
index aa57409..30f4931 100644
--- a/docs/plugins/gst-plugins-good-plugins.hierarchy
+++ b/docs/plugins/gst-plugins-good-plugins.hierarchy
@@ -320,6 +320,9 @@
       GstTask
       GstTaskPool
   GSocket
+  GSocketControlMessage
+    GstIPPktinfoMessage
+    GstIPV6PktinfoMessage
   GTlsDatabase
   GTlsInteraction
   GdkPixbuf
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-1394.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-1394.html
index 146c911..b5b8db4 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-1394.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-1394.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-aasink.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-aasink.html
index f22bde7..74bfa1b 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-aasink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-aasink.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-alaw.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-alaw.html
index f9d6fa8..819d9ee 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-alaw.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-alaw.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-alpha.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-alpha.html
index 8b7ea9f..1bad872 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-alpha.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-alpha.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-alphacolor.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-alphacolor.html
index c85a0dd..3b75747 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-alphacolor.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-alphacolor.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-apetag.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-apetag.html
index 972d1fe..d92715c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-apetag.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-apetag.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-audiofx.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-audiofx.html
index f239402..346fbb7 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-audiofx.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-audiofx.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-audioparsers.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-audioparsers.html
index 1652b57..5a7749f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-audioparsers.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-audioparsers.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-auparse.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-auparse.html
index 5c30127..4bdf01f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-auparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-auparse.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-autodetect.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-autodetect.html
index 439fafb..15ae70e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-autodetect.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-autodetect.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-avi.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-avi.html
index 099d605..accdde7 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-avi.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-avi.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-cacasink.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-cacasink.html
index 8a10e2b..6c31480 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-cacasink.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-cacasink.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-cairo.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-cairo.html
index 13bd4ad..11c30b6 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-cairo.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-cairo.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-cutter.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-cutter.html
index 2c172f4..1aab896 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-cutter.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-cutter.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-debug.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-debug.html
index 19ce6b5..cb2c22e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-debug.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-debug.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-deinterlace.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-deinterlace.html
index 36ef007..6bb838a 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-deinterlace.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-deinterlace.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-dtmf.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-dtmf.html
index 71f419a..20e560d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-dtmf.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-dtmf.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-dv.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-dv.html
index ff2199b..d8f64cb 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-dv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-dv.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-effectv.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-effectv.html
index c730a4c..4cbbb32 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-effectv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-effectv.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-equalizer.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-equalizer.html
index bb5aec5..2728d87 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-equalizer.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-equalizer.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-flac.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-flac.html
index 9f29f98..f898057 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-flac.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-flac.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-flv.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-flv.html
index 3d41d7c..fe88de6 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-flv.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-flv.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-flxdec.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-flxdec.html
index 8b1585d..c923582 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-flxdec.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-flxdec.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-gdkpixbuf.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-gdkpixbuf.html
index 184fe0e..eb60385 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-gdkpixbuf.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-gdkpixbuf.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-goom.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-goom.html
index 652fd61..cd728b9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-goom.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-goom.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-goom2k1.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-goom2k1.html
index c447635..2b387f9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-goom2k1.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-goom2k1.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-icydemux.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-icydemux.html
index 0c75332..994dcb1 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-icydemux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-icydemux.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-id3demux.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-id3demux.html
index a84b5b8..4b636da 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-id3demux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-id3demux.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-imagefreeze.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-imagefreeze.html
index cbf895b..f958ffe 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-imagefreeze.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-imagefreeze.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-interleave.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-interleave.html
index cfabcd1..90ba83c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-interleave.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-interleave.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-isomp4.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-isomp4.html
index 54dfbb3..9c9ee00 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-isomp4.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-isomp4.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-jack.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-jack.html
index 0a09fe9..e82282d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-jack.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-jack.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-jpeg.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-jpeg.html
index c1f9125..cfe2589 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-jpeg.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-jpeg.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-level.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-level.html
index 2a5778f..88ae011 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-level.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-level.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-matroska.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-matroska.html
index b11f5b0..ec2bd3e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-matroska.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-matroska.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-mulaw.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-mulaw.html
index 2039788..ff540db 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-mulaw.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-mulaw.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-multifile.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-multifile.html
index 27ae862..cb94204 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-multifile.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-multifile.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-multipart.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-multipart.html
index 7948a57..acd725d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-multipart.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-multipart.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-navigationtest.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-navigationtest.html
index ef1ad3d..2f7345f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-navigationtest.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-navigationtest.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-oss4.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-oss4.html
index f17b51b..62dbaa7 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-oss4.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-oss4.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-ossaudio.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-ossaudio.html
index 8a08e90..b7c784f 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-ossaudio.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-ossaudio.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-png.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-png.html
index 7ffdbbb..97725e6 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-png.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-png.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html
index d274ecc..84a8cbc 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-replaygain.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-replaygain.html
index 3bbde94..856fd73 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-replaygain.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-replaygain.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtp.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtp.html
index 43d385b..6526780 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtp.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtp.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtpmanager.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtpmanager.html
index 65c2a02..4d6e4ad 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtpmanager.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtpmanager.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtsp.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtsp.html
index ab5a60a..670bd1c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-rtsp.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-rtsp.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-shapewipe.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-shapewipe.html
index 90d368d..b960cf7 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-shapewipe.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-shapewipe.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-shout2send.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-shout2send.html
index 11c27f4..08151ce 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-shout2send.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-shout2send.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-smpte.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-smpte.html
index 8600c1c..45919a9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-smpte.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-smpte.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-soup.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-soup.html
index 7113a57..bf00afd 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-soup.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-soup.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-spectrum.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-spectrum.html
index 19fd4aa..16c822c 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-spectrum.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-spectrum.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-speex.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-speex.html
index d7598d2..0dd91ae 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-speex.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-speex.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-taglib.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-taglib.html
index 160efd2..40cf7a3 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-taglib.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-taglib.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-udp.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-udp.html
index 6ca782c..20c4cc9 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-udp.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-udp.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-video4linux2.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-video4linux2.html
index d80c028..41bb4e0 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-video4linux2.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-video4linux2.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-videobox.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-videobox.html
index ff5fc04..1c62110 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-videobox.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-videobox.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-videocrop.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-videocrop.html
index 8d629b3..2fd557d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-videocrop.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-videocrop.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-videofilter.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-videofilter.html
index 1149414..e49f053 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-videofilter.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-videofilter.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-videomixer.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-videomixer.html
index 7e9bd1d..264ddeb 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-videomixer.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-videomixer.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-vpx.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-vpx.html
index 703cd98..e9eb83e 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-vpx.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-vpx.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavenc.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavenc.html
index 8f6205a..9640403 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavenc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavenc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavpack.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavpack.html
index 83b3d5b..cce2969 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavpack.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavpack.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavparse.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavparse.html
index e80a4ec..2f49542 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-wavparse.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-wavparse.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-ximagesrc.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-ximagesrc.html
index 07a69a1..d4f3534 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-ximagesrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-ximagesrc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html b/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html
index 5ec4f4d..281b243 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html
@@ -42,7 +42,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.8.2</td>
+<td>1.8.3</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html b/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html
index b7c69f6..9ce8f8d 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html
@@ -688,7 +688,7 @@
 <pre class="programlisting">  “user-agent”               <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
 <p>The User-Agent string to send to the server.</p>
 <p>Flags: Read / Write</p>
-<p>Default value: "GStreamer/1.8.2"</p>
+<p>Default value: "GStreamer/1.8.3"</p>
 </div>
 <hr>
 <div class="refsect2">
diff --git a/docs/plugins/html/home.png b/docs/plugins/html/home.png
index 9346b33..4bf6d92 100644
--- a/docs/plugins/html/home.png
+++ b/docs/plugins/html/home.png
Binary files differ
diff --git a/docs/plugins/html/index.html b/docs/plugins/html/index.html
index 89034a3..c4ca947 100644
--- a/docs/plugins/html/index.html
+++ b/docs/plugins/html/index.html
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Good Plugins 1.0 Plugins Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Good Plugins 1.0 (1.8.2)
+      for GStreamer Good Plugins 1.0 (1.8.3)
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good/html/</a>.
     </p></div>
diff --git a/docs/plugins/html/left-insensitive.png b/docs/plugins/html/left-insensitive.png
index 3269393..82cba0a 100644
--- a/docs/plugins/html/left-insensitive.png
+++ b/docs/plugins/html/left-insensitive.png
Binary files differ
diff --git a/docs/plugins/html/left.png b/docs/plugins/html/left.png
index 2abde03..8444ec0 100644
--- a/docs/plugins/html/left.png
+++ b/docs/plugins/html/left.png
Binary files differ
diff --git a/docs/plugins/html/right-insensitive.png b/docs/plugins/html/right-insensitive.png
index 4c95785..7a90b99 100644
--- a/docs/plugins/html/right-insensitive.png
+++ b/docs/plugins/html/right-insensitive.png
Binary files differ
diff --git a/docs/plugins/html/right.png b/docs/plugins/html/right.png
index 76260ec..55f3359 100644
--- a/docs/plugins/html/right.png
+++ b/docs/plugins/html/right.png
Binary files differ
diff --git a/docs/plugins/html/up-insensitive.png b/docs/plugins/html/up-insensitive.png
index f404986..fdb8cc7 100644
--- a/docs/plugins/html/up-insensitive.png
+++ b/docs/plugins/html/up-insensitive.png
Binary files differ
diff --git a/docs/plugins/html/up.png b/docs/plugins/html/up.png
index 80b4b37..c1aad52 100644
--- a/docs/plugins/html/up.png
+++ b/docs/plugins/html/up.png
Binary files differ
diff --git a/docs/plugins/inspect/plugin-1394.xml b/docs/plugins/inspect/plugin-1394.xml
index 22fe11c..a3f1e1d 100644
--- a/docs/plugins/inspect/plugin-1394.xml
+++ b/docs/plugins/inspect/plugin-1394.xml
@@ -3,7 +3,7 @@
   <description>Source for video data via IEEE1394 interface</description>
   <filename>../../ext/raw1394/.libs/libgst1394.so</filename>
   <basename>libgst1394.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-aasink.xml b/docs/plugins/inspect/plugin-aasink.xml
index 3a6c461..4dc653d 100644
--- a/docs/plugins/inspect/plugin-aasink.xml
+++ b/docs/plugins/inspect/plugin-aasink.xml
@@ -3,7 +3,7 @@
   <description>ASCII Art video sink</description>
   <filename>../../ext/aalib/.libs/libgstaasink.so</filename>
   <basename>libgstaasink.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-alaw.xml b/docs/plugins/inspect/plugin-alaw.xml
index 7ee670c..635c070 100644
--- a/docs/plugins/inspect/plugin-alaw.xml
+++ b/docs/plugins/inspect/plugin-alaw.xml
@@ -3,7 +3,7 @@
   <description>ALaw audio conversion routines</description>
   <filename>../../gst/law/.libs/libgstalaw.so</filename>
   <basename>libgstalaw.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-alpha.xml b/docs/plugins/inspect/plugin-alpha.xml
index 77bffef..99fadd1 100644
--- a/docs/plugins/inspect/plugin-alpha.xml
+++ b/docs/plugins/inspect/plugin-alpha.xml
@@ -3,7 +3,7 @@
   <description>adds an alpha channel to video - constant or via chroma-keying</description>
   <filename>../../gst/alpha/.libs/libgstalpha.so</filename>
   <basename>libgstalpha.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-alphacolor.xml b/docs/plugins/inspect/plugin-alphacolor.xml
index 920c157..e17632a 100644
--- a/docs/plugins/inspect/plugin-alphacolor.xml
+++ b/docs/plugins/inspect/plugin-alphacolor.xml
@@ -3,7 +3,7 @@
   <description>RGBA from/to AYUV colorspace conversion preserving the alpha channel</description>
   <filename>../../gst/alpha/.libs/libgstalphacolor.so</filename>
   <basename>libgstalphacolor.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-apetag.xml b/docs/plugins/inspect/plugin-apetag.xml
index fa5c60a..70c25d9 100644
--- a/docs/plugins/inspect/plugin-apetag.xml
+++ b/docs/plugins/inspect/plugin-apetag.xml
@@ -3,7 +3,7 @@
   <description>APEv1/2 tag reader</description>
   <filename>../../gst/apetag/.libs/libgstapetag.so</filename>
   <basename>libgstapetag.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audiofx.xml b/docs/plugins/inspect/plugin-audiofx.xml
index 655f527..4c10bff 100644
--- a/docs/plugins/inspect/plugin-audiofx.xml
+++ b/docs/plugins/inspect/plugin-audiofx.xml
@@ -3,7 +3,7 @@
   <description>Audio effects plugin</description>
   <filename>../../gst/audiofx/.libs/libgstaudiofx.so</filename>
   <basename>libgstaudiofx.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audioparsers.xml b/docs/plugins/inspect/plugin-audioparsers.xml
index 4d0599d..93ba30f 100644
--- a/docs/plugins/inspect/plugin-audioparsers.xml
+++ b/docs/plugins/inspect/plugin-audioparsers.xml
@@ -3,7 +3,7 @@
   <description>Parsers for various audio formats</description>
   <filename>../../gst/audioparsers/.libs/libgstaudioparsers.so</filename>
   <basename>libgstaudioparsers.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-auparse.xml b/docs/plugins/inspect/plugin-auparse.xml
index 1627164..1825350 100644
--- a/docs/plugins/inspect/plugin-auparse.xml
+++ b/docs/plugins/inspect/plugin-auparse.xml
@@ -3,7 +3,7 @@
   <description>parses au streams</description>
   <filename>../../gst/auparse/.libs/libgstauparse.so</filename>
   <basename>libgstauparse.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-autodetect.xml b/docs/plugins/inspect/plugin-autodetect.xml
index 142669d..24d78df 100644
--- a/docs/plugins/inspect/plugin-autodetect.xml
+++ b/docs/plugins/inspect/plugin-autodetect.xml
@@ -3,7 +3,7 @@
   <description>Plugin contains auto-detection plugins for video/audio in- and outputs</description>
   <filename>../../gst/autodetect/.libs/libgstautodetect.so</filename>
   <basename>libgstautodetect.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-avi.xml b/docs/plugins/inspect/plugin-avi.xml
index 8943969..b3c6ab9 100644
--- a/docs/plugins/inspect/plugin-avi.xml
+++ b/docs/plugins/inspect/plugin-avi.xml
@@ -3,7 +3,7 @@
   <description>AVI stream handling</description>
   <filename>../../gst/avi/.libs/libgstavi.so</filename>
   <basename>libgstavi.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-cacasink.xml b/docs/plugins/inspect/plugin-cacasink.xml
index c0c9a8f..563cfb8 100644
--- a/docs/plugins/inspect/plugin-cacasink.xml
+++ b/docs/plugins/inspect/plugin-cacasink.xml
@@ -3,7 +3,7 @@
   <description>Colored ASCII Art video sink</description>
   <filename>../../ext/libcaca/.libs/libgstcacasink.so</filename>
   <basename>libgstcacasink.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-cairo.xml b/docs/plugins/inspect/plugin-cairo.xml
index 10b8015..53b1c76 100644
--- a/docs/plugins/inspect/plugin-cairo.xml
+++ b/docs/plugins/inspect/plugin-cairo.xml
@@ -3,7 +3,7 @@
   <description>Cairo-based elements</description>
   <filename>../../ext/cairo/.libs/libgstcairo.so</filename>
   <basename>libgstcairo.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-cutter.xml b/docs/plugins/inspect/plugin-cutter.xml
index eb80427..637ebb9 100644
--- a/docs/plugins/inspect/plugin-cutter.xml
+++ b/docs/plugins/inspect/plugin-cutter.xml
@@ -3,7 +3,7 @@
   <description>Audio Cutter to split audio into non-silent bits</description>
   <filename>../../gst/cutter/.libs/libgstcutter.so</filename>
   <basename>libgstcutter.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-debug.xml b/docs/plugins/inspect/plugin-debug.xml
index 5b3efd3..8fcf219 100644
--- a/docs/plugins/inspect/plugin-debug.xml
+++ b/docs/plugins/inspect/plugin-debug.xml
@@ -3,7 +3,7 @@
   <description>elements for testing and debugging</description>
   <filename>../../gst/debugutils/.libs/libgstdebug.so</filename>
   <basename>libgstdebug.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-deinterlace.xml b/docs/plugins/inspect/plugin-deinterlace.xml
index 7379736..4c7f0b0 100644
--- a/docs/plugins/inspect/plugin-deinterlace.xml
+++ b/docs/plugins/inspect/plugin-deinterlace.xml
@@ -3,7 +3,7 @@
   <description>Deinterlacer</description>
   <filename>../../gst/deinterlace/.libs/libgstdeinterlace.so</filename>
   <basename>libgstdeinterlace.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-dtmf.xml b/docs/plugins/inspect/plugin-dtmf.xml
index d7739d8..0b26584 100644
--- a/docs/plugins/inspect/plugin-dtmf.xml
+++ b/docs/plugins/inspect/plugin-dtmf.xml
@@ -3,7 +3,7 @@
   <description>DTMF plugins</description>
   <filename>../../gst/dtmf/.libs/libgstdtmf.so</filename>
   <basename>libgstdtmf.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-dv.xml b/docs/plugins/inspect/plugin-dv.xml
index 34d5422..7abdd2a 100644
--- a/docs/plugins/inspect/plugin-dv.xml
+++ b/docs/plugins/inspect/plugin-dv.xml
@@ -3,7 +3,7 @@
   <description>DV demuxer and decoder based on libdv (libdv.sf.net)</description>
   <filename>../../ext/dv/.libs/libgstdv.so</filename>
   <basename>libgstdv.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-effectv.xml b/docs/plugins/inspect/plugin-effectv.xml
index 2874220..21f5b83 100644
--- a/docs/plugins/inspect/plugin-effectv.xml
+++ b/docs/plugins/inspect/plugin-effectv.xml
@@ -3,7 +3,7 @@
   <description>effect plugins from the effectv project</description>
   <filename>../../gst/effectv/.libs/libgsteffectv.so</filename>
   <basename>libgsteffectv.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-equalizer.xml b/docs/plugins/inspect/plugin-equalizer.xml
index c092eed..e0b981b 100644
--- a/docs/plugins/inspect/plugin-equalizer.xml
+++ b/docs/plugins/inspect/plugin-equalizer.xml
@@ -3,7 +3,7 @@
   <description>GStreamer audio equalizers</description>
   <filename>../../gst/equalizer/.libs/libgstequalizer.so</filename>
   <basename>libgstequalizer.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-flac.xml b/docs/plugins/inspect/plugin-flac.xml
index 38903eb..51926aa 100644
--- a/docs/plugins/inspect/plugin-flac.xml
+++ b/docs/plugins/inspect/plugin-flac.xml
@@ -3,7 +3,7 @@
   <description>The FLAC Lossless compressor Codec</description>
   <filename>../../ext/flac/.libs/libgstflac.so</filename>
   <basename>libgstflac.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-flv.xml b/docs/plugins/inspect/plugin-flv.xml
index 3bd64ee..8685065 100644
--- a/docs/plugins/inspect/plugin-flv.xml
+++ b/docs/plugins/inspect/plugin-flv.xml
@@ -3,7 +3,7 @@
   <description>FLV muxing and demuxing plugin</description>
   <filename>../../gst/flv/.libs/libgstflv.so</filename>
   <basename>libgstflv.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-flxdec.xml b/docs/plugins/inspect/plugin-flxdec.xml
index bcb582a..c7fbff2 100644
--- a/docs/plugins/inspect/plugin-flxdec.xml
+++ b/docs/plugins/inspect/plugin-flxdec.xml
@@ -3,7 +3,7 @@
   <description>FLC/FLI/FLX video decoder</description>
   <filename>../../gst/flx/.libs/libgstflxdec.so</filename>
   <basename>libgstflxdec.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-gdkpixbuf.xml b/docs/plugins/inspect/plugin-gdkpixbuf.xml
index 24679da..f1a1151 100644
--- a/docs/plugins/inspect/plugin-gdkpixbuf.xml
+++ b/docs/plugins/inspect/plugin-gdkpixbuf.xml
@@ -3,7 +3,7 @@
   <description>GdkPixbuf-based image decoder, overlay and sink</description>
   <filename>../../ext/gdk_pixbuf/.libs/libgstgdkpixbuf.so</filename>
   <basename>libgstgdkpixbuf.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-goom.xml b/docs/plugins/inspect/plugin-goom.xml
index e657f27..750e998 100644
--- a/docs/plugins/inspect/plugin-goom.xml
+++ b/docs/plugins/inspect/plugin-goom.xml
@@ -3,7 +3,7 @@
   <description>GOOM visualization filter</description>
   <filename>../../gst/goom/.libs/libgstgoom.so</filename>
   <basename>libgstgoom.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-goom2k1.xml b/docs/plugins/inspect/plugin-goom2k1.xml
index c854ddf..7339f34 100644
--- a/docs/plugins/inspect/plugin-goom2k1.xml
+++ b/docs/plugins/inspect/plugin-goom2k1.xml
@@ -3,7 +3,7 @@
   <description>GOOM 2k1 visualization filter</description>
   <filename>../../gst/goom2k1/.libs/libgstgoom2k1.so</filename>
   <basename>libgstgoom2k1.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-icydemux.xml b/docs/plugins/inspect/plugin-icydemux.xml
index a20ffc2..b75dcf3 100644
--- a/docs/plugins/inspect/plugin-icydemux.xml
+++ b/docs/plugins/inspect/plugin-icydemux.xml
@@ -3,7 +3,7 @@
   <description>Demux ICY tags from a stream</description>
   <filename>../../gst/icydemux/.libs/libgsticydemux.so</filename>
   <basename>libgsticydemux.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-id3demux.xml b/docs/plugins/inspect/plugin-id3demux.xml
index 61ef2c6..3eb8099 100644
--- a/docs/plugins/inspect/plugin-id3demux.xml
+++ b/docs/plugins/inspect/plugin-id3demux.xml
@@ -3,7 +3,7 @@
   <description>Demux ID3v1 and ID3v2 tags from a file</description>
   <filename>../../gst/id3demux/.libs/libgstid3demux.so</filename>
   <basename>libgstid3demux.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-imagefreeze.xml b/docs/plugins/inspect/plugin-imagefreeze.xml
index 7cc0db4..f2359fe 100644
--- a/docs/plugins/inspect/plugin-imagefreeze.xml
+++ b/docs/plugins/inspect/plugin-imagefreeze.xml
@@ -3,7 +3,7 @@
   <description>Still frame stream generator</description>
   <filename>../../gst/imagefreeze/.libs/libgstimagefreeze.so</filename>
   <basename>libgstimagefreeze.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-interleave.xml b/docs/plugins/inspect/plugin-interleave.xml
index 3af5054..bd0e1ff 100644
--- a/docs/plugins/inspect/plugin-interleave.xml
+++ b/docs/plugins/inspect/plugin-interleave.xml
@@ -3,7 +3,7 @@
   <description>Audio interleaver/deinterleaver</description>
   <filename>../../gst/interleave/.libs/libgstinterleave.so</filename>
   <basename>libgstinterleave.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-isomp4.xml b/docs/plugins/inspect/plugin-isomp4.xml
index 9d43100..00f98da 100644
--- a/docs/plugins/inspect/plugin-isomp4.xml
+++ b/docs/plugins/inspect/plugin-isomp4.xml
@@ -3,7 +3,7 @@
   <description>ISO base media file format support (mp4, 3gpp, qt, mj2)</description>
   <filename>../../gst/isomp4/.libs/libgstisomp4.so</filename>
   <basename>libgstisomp4.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-jack.xml b/docs/plugins/inspect/plugin-jack.xml
index 3f7ba8f..113bad2 100644
--- a/docs/plugins/inspect/plugin-jack.xml
+++ b/docs/plugins/inspect/plugin-jack.xml
@@ -3,7 +3,7 @@
   <description>JACK audio elements</description>
   <filename>../../ext/jack/.libs/libgstjack.so</filename>
   <basename>libgstjack.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-jpeg.xml b/docs/plugins/inspect/plugin-jpeg.xml
index 92c8c9c..878004a 100644
--- a/docs/plugins/inspect/plugin-jpeg.xml
+++ b/docs/plugins/inspect/plugin-jpeg.xml
@@ -3,7 +3,7 @@
   <description>JPeg plugin library</description>
   <filename>../../ext/jpeg/.libs/libgstjpeg.so</filename>
   <basename>libgstjpeg.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-level.xml b/docs/plugins/inspect/plugin-level.xml
index dac10e9..cc4059d 100644
--- a/docs/plugins/inspect/plugin-level.xml
+++ b/docs/plugins/inspect/plugin-level.xml
@@ -3,7 +3,7 @@
   <description>Audio level plugin</description>
   <filename>../../gst/level/.libs/libgstlevel.so</filename>
   <basename>libgstlevel.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-matroska.xml b/docs/plugins/inspect/plugin-matroska.xml
index 0590e49..dae62cc 100644
--- a/docs/plugins/inspect/plugin-matroska.xml
+++ b/docs/plugins/inspect/plugin-matroska.xml
@@ -3,7 +3,7 @@
   <description>Matroska and WebM stream handling</description>
   <filename>../../gst/matroska/.libs/libgstmatroska.so</filename>
   <basename>libgstmatroska.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-mulaw.xml b/docs/plugins/inspect/plugin-mulaw.xml
index aee1e88..0301a91 100644
--- a/docs/plugins/inspect/plugin-mulaw.xml
+++ b/docs/plugins/inspect/plugin-mulaw.xml
@@ -3,7 +3,7 @@
   <description>MuLaw audio conversion routines</description>
   <filename>../../gst/law/.libs/libgstmulaw.so</filename>
   <basename>libgstmulaw.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-multifile.xml b/docs/plugins/inspect/plugin-multifile.xml
index 75115b2..a1f46bb 100644
--- a/docs/plugins/inspect/plugin-multifile.xml
+++ b/docs/plugins/inspect/plugin-multifile.xml
@@ -3,7 +3,7 @@
   <description>Reads/Writes buffers from/to sequentially named files</description>
   <filename>../../gst/multifile/.libs/libgstmultifile.so</filename>
   <basename>libgstmultifile.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-multipart.xml b/docs/plugins/inspect/plugin-multipart.xml
index d9c65c8..dc77899 100644
--- a/docs/plugins/inspect/plugin-multipart.xml
+++ b/docs/plugins/inspect/plugin-multipart.xml
@@ -3,7 +3,7 @@
   <description>multipart stream manipulation</description>
   <filename>../../gst/multipart/.libs/libgstmultipart.so</filename>
   <basename>libgstmultipart.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-navigationtest.xml b/docs/plugins/inspect/plugin-navigationtest.xml
index 6a86952..acf3bbd 100644
--- a/docs/plugins/inspect/plugin-navigationtest.xml
+++ b/docs/plugins/inspect/plugin-navigationtest.xml
@@ -3,7 +3,7 @@
   <description>Template for a video filter</description>
   <filename>../../gst/debugutils/.libs/libgstnavigationtest.so</filename>
   <basename>libgstnavigationtest.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-oss4.xml b/docs/plugins/inspect/plugin-oss4.xml
index 1aefb44..1516326 100644
--- a/docs/plugins/inspect/plugin-oss4.xml
+++ b/docs/plugins/inspect/plugin-oss4.xml
@@ -3,7 +3,7 @@
   <description>Open Sound System (OSS) version 4 support for GStreamer</description>
   <filename>../../sys/oss4/.libs/libgstoss4audio.so</filename>
   <basename>libgstoss4audio.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ossaudio.xml b/docs/plugins/inspect/plugin-ossaudio.xml
index 7fe8fab..cb00088 100644
--- a/docs/plugins/inspect/plugin-ossaudio.xml
+++ b/docs/plugins/inspect/plugin-ossaudio.xml
@@ -3,7 +3,7 @@
   <description>OSS (Open Sound System) support for GStreamer</description>
   <filename>../../sys/oss/.libs/libgstossaudio.so</filename>
   <basename>libgstossaudio.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-png.xml b/docs/plugins/inspect/plugin-png.xml
index e0c5024..eb49f93 100644
--- a/docs/plugins/inspect/plugin-png.xml
+++ b/docs/plugins/inspect/plugin-png.xml
@@ -3,7 +3,7 @@
   <description>PNG plugin library</description>
   <filename>../../ext/libpng/.libs/libgstpng.so</filename>
   <basename>libgstpng.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-pulseaudio.xml b/docs/plugins/inspect/plugin-pulseaudio.xml
index 64e4b37..7332158 100644
--- a/docs/plugins/inspect/plugin-pulseaudio.xml
+++ b/docs/plugins/inspect/plugin-pulseaudio.xml
@@ -3,7 +3,7 @@
   <description>PulseAudio plugin library</description>
   <filename>../../ext/pulse/.libs/libgstpulse.so</filename>
   <basename>libgstpulse.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-replaygain.xml b/docs/plugins/inspect/plugin-replaygain.xml
index 2db78f1..7f7fa1b 100644
--- a/docs/plugins/inspect/plugin-replaygain.xml
+++ b/docs/plugins/inspect/plugin-replaygain.xml
@@ -3,7 +3,7 @@
   <description>ReplayGain volume normalization</description>
   <filename>../../gst/replaygain/.libs/libgstreplaygain.so</filename>
   <basename>libgstreplaygain.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-rtp.xml b/docs/plugins/inspect/plugin-rtp.xml
index eead7ea..b72920e 100644
--- a/docs/plugins/inspect/plugin-rtp.xml
+++ b/docs/plugins/inspect/plugin-rtp.xml
@@ -3,7 +3,7 @@
   <description>Real-time protocol plugins</description>
   <filename>../../gst/rtp/.libs/libgstrtp.so</filename>
   <basename>libgstrtp.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-rtpmanager.xml b/docs/plugins/inspect/plugin-rtpmanager.xml
index d27c513..58af964 100644
--- a/docs/plugins/inspect/plugin-rtpmanager.xml
+++ b/docs/plugins/inspect/plugin-rtpmanager.xml
@@ -3,7 +3,7 @@
   <description>RTP session management plugin library</description>
   <filename>../../gst/rtpmanager/.libs/libgstrtpmanager.so</filename>
   <basename>libgstrtpmanager.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-rtsp.xml b/docs/plugins/inspect/plugin-rtsp.xml
index b80b128..c6b6a06 100644
--- a/docs/plugins/inspect/plugin-rtsp.xml
+++ b/docs/plugins/inspect/plugin-rtsp.xml
@@ -3,7 +3,7 @@
   <description>transfer data via RTSP</description>
   <filename>../../gst/rtsp/.libs/libgstrtsp.so</filename>
   <basename>libgstrtsp.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-shapewipe.xml b/docs/plugins/inspect/plugin-shapewipe.xml
index 83d644f..5499f67 100644
--- a/docs/plugins/inspect/plugin-shapewipe.xml
+++ b/docs/plugins/inspect/plugin-shapewipe.xml
@@ -3,7 +3,7 @@
   <description>Shape Wipe transition filter</description>
   <filename>../../gst/shapewipe/.libs/libgstshapewipe.so</filename>
   <basename>libgstshapewipe.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-shout2send.xml b/docs/plugins/inspect/plugin-shout2send.xml
index ed9db2a..e829ed5 100644
--- a/docs/plugins/inspect/plugin-shout2send.xml
+++ b/docs/plugins/inspect/plugin-shout2send.xml
@@ -3,7 +3,7 @@
   <description>Sends data to an icecast server using libshout2</description>
   <filename>../../ext/shout2/.libs/libgstshout2.so</filename>
   <basename>libgstshout2.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>libshout2</package>
diff --git a/docs/plugins/inspect/plugin-smpte.xml b/docs/plugins/inspect/plugin-smpte.xml
index f598b81..b67b2ed 100644
--- a/docs/plugins/inspect/plugin-smpte.xml
+++ b/docs/plugins/inspect/plugin-smpte.xml
@@ -3,7 +3,7 @@
   <description>Apply the standard SMPTE transitions on video images</description>
   <filename>../../gst/smpte/.libs/libgstsmpte.so</filename>
   <basename>libgstsmpte.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-soup.xml b/docs/plugins/inspect/plugin-soup.xml
index 0effd0f..3b6ac18 100644
--- a/docs/plugins/inspect/plugin-soup.xml
+++ b/docs/plugins/inspect/plugin-soup.xml
@@ -3,7 +3,7 @@
   <description>libsoup HTTP client src/sink</description>
   <filename>../../ext/soup/.libs/libgstsouphttpsrc.so</filename>
   <basename>libgstsouphttpsrc.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-spectrum.xml b/docs/plugins/inspect/plugin-spectrum.xml
index 8c25678..5e233da 100644
--- a/docs/plugins/inspect/plugin-spectrum.xml
+++ b/docs/plugins/inspect/plugin-spectrum.xml
@@ -3,7 +3,7 @@
   <description>Run an FFT on the audio signal, output spectrum data</description>
   <filename>../../gst/spectrum/.libs/libgstspectrum.so</filename>
   <basename>libgstspectrum.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-speex.xml b/docs/plugins/inspect/plugin-speex.xml
index 47efa8e..161c2dd 100644
--- a/docs/plugins/inspect/plugin-speex.xml
+++ b/docs/plugins/inspect/plugin-speex.xml
@@ -3,7 +3,7 @@
   <description>Speex plugin library</description>
   <filename>../../ext/speex/.libs/libgstspeex.so</filename>
   <basename>libgstspeex.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-taglib.xml b/docs/plugins/inspect/plugin-taglib.xml
index 7dee83b..363545c 100644
--- a/docs/plugins/inspect/plugin-taglib.xml
+++ b/docs/plugins/inspect/plugin-taglib.xml
@@ -3,7 +3,7 @@
   <description>Tag writing plug-in based on taglib</description>
   <filename>../../ext/taglib/.libs/libgsttaglib.so</filename>
   <basename>libgsttaglib.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-udp.xml b/docs/plugins/inspect/plugin-udp.xml
index 683806d..ab7754a 100644
--- a/docs/plugins/inspect/plugin-udp.xml
+++ b/docs/plugins/inspect/plugin-udp.xml
@@ -3,7 +3,7 @@
   <description>transfer data via UDP</description>
   <filename>../../gst/udp/.libs/libgstudp.so</filename>
   <basename>libgstudp.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-video4linux2.xml b/docs/plugins/inspect/plugin-video4linux2.xml
index cf12fa1..315f26b 100644
--- a/docs/plugins/inspect/plugin-video4linux2.xml
+++ b/docs/plugins/inspect/plugin-video4linux2.xml
@@ -3,7 +3,7 @@
   <description>elements for Video 4 Linux</description>
   <filename>../../sys/v4l2/.libs/libgstvideo4linux2.so</filename>
   <basename>libgstvideo4linux2.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videobox.xml b/docs/plugins/inspect/plugin-videobox.xml
index fb0b472..b973387 100644
--- a/docs/plugins/inspect/plugin-videobox.xml
+++ b/docs/plugins/inspect/plugin-videobox.xml
@@ -3,7 +3,7 @@
   <description>resizes a video by adding borders or cropping</description>
   <filename>../../gst/videobox/.libs/libgstvideobox.so</filename>
   <basename>libgstvideobox.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videocrop.xml b/docs/plugins/inspect/plugin-videocrop.xml
index 8495a7b..a045afe 100644
--- a/docs/plugins/inspect/plugin-videocrop.xml
+++ b/docs/plugins/inspect/plugin-videocrop.xml
@@ -3,7 +3,7 @@
   <description>Crops video into a user-defined region</description>
   <filename>../../gst/videocrop/.libs/libgstvideocrop.so</filename>
   <basename>libgstvideocrop.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videofilter.xml b/docs/plugins/inspect/plugin-videofilter.xml
index 7cb79c0..42f5b7d 100644
--- a/docs/plugins/inspect/plugin-videofilter.xml
+++ b/docs/plugins/inspect/plugin-videofilter.xml
@@ -3,7 +3,7 @@
   <description>Video filters plugin</description>
   <filename>../../gst/videofilter/.libs/libgstvideofilter.so</filename>
   <basename>libgstvideofilter.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videomixer.xml b/docs/plugins/inspect/plugin-videomixer.xml
index a048fd6..be88be7 100644
--- a/docs/plugins/inspect/plugin-videomixer.xml
+++ b/docs/plugins/inspect/plugin-videomixer.xml
@@ -3,7 +3,7 @@
   <description>Video mixer</description>
   <filename>../../gst/videomixer/.libs/libgstvideomixer.so</filename>
   <basename>libgstvideomixer.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-vpx.xml b/docs/plugins/inspect/plugin-vpx.xml
index 2c489d8..29f8af1 100644
--- a/docs/plugins/inspect/plugin-vpx.xml
+++ b/docs/plugins/inspect/plugin-vpx.xml
@@ -3,7 +3,7 @@
   <description>VP8 plugin</description>
   <filename>../../ext/vpx/.libs/libgstvpx.so</filename>
   <basename>libgstvpx.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-wavenc.xml b/docs/plugins/inspect/plugin-wavenc.xml
index 7e492b4..64f9454 100644
--- a/docs/plugins/inspect/plugin-wavenc.xml
+++ b/docs/plugins/inspect/plugin-wavenc.xml
@@ -3,7 +3,7 @@
   <description>Encode raw audio into WAV</description>
   <filename>../../gst/wavenc/.libs/libgstwavenc.so</filename>
   <basename>libgstwavenc.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-wavpack.xml b/docs/plugins/inspect/plugin-wavpack.xml
index c2cfd56..7a400d3 100644
--- a/docs/plugins/inspect/plugin-wavpack.xml
+++ b/docs/plugins/inspect/plugin-wavpack.xml
@@ -3,7 +3,7 @@
   <description>Wavpack lossless/lossy audio format handling</description>
   <filename>../../ext/wavpack/.libs/libgstwavpack.so</filename>
   <basename>libgstwavpack.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-wavparse.xml b/docs/plugins/inspect/plugin-wavparse.xml
index cd6158b..3cce7c4 100644
--- a/docs/plugins/inspect/plugin-wavparse.xml
+++ b/docs/plugins/inspect/plugin-wavparse.xml
@@ -3,7 +3,7 @@
   <description>Parse a .wav file into raw audio</description>
   <filename>../../gst/wavparse/.libs/libgstwavparse.so</filename>
   <basename>libgstwavparse.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ximagesrc.xml b/docs/plugins/inspect/plugin-ximagesrc.xml
index f215dcf..17e4953 100644
--- a/docs/plugins/inspect/plugin-ximagesrc.xml
+++ b/docs/plugins/inspect/plugin-ximagesrc.xml
@@ -3,7 +3,7 @@
   <description>X11 video input plugin using standard Xlib calls</description>
   <filename>../../sys/ximage/.libs/libgstximagesrc.so</filename>
   <basename>libgstximagesrc.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-y4menc.xml b/docs/plugins/inspect/plugin-y4menc.xml
index 16c14f3..a02a0df 100644
--- a/docs/plugins/inspect/plugin-y4menc.xml
+++ b/docs/plugins/inspect/plugin-y4menc.xml
@@ -3,7 +3,7 @@
   <description>Encodes a YUV frame into the yuv4mpeg format (mjpegtools)</description>
   <filename>../../gst/y4m/.libs/libgsty4menc.so</filename>
   <basename>libgsty4menc.so</basename>
-  <version>1.8.2</version>
+  <version>1.8.3</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/ext/jack/gstjackaudioclient.c b/ext/jack/gstjackaudioclient.c
index 0f06d10..9c50a6a 100644
--- a/ext/jack/gstjackaudioclient.c
+++ b/ext/jack/gstjackaudioclient.c
@@ -85,6 +85,7 @@
   GstJackClientType type;
   gboolean active;
   gboolean deactivate;
+  gboolean server_down;
 
   JackShutdownCallback shutdown;
   JackProcessCallback process;
@@ -227,12 +228,16 @@
   for (walk = conn->src_clients; walk; walk = g_list_next (walk)) {
     GstJackAudioClient *client = (GstJackAudioClient *) walk->data;
 
+    client->server_down = TRUE;
+    g_cond_signal (&conn->flush_cond);
     if (client->shutdown)
       client->shutdown (client->user_data);
   }
   for (walk = conn->sink_clients; walk; walk = g_list_next (walk)) {
     GstJackAudioClient *client = (GstJackAudioClient *) walk->data;
 
+    client->server_down = TRUE;
+    g_cond_signal (&conn->flush_cond);
     if (client->shutdown)
       client->shutdown (client->user_data);
   }
@@ -520,6 +525,7 @@
   client->buffer_size = buffer_size;
   client->sample_rate = sample_rate;
   client->user_data = user_data;
+  client->server_down = FALSE;
 
   /* add the client to the connection */
   gst_jack_audio_connection_add_client (conn, client);
@@ -600,7 +606,7 @@
     client->deactivate = TRUE;
 
     /* need to wait for process_cb run once more */
-    while (client->deactivate)
+    while (client->deactivate && !client->server_down)
       g_cond_wait (&client->conn->flush_cond, &client->conn->lock);
   }
   client->active = active;
diff --git a/gst-plugins-good.doap b/gst-plugins-good.doap
index ea48acb..c8309c1 100644
--- a/gst-plugins-good.doap
+++ b/gst-plugins-good.doap
@@ -34,6 +34,16 @@
 
  <release>
   <Version>
+   <revision>1.8.3</revision>
+   <branch>1.8</branch>
+   <name></name>
+   <created>2016-08-19</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.8.3.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
    <revision>1.8.2</revision>
    <branch>1.8</branch>
    <name></name>
diff --git a/gst-plugins-good.spec b/gst-plugins-good.spec
index c8f50cb..ce35722 100644
--- a/gst-plugins-good.spec
+++ b/gst-plugins-good.spec
@@ -4,7 +4,7 @@
 %define gst_minver   0.11.0
 
 Name: 		%{gstreamer}-plugins-good
-Version: 	1.8.2
+Version: 	1.8.3
 Release: 	1.gst
 Summary: 	GStreamer plug-ins with good code and licensing
 
diff --git a/gst/audiofx/audiopanoramaorc-dist.c b/gst/audiofx/audiopanoramaorc-dist.c
index 12d6aa0..3d5999a 100644
--- a/gst/audiofx/audiopanoramaorc-dist.c
+++ b/gst/audiofx/audiopanoramaorc-dist.c
@@ -264,7 +264,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 39, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 115,
-            49,
+        49,
         54, 95, 99, 104, 49, 95, 110, 111, 110, 101, 11, 4, 4, 12, 2, 2,
         195, 0, 4, 4, 2, 0,
       };
@@ -390,7 +390,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 39, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 102,
-            51,
+        51,
         50, 95, 99, 104, 49, 95, 110, 111, 110, 101, 11, 8, 8, 12, 4, 4,
         194, 0, 4, 4, 2, 0,
       };
@@ -502,7 +502,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 39, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 115,
-            49,
+        49,
         54, 95, 99, 104, 50, 95, 110, 111, 110, 101, 11, 4, 4, 12, 4, 4,
         21, 1, 79, 0, 4, 2, 0,
       };
@@ -614,7 +614,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 39, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 102,
-            51,
+        51,
         50, 95, 99, 104, 50, 95, 110, 111, 110, 101, 11, 8, 8, 12, 8, 8,
         21, 1, 112, 0, 4, 2, 0,
       };
@@ -842,7 +842,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 38, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 115,
-            49,
+        49,
         54, 95, 99, 104, 49, 95, 112, 115, 121, 11, 4, 4, 12, 2, 2, 17,
         4, 17, 4, 20, 8, 20, 4, 20, 4, 153, 33, 4, 211, 33, 33, 202,
         34, 33, 25, 202, 33, 33, 24, 194, 32, 33, 34, 21, 1, 210, 32, 32,
@@ -1053,7 +1053,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 38, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 102,
-            51,
+        51,
         50, 95, 99, 104, 49, 95, 112, 115, 121, 11, 8, 8, 12, 4, 4, 17,
         4, 17, 4, 20, 4, 20, 4, 202, 33, 4, 25, 202, 32, 4, 24, 194,
         0, 32, 33, 2, 0,
@@ -1355,7 +1355,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 44, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 115,
-            49,
+        49,
         54, 95, 99, 104, 50, 95, 112, 115, 121, 95, 114, 105, 103, 104, 116, 11,
         4, 4, 12, 4, 4, 17, 4, 17, 4, 20, 8, 20, 4, 20, 4, 20,
         4, 21, 1, 153, 32, 4, 21, 1, 211, 32, 32, 192, 33, 32, 193, 34,
@@ -1675,7 +1675,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 43, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 115,
-            49,
+        49,
         54, 95, 99, 104, 50, 95, 112, 115, 121, 95, 108, 101, 102, 116, 11, 4,
         4, 12, 4, 4, 17, 4, 17, 4, 20, 8, 20, 4, 20, 4, 20, 4,
         21, 1, 153, 32, 4, 21, 1, 211, 32, 32, 192, 33, 32, 193, 35, 32,
@@ -1945,7 +1945,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 44, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 102,
-            51,
+        51,
         50, 95, 99, 104, 50, 95, 112, 115, 121, 95, 114, 105, 103, 104, 116, 11,
         8, 8, 12, 8, 8, 17, 4, 17, 4, 20, 4, 20, 4, 20, 4, 192,
         32, 4, 193, 33, 4, 202, 34, 32, 25, 202, 32, 32, 24, 200, 33, 34,
@@ -2205,7 +2205,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 43, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 102,
-            51,
+        51,
         50, 95, 99, 104, 50, 95, 112, 115, 121, 95, 108, 101, 102, 116, 11, 8,
         8, 12, 8, 8, 17, 4, 17, 4, 20, 4, 20, 4, 20, 4, 192, 32,
         4, 193, 34, 4, 202, 33, 34, 24, 202, 34, 34, 25, 200, 32, 33, 32,
@@ -2433,7 +2433,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 44, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 115,
-            49,
+        49,
         54, 95, 99, 104, 49, 95, 115, 105, 109, 95, 114, 105, 103, 104, 116, 11,
         4, 4, 12, 2, 2, 17, 4, 20, 8, 20, 4, 20, 4, 153, 33, 4,
         211, 33, 33, 202, 34, 33, 24, 194, 32, 33, 34, 21, 1, 210, 32, 32,
@@ -2655,7 +2655,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 43, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 115,
-            49,
+        49,
         54, 95, 99, 104, 49, 95, 115, 105, 109, 95, 108, 101, 102, 116, 11, 4,
         4, 12, 2, 2, 17, 4, 20, 8, 20, 4, 20, 4, 153, 34, 4, 211,
         34, 34, 202, 33, 34, 24, 194, 32, 33, 34, 21, 1, 210, 32, 32, 21,
@@ -2909,7 +2909,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 44, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 115,
-            49,
+        49,
         54, 95, 99, 104, 50, 95, 115, 105, 109, 95, 114, 105, 103, 104, 116, 11,
         4, 4, 12, 4, 4, 17, 4, 20, 8, 20, 4, 20, 4, 21, 1, 153,
         32, 4, 21, 1, 211, 32, 32, 192, 33, 32, 193, 34, 32, 202, 34, 34,
@@ -3168,7 +3168,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 43, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 115,
-            49,
+        49,
         54, 95, 99, 104, 50, 95, 115, 105, 109, 95, 108, 101, 102, 116, 11, 4,
         4, 12, 4, 4, 17, 4, 20, 8, 20, 4, 20, 4, 21, 1, 153, 32,
         4, 21, 1, 211, 32, 32, 192, 33, 32, 193, 34, 32, 202, 33, 33, 24,
@@ -3355,7 +3355,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 44, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 102,
-            51,
+        51,
         50, 95, 99, 104, 49, 95, 115, 105, 109, 95, 114, 105, 103, 104, 116, 11,
         8, 8, 12, 4, 4, 17, 4, 20, 4, 20, 4, 112, 32, 4, 202, 33,
         4, 24, 194, 0, 32, 33, 2, 0,
@@ -3529,7 +3529,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 43, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 102,
-            51,
+        51,
         50, 95, 99, 104, 49, 95, 115, 105, 109, 95, 108, 101, 102, 116, 11, 8,
         8, 12, 4, 4, 17, 4, 20, 4, 20, 4, 202, 32, 4, 24, 112, 33,
         4, 194, 0, 32, 33, 2, 0,
@@ -3725,7 +3725,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 44, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 102,
-            51,
+        51,
         50, 95, 99, 104, 50, 95, 115, 105, 109, 95, 114, 105, 103, 104, 116, 11,
         8, 8, 12, 8, 8, 17, 4, 20, 4, 20, 4, 192, 32, 4, 193, 33,
         4, 202, 33, 33, 24, 194, 0, 32, 33, 2, 0,
@@ -3923,7 +3923,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 43, 97, 117, 100, 105, 111, 112, 97, 110, 111, 114, 97, 109, 97,
         109, 95, 111, 114, 99, 95, 112, 114, 111, 99, 101, 115, 115, 95, 102,
-            51,
+        51,
         50, 95, 99, 104, 50, 95, 115, 105, 109, 95, 108, 101, 102, 116, 11, 8,
         8, 12, 8, 8, 17, 4, 20, 4, 20, 4, 192, 32, 4, 193, 33, 4,
         202, 32, 32, 24, 194, 0, 32, 33, 2, 0,
diff --git a/gst/audioparsers/gstaacparse.c b/gst/audioparsers/gstaacparse.c
index 982d242..514e4f4 100644
--- a/gst/audioparsers/gstaacparse.c
+++ b/gst/audioparsers/gstaacparse.c
@@ -328,17 +328,26 @@
       gst_aac_parse_set_src_caps (aacparse, caps);
       if (aacparse->header_type == aacparse->output_header_type)
         gst_base_parse_set_passthrough (parse, TRUE);
-    } else
+    } else {
       return FALSE;
+    }
 
     /* caps info overrides */
     gst_structure_get_int (structure, "rate", &aacparse->sample_rate);
     gst_structure_get_int (structure, "channels", &aacparse->channels);
   } else {
-    aacparse->sample_rate = 0;
-    aacparse->channels = 0;
-    aacparse->header_type = DSPAAC_HEADER_NOT_PARSED;
-    gst_base_parse_set_passthrough (parse, FALSE);
+    const gchar *stream_format =
+        gst_structure_get_string (structure, "stream-format");
+
+    if (g_strcmp0 (stream_format, "raw") == 0) {
+      GST_ERROR_OBJECT (parse, "Need codec_data for raw AAC");
+      return FALSE;
+    } else {
+      aacparse->sample_rate = 0;
+      aacparse->channels = 0;
+      aacparse->header_type = DSPAAC_HEADER_NOT_PARSED;
+      gst_base_parse_set_passthrough (parse, FALSE);
+    }
   }
 
   return TRUE;
diff --git a/gst/deinterlace/tvtime-dist.c b/gst/deinterlace/tvtime-dist.c
index d92ce30..9ac3346 100644
--- a/gst/deinterlace/tvtime-dist.c
+++ b/gst/deinterlace/tvtime-dist.c
@@ -713,7 +713,7 @@
       static const orc_uint8 bc[] = {
         1, 9, 29, 100, 101, 105, 110, 116, 101, 114, 108, 97, 99, 101, 95, 108,
         105, 110, 101, 95, 108, 105, 110, 101, 97, 114, 95, 98, 108, 101, 110,
-            100,
+        100,
         11, 1, 1, 12, 1, 1, 12, 1, 1, 12, 1, 1, 14, 2, 2, 0,
         0, 0, 20, 2, 20, 2, 20, 2, 150, 32, 4, 150, 33, 5, 150, 34,
         6, 70, 32, 32, 33, 70, 34, 34, 34, 70, 32, 32, 34, 70, 32, 32,
diff --git a/gst/flv/gstflvdemux.c b/gst/flv/gstflvdemux.c
index 7f0ed66..ae73467 100644
--- a/gst/flv/gstflvdemux.c
+++ b/gst/flv/gstflvdemux.c
@@ -255,13 +255,17 @@
   GstDateTime *dt = NULL;
   gchar **tokens;
   guint64 d;
-  gchar *endptr;
+  gchar *endptr, *stripped;
   gint i, hh, mm, ss;
   gint year = -1, month = -1, day = -1;
   gint hour = -1, minute = -1, seconds = -1;
 
+  stripped = g_strstrip (g_strdup (s));
+
   /* "Fri Oct 15 15:13:16 2004" needs to be parsed */
-  tokens = g_strsplit (s, " ", -1);
+  tokens = g_strsplit (stripped, " ", -1);
+
+  g_free (stripped);
 
   if (g_strv_length (tokens) != 5)
     goto out;
diff --git a/gst/isomp4/gstqtmux.c b/gst/isomp4/gstqtmux.c
index 5be830b..5cabb8f 100644
--- a/gst/isomp4/gstqtmux.c
+++ b/gst/isomp4/gstqtmux.c
@@ -3509,9 +3509,10 @@
               "assuming 'raw'");
         }
 
-        if (!codec_data || gst_buffer_get_size ((GstBuffer *) codec_data) < 2)
+        if (!codec_data || gst_buffer_get_size ((GstBuffer *) codec_data) < 2) {
           GST_WARNING_OBJECT (qtmux, "no (valid) codec_data for AAC audio");
-        else {
+          goto refuse_caps;
+        } else {
           guint8 profile;
 
           gst_buffer_extract ((GstBuffer *) codec_data, 0, &profile, 1);
@@ -4084,7 +4085,7 @@
   } else if (strcmp (mimetype, "video/x-prores") == 0) {
     const gchar *variant;
 
-    variant = gst_structure_get_string (structure, "format");
+    variant = gst_structure_get_string (structure, "variant");
     if (!variant || !g_strcmp0 (variant, "standard"))
       entry.fourcc = FOURCC_apcn;
     else if (!g_strcmp0 (variant, "lt"))
diff --git a/gst/isomp4/qtdemux.c b/gst/isomp4/qtdemux.c
index db2d361..2e204d8 100644
--- a/gst/isomp4/qtdemux.c
+++ b/gst/isomp4/qtdemux.c
@@ -7207,6 +7207,8 @@
   }
 
   if (stream->pad) {
+    GstCaps *prev_caps = NULL;
+
     GST_PAD_ELEMENT_PRIVATE (stream->pad) = stream;
     gst_pad_set_event_function (stream->pad, gst_qtdemux_handle_src_event);
     gst_pad_set_query_function (stream->pad, gst_qtdemux_handle_src_query);
@@ -7222,7 +7224,6 @@
       }
     }
 
-    GST_DEBUG_OBJECT (qtdemux, "setting caps %" GST_PTR_FORMAT, stream->caps);
     if (stream->new_stream) {
       gchar *stream_id;
       GstEvent *event;
@@ -7258,7 +7259,18 @@
       gst_pad_push_event (stream->pad, event);
       g_free (stream_id);
     }
-    gst_pad_set_caps (stream->pad, stream->caps);
+
+    prev_caps = gst_pad_get_current_caps (stream->pad);
+
+    if (!prev_caps || !gst_caps_is_equal_fixed (prev_caps, stream->caps)) {
+      GST_DEBUG_OBJECT (qtdemux, "setting caps %" GST_PTR_FORMAT, stream->caps);
+      gst_pad_set_caps (stream->pad, stream->caps);
+    } else {
+      GST_DEBUG_OBJECT (qtdemux, "ignore duplicated caps");
+    }
+
+    if (prev_caps)
+      gst_caps_unref (prev_caps);
     stream->new_caps = FALSE;
   }
   return TRUE;
@@ -12304,6 +12316,55 @@
       if (data_ptr != NULL && data_len >= 2) {
         gst_codec_utils_aac_caps_set_level_and_profile (stream->caps,
             data_ptr, data_len);
+      } else {
+        const gchar *profile_str = NULL;
+        GstBuffer *buffer;
+        GstMapInfo map;
+        guint8 *codec_data;
+        gint rate_idx, profile;
+
+        /* No codec_data, let's invent something.
+         * FIXME: This is wrong for SBR! */
+
+        GST_WARNING_OBJECT (qtdemux, "No codec_data for AAC available");
+
+        buffer = gst_buffer_new_and_alloc (2);
+        gst_buffer_map (buffer, &map, GST_MAP_WRITE);
+        codec_data = map.data;
+
+        rate_idx =
+            gst_codec_utils_aac_get_index_from_sample_rate (stream->rate);
+
+        switch (object_type_id) {
+          case 0x66:
+            profile_str = "main";
+            profile = 0;
+            break;
+          case 67:
+            profile_str = "lc";
+            profile = 1;
+            break;
+          case 68:
+            profile_str = "ssr";
+            profile = 2;
+            break;
+          default:
+            profile = 3;
+            break;
+        }
+
+        codec_data[0] = ((profile + 1) << 3) | ((rate_idx & 0xE) >> 1);
+        codec_data[1] = ((rate_idx & 0x1) << 7) | (stream->n_channels << 3);
+
+        gst_buffer_unmap (buffer, &map);
+        gst_caps_set_simple (stream->caps, "codec_data", GST_TYPE_BUFFER,
+            buffer, NULL);
+        gst_buffer_unref (buffer);
+
+        if (profile_str) {
+          gst_caps_set_simple (stream->caps, "profile", G_TYPE_STRING,
+              profile_str, NULL);
+        }
       }
       break;
     case 0x60:                 /* MPEG-2, various profiles */
diff --git a/gst/matroska/matroska-mux.c b/gst/matroska/matroska-mux.c
index 811b12e..ab544ff 100644
--- a/gst/matroska/matroska-mux.c
+++ b/gst/matroska/matroska-mux.c
@@ -2872,7 +2872,7 @@
     thepad = collect_pad->collect.pad;
 
     if (gst_pad_is_linked (thepad) && gst_pad_is_active (thepad) &&
-        collect_pad->track->codec_id != 0) {
+        collect_pad->track->codec_id != NULL) {
       collect_pad->track->num = tracknum++;
       child = gst_ebml_write_master_start (ebml, GST_MATROSKA_ID_TRACKENTRY);
       gst_matroska_mux_track_header (mux, collect_pad->track);
@@ -3535,14 +3535,12 @@
   }
 
   /* for dirac we have to queue up everything up to a picture unit */
-  if (collect_pad->track->codec_id != NULL &&
-      strcmp (collect_pad->track->codec_id,
-          GST_MATROSKA_CODEC_ID_VIDEO_DIRAC) == 0) {
+  if (!strcmp (collect_pad->track->codec_id, GST_MATROSKA_CODEC_ID_VIDEO_DIRAC)) {
     buf = gst_matroska_mux_handle_dirac_packet (mux, collect_pad, buf);
     if (!buf)
       return GST_FLOW_OK;
-  } else if (strcmp (collect_pad->track->codec_id,
-          GST_MATROSKA_CODEC_ID_VIDEO_PRORES) == 0) {
+  } else if (!strcmp (collect_pad->track->codec_id,
+          GST_MATROSKA_CODEC_ID_VIDEO_PRORES)) {
     /* Remove the 'Frame container atom' header' */
     buf = gst_buffer_make_writable (buf);
     gst_buffer_resize (buf, 8, gst_buffer_get_size (buf) - 8);
@@ -3812,6 +3810,12 @@
     goto exit;
   }
 
+  if (best->track->codec_id == NULL) {
+    GST_ERROR_OBJECT (best->collect.pad, "No codec-id for pad");
+    ret = GST_FLOW_NOT_NEGOTIATED;
+    goto exit;
+  }
+
   /* if we have a best stream, should also have a buffer */
   g_assert (buf);
 
diff --git a/gst/multifile/gstsplitmuxsink.c b/gst/multifile/gstsplitmuxsink.c
index ae9b7e8..5cd29f7 100644
--- a/gst/multifile/gstsplitmuxsink.c
+++ b/gst/multifile/gstsplitmuxsink.c
@@ -248,7 +248,6 @@
   splitmux->max_files = DEFAULT_MAX_FILES;
 
   GST_OBJECT_FLAG_SET (splitmux, GST_ELEMENT_FLAG_SINK);
-  g_object_set (splitmux, "async-handling", TRUE, NULL);
 }
 
 static void
@@ -399,6 +398,23 @@
   }
 }
 
+/* Convenience function */
+static inline GstClockTimeDiff
+my_segment_to_running_time (GstSegment * segment, GstClockTime val)
+{
+  GstClockTimeDiff res = GST_CLOCK_STIME_NONE;
+
+  if (GST_CLOCK_TIME_IS_VALID (val)) {
+    gboolean sign =
+        gst_segment_to_running_time_full (segment, GST_FORMAT_TIME, val, &val);
+    if (sign > 0)
+      res = val;
+    else if (sign < 0)
+      res = -val;
+  }
+  return res;
+}
+
 static GstPad *
 mq_sink_to_src (GstElement * mq, GstPad * sink_pad)
 {
@@ -454,7 +470,7 @@
   ctx->splitmux = splitmux;
   gst_segment_init (&ctx->in_segment, GST_FORMAT_UNDEFINED);
   gst_segment_init (&ctx->out_segment, GST_FORMAT_UNDEFINED);
-  ctx->in_running_time = ctx->out_running_time = 0;
+  ctx->in_running_time = ctx->out_running_time = GST_CLOCK_STIME_NONE;
   g_queue_init (&ctx->queued_bufs);
   return ctx;
 }
@@ -546,11 +562,11 @@
   do {
 
     GST_LOG_OBJECT (ctx->srcpad,
-        "Checking running time %" GST_TIME_FORMAT " against max %"
-        GST_TIME_FORMAT, GST_TIME_ARGS (ctx->out_running_time),
-        GST_TIME_ARGS (splitmux->max_out_running_time));
+        "Checking running time %" GST_STIME_FORMAT " against max %"
+        GST_STIME_FORMAT, GST_STIME_ARGS (ctx->out_running_time),
+        GST_STIME_ARGS (splitmux->max_out_running_time));
 
-    if (splitmux->max_out_running_time == GST_CLOCK_TIME_NONE ||
+    if (splitmux->max_out_running_time == GST_CLOCK_STIME_NONE ||
         ctx->out_running_time < splitmux->max_out_running_time) {
       splitmux->have_muxed_something = TRUE;
       return;
@@ -571,17 +587,17 @@
 
     GST_INFO_OBJECT (ctx->srcpad,
         "Sleeping for running time %"
-        GST_TIME_FORMAT " (max %" GST_TIME_FORMAT ")",
-        GST_TIME_ARGS (ctx->out_running_time),
-        GST_TIME_ARGS (splitmux->max_out_running_time));
+        GST_STIME_FORMAT " (max %" GST_STIME_FORMAT ")",
+        GST_STIME_ARGS (ctx->out_running_time),
+        GST_STIME_ARGS (splitmux->max_out_running_time));
     ctx->out_blocked = TRUE;
     /* Expand the mq if needed before sleeping */
     check_queue_length (splitmux, ctx);
     GST_SPLITMUX_WAIT (splitmux);
     ctx->out_blocked = FALSE;
     GST_INFO_OBJECT (ctx->srcpad,
-        "Woken for new max running time %" GST_TIME_FORMAT,
-        GST_TIME_ARGS (splitmux->max_out_running_time));
+        "Woken for new max running time %" GST_STIME_FORMAT,
+        GST_STIME_ARGS (splitmux->max_out_running_time));
   } while (1);
 }
 
@@ -631,6 +647,7 @@
         break;
       case GST_EVENT_GAP:{
         GstClockTime gap_ts;
+        GstClockTimeDiff rtime;
 
         gst_event_parse_gap (event, &gap_ts, NULL);
         if (gap_ts == GST_CLOCK_TIME_NONE)
@@ -638,28 +655,30 @@
 
         GST_SPLITMUX_LOCK (splitmux);
 
-        gap_ts = gst_segment_to_running_time (&ctx->out_segment,
-            GST_FORMAT_TIME, gap_ts);
+        rtime = my_segment_to_running_time (&ctx->out_segment, gap_ts);
 
-        GST_LOG_OBJECT (pad, "Have GAP w/ ts %" GST_TIME_FORMAT,
-            GST_TIME_ARGS (gap_ts));
+        GST_LOG_OBJECT (pad, "Have GAP w/ ts %" GST_STIME_FORMAT,
+            GST_STIME_ARGS (rtime));
 
         if (splitmux->state == SPLITMUX_STATE_STOPPED)
           goto beach;
-        ctx->out_running_time = gap_ts;
-        complete_or_wait_on_out (splitmux, ctx);
+
+        if (rtime != GST_CLOCK_STIME_NONE) {
+          ctx->out_running_time = rtime;
+          complete_or_wait_on_out (splitmux, ctx);
+        }
         GST_SPLITMUX_UNLOCK (splitmux);
         break;
       }
       case GST_EVENT_CUSTOM_DOWNSTREAM:{
         const GstStructure *s;
-        GstClockTime ts = 0;
+        GstClockTimeDiff ts = 0;
 
         s = gst_event_get_structure (event);
         if (!gst_structure_has_name (s, "splitmuxsink-unblock"))
           break;
 
-        gst_structure_get_uint64 (s, "timestamp", &ts);
+        gst_structure_get_int64 (s, "timestamp", &ts);
 
         GST_SPLITMUX_LOCK (splitmux);
 
@@ -691,9 +710,9 @@
   ctx->out_running_time = buf_info->run_ts;
 
   GST_LOG_OBJECT (splitmux,
-      "Pad %" GST_PTR_FORMAT " buffer with TS %" GST_TIME_FORMAT
+      "Pad %" GST_PTR_FORMAT " buffer with run TS %" GST_STIME_FORMAT
       " size %" G_GSIZE_FORMAT,
-      pad, GST_TIME_ARGS (ctx->out_running_time), buf_info->buf_size);
+      pad, GST_STIME_ARGS (ctx->out_running_time), buf_info->buf_size);
 
   if (splitmux->opening_first_fragment) {
     send_fragment_opened_closed_msg (splitmux, TRUE);
@@ -702,7 +721,7 @@
 
   complete_or_wait_on_out (splitmux, ctx);
 
-  if (splitmux->muxed_out_time == GST_CLOCK_TIME_NONE ||
+  if (splitmux->muxed_out_time == GST_CLOCK_STIME_NONE ||
       splitmux->muxed_out_time < buf_info->run_ts)
     splitmux->muxed_out_time = buf_info->run_ts;
 
@@ -712,8 +731,8 @@
   {
     GstBuffer *buf = gst_pad_probe_info_get_buffer (info);
     GST_LOG_OBJECT (pad, "Returning to pass buffer %" GST_PTR_FORMAT
-        " run ts %" GST_TIME_FORMAT, buf,
-        GST_TIME_ARGS (ctx->out_running_time));
+        " run ts %" GST_STIME_FORMAT, buf,
+        GST_STIME_ARGS (ctx->out_running_time));
   }
 #endif
 
@@ -756,6 +775,8 @@
 start_next_fragment (GstSplitMuxSink * splitmux)
 {
   /* 1 change to new file */
+  splitmux->switching_fragment = TRUE;
+
   gst_element_set_locked_state (splitmux->muxer, TRUE);
   gst_element_set_locked_state (splitmux->active_sink, TRUE);
   gst_element_set_state (splitmux->muxer, GST_STATE_NULL);
@@ -768,6 +789,8 @@
   gst_element_set_locked_state (splitmux->muxer, FALSE);
   gst_element_set_locked_state (splitmux->active_sink, FALSE);
 
+  splitmux->switching_fragment = FALSE;
+
   g_list_foreach (splitmux->contexts, (GFunc) restart_context, splitmux);
 
   /* Switch state and go back to processing */
@@ -776,7 +799,7 @@
     splitmux->max_out_running_time = splitmux->reference_ctx->in_running_time;
   } else {
     splitmux->state = SPLITMUX_STATE_WAITING_GOP_COMPLETE;
-    splitmux->max_out_running_time = GST_CLOCK_TIME_NONE;
+    splitmux->max_out_running_time = GST_CLOCK_STIME_NONE;
     splitmux->have_muxed_something = FALSE;
   }
   splitmux->have_muxed_something =
@@ -787,8 +810,8 @@
   splitmux->mux_start_bytes = splitmux->muxed_out_bytes;
 
   GST_DEBUG_OBJECT (splitmux,
-      "Restarting flow for new fragment. New running time %" GST_TIME_FORMAT,
-      GST_TIME_ARGS (splitmux->max_out_running_time));
+      "Restarting flow for new fragment. New running time %" GST_STIME_FORMAT,
+      GST_STIME_ARGS (splitmux->max_out_running_time));
 
   send_fragment_opened_closed_msg (splitmux, TRUE);
 
@@ -808,7 +831,7 @@
       send_fragment_opened_closed_msg (splitmux, FALSE);
 
       if (splitmux->state == SPLITMUX_STATE_ENDING_FILE &&
-          splitmux->max_out_running_time != GST_CLOCK_TIME_NONE) {
+          splitmux->max_out_running_time != GST_CLOCK_STIME_NONE) {
         GST_DEBUG_OBJECT (splitmux, "Caught EOS at end of fragment, dropping");
         splitmux->state = SPLITMUX_STATE_START_NEXT_FRAGMENT;
         GST_SPLITMUX_BROADCAST (splitmux);
@@ -819,6 +842,20 @@
       }
       GST_SPLITMUX_UNLOCK (splitmux);
       break;
+    case GST_MESSAGE_ASYNC_START:
+    case GST_MESSAGE_ASYNC_DONE:
+      /* Ignore state changes from our children while switching */
+      if (splitmux->switching_fragment) {
+        if (GST_MESSAGE_SRC (message) == (GstObject *) splitmux->active_sink ||
+            GST_MESSAGE_SRC (message) == (GstObject *) splitmux->muxer) {
+          GST_LOG_OBJECT (splitmux,
+              "Ignoring state change from child %" GST_PTR_FORMAT
+              " while switching", GST_MESSAGE_SRC (message));
+          gst_message_unref (message);
+          return;
+        }
+      }
+      break;
     default:
       break;
   }
@@ -838,7 +875,7 @@
 {
   GList *cur;
   gsize queued_bytes = 0;
-  GstClockTime queued_time = 0;
+  GstClockTimeDiff queued_time = 0;
 
   /* Assess if the multiqueue contents overflowed the current file */
   for (cur = g_list_first (splitmux->contexts);
@@ -858,8 +895,8 @@
   /* Expand queued bytes estimate by muxer overhead */
   queued_bytes += (queued_bytes * splitmux->mux_overhead);
 
-  GST_LOG_OBJECT (splitmux, "mq at TS %" GST_TIME_FORMAT
-      " bytes %" G_GSIZE_FORMAT, GST_TIME_ARGS (queued_time), queued_bytes);
+  GST_LOG_OBJECT (splitmux, "mq at TS %" GST_STIME_FORMAT
+      " bytes %" G_GSIZE_FORMAT, GST_STIME_ARGS (queued_time), queued_bytes);
 
   /* Check for overrun - have we output at least one byte and overrun
    * either threshold? */
@@ -873,16 +910,16 @@
 
     GST_INFO_OBJECT (splitmux,
         "mq overflowed since last, draining out. max out TS is %"
-        GST_TIME_FORMAT, GST_TIME_ARGS (splitmux->max_out_running_time));
+        GST_STIME_FORMAT, GST_STIME_ARGS (splitmux->max_out_running_time));
     GST_SPLITMUX_BROADCAST (splitmux);
 
   } else {
     /* No overflow */
     GST_LOG_OBJECT (splitmux,
         "This GOP didn't overflow the fragment. Bytes sent %" G_GSIZE_FORMAT
-        " queued %" G_GSIZE_FORMAT " time %" GST_TIME_FORMAT " Continuing.",
+        " queued %" G_GSIZE_FORMAT " time %" GST_STIME_FORMAT " Continuing.",
         splitmux->muxed_out_bytes - splitmux->mux_start_bytes,
-        queued_bytes, GST_TIME_ARGS (queued_time));
+        queued_bytes, GST_STIME_ARGS (queued_time));
 
     /* Wake everyone up to push this one GOP, then sleep */
     splitmux->have_muxed_something = TRUE;
@@ -892,11 +929,11 @@
       splitmux->max_out_running_time = splitmux->reference_ctx->in_running_time;
     } else {
       splitmux->state = SPLITMUX_STATE_WAITING_GOP_COMPLETE;
-      splitmux->max_out_running_time = GST_CLOCK_TIME_NONE;
+      splitmux->max_out_running_time = GST_CLOCK_STIME_NONE;
     }
 
     GST_LOG_OBJECT (splitmux, "Waking output for complete GOP, TS %"
-        GST_TIME_FORMAT, GST_TIME_ARGS (splitmux->max_out_running_time));
+        GST_STIME_FORMAT, GST_STIME_ARGS (splitmux->max_out_running_time));
     GST_SPLITMUX_BROADCAST (splitmux);
   }
 
@@ -912,24 +949,24 @@
 {
   GList *cur;
   gboolean ready = TRUE;
-  GstClockTime current_max_in_running_time;
+  GstClockTimeDiff current_max_in_running_time;
 
   if (splitmux->state == SPLITMUX_STATE_WAITING_GOP_COMPLETE) {
     /* Iterate each pad, and check that the input running time is at least
      * up to the reference running time, and if so handle the collected GOP */
     GST_LOG_OBJECT (splitmux, "Checking GOP collected, Max in running time %"
-        GST_TIME_FORMAT " ctx %p",
-        GST_TIME_ARGS (splitmux->max_in_running_time), ctx);
+        GST_STIME_FORMAT " ctx %p",
+        GST_STIME_ARGS (splitmux->max_in_running_time), ctx);
     for (cur = g_list_first (splitmux->contexts); cur != NULL;
         cur = g_list_next (cur)) {
       MqStreamCtx *tmpctx = (MqStreamCtx *) (cur->data);
 
       GST_LOG_OBJECT (splitmux,
-          "Context %p (src pad %" GST_PTR_FORMAT ") TS %" GST_TIME_FORMAT
+          "Context %p (src pad %" GST_PTR_FORMAT ") TS %" GST_STIME_FORMAT
           " EOS %d", tmpctx, tmpctx->srcpad,
-          GST_TIME_ARGS (tmpctx->in_running_time), tmpctx->in_eos);
+          GST_STIME_ARGS (tmpctx->in_running_time), tmpctx->in_eos);
 
-      if (splitmux->max_in_running_time != GST_CLOCK_TIME_NONE &&
+      if (splitmux->max_in_running_time != G_MAXINT64 &&
           tmpctx->in_running_time < splitmux->max_in_running_time &&
           !tmpctx->in_eos) {
         GST_LOG_OBJECT (splitmux,
@@ -1050,7 +1087,7 @@
         gst_segment_init (&ctx->in_segment, GST_FORMAT_UNDEFINED);
         ctx->in_eos = FALSE;
         ctx->in_bytes = 0;
-        ctx->in_running_time = 0;
+        ctx->in_running_time = GST_CLOCK_STIME_NONE;
         GST_SPLITMUX_UNLOCK (splitmux);
         break;
       case GST_EVENT_EOS:
@@ -1063,7 +1100,7 @@
         if (ctx->is_reference) {
           GST_INFO_OBJECT (splitmux, "Got Reference EOS. Finishing up");
           /* Act as if this is a new keyframe with infinite timestamp */
-          splitmux->max_in_running_time = GST_CLOCK_TIME_NONE;
+          splitmux->max_in_running_time = G_MAXINT64;
           splitmux->state = SPLITMUX_STATE_WAITING_GOP_COMPLETE;
           /* Wake up other input pads to collect this GOP */
           GST_SPLITMUX_BROADCAST (splitmux);
@@ -1091,6 +1128,8 @@
   else
     ts = GST_BUFFER_DTS (buf);
 
+  GST_LOG_OBJECT (pad, "Buffer TS is %" GST_TIME_FORMAT, GST_TIME_ARGS (ts));
+
   GST_SPLITMUX_LOCK (splitmux);
 
   if (splitmux->state == SPLITMUX_STATE_STOPPED)
@@ -1099,23 +1138,26 @@
   /* If this buffer has a timestamp, advance the input timestamp of the
    * stream */
   if (GST_CLOCK_TIME_IS_VALID (ts)) {
-    GstClockTime running_time =
-        gst_segment_to_running_time (&ctx->in_segment, GST_FORMAT_TIME,
-        GST_BUFFER_TIMESTAMP (buf));
+    GstClockTimeDiff running_time =
+        my_segment_to_running_time (&ctx->in_segment, ts);
 
-    if (GST_CLOCK_TIME_IS_VALID (running_time) &&
-        (ctx->in_running_time == GST_CLOCK_TIME_NONE
-            || running_time > ctx->in_running_time))
+    GST_LOG_OBJECT (pad, "Buffer running TS is %" GST_STIME_FORMAT,
+        GST_STIME_ARGS (running_time));
+
+    if (GST_CLOCK_STIME_IS_VALID (running_time)
+        && running_time > ctx->in_running_time)
       ctx->in_running_time = running_time;
   }
 
   /* Try to make sure we have a valid running time */
-  if (!GST_CLOCK_TIME_IS_VALID (ctx->in_running_time)) {
+  if (!GST_CLOCK_STIME_IS_VALID (ctx->in_running_time)) {
     ctx->in_running_time =
-        gst_segment_to_running_time (&ctx->in_segment, GST_FORMAT_TIME,
-        ctx->in_segment.start);
+        my_segment_to_running_time (&ctx->in_segment, ctx->in_segment.start);
   }
 
+  GST_LOG_OBJECT (pad, "in running time now %" GST_STIME_FORMAT,
+      GST_STIME_ARGS (ctx->in_running_time));
+
   buf_info->run_ts = ctx->in_running_time;
   buf_info->buf_size = gst_buffer_get_size (buf);
 
@@ -1123,12 +1165,19 @@
   ctx->in_bytes += buf_info->buf_size;
 
   /* initialize mux_start_time */
-  if (ctx->is_reference && splitmux->mux_start_time == 0)
+  if (ctx->is_reference && splitmux->mux_start_time == GST_CLOCK_STIME_NONE) {
     splitmux->mux_start_time = buf_info->run_ts;
+    GST_LOG_OBJECT (splitmux, "Mux start time now %" GST_STIME_FORMAT,
+        GST_STIME_ARGS (splitmux->mux_start_time));
+    /* Also take this as the first start time when starting up,
+     * so that we start counting overflow from the first frame */
+    if (!GST_CLOCK_STIME_IS_VALID (splitmux->max_in_running_time))
+      splitmux->max_in_running_time = splitmux->mux_start_time;
+  }
 
-  GST_DEBUG_OBJECT (pad, "Buf TS %" GST_TIME_FORMAT
+  GST_DEBUG_OBJECT (pad, "Buf TS %" GST_STIME_FORMAT
       " total in_bytes %" G_GSIZE_FORMAT,
-      GST_TIME_ARGS (buf_info->run_ts), ctx->in_bytes);
+      GST_STIME_ARGS (buf_info->run_ts), ctx->in_bytes);
 
   loop_again = TRUE;
   do {
@@ -1140,15 +1189,15 @@
         if (ctx->is_reference) {
           /* If a keyframe, we have a complete GOP */
           if (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT) ||
-              !GST_CLOCK_TIME_IS_VALID (ctx->in_running_time) ||
+              !GST_CLOCK_STIME_IS_VALID (ctx->in_running_time) ||
               splitmux->max_in_running_time >= ctx->in_running_time) {
             /* Pass this buffer through */
             loop_again = FALSE;
             break;
           }
           GST_INFO_OBJECT (pad,
-              "Have keyframe with running time %" GST_TIME_FORMAT,
-              GST_TIME_ARGS (ctx->in_running_time));
+              "Have keyframe with running time %" GST_STIME_FORMAT,
+              GST_STIME_ARGS (ctx->in_running_time));
           keyframe = TRUE;
           splitmux->state = SPLITMUX_STATE_WAITING_GOP_COMPLETE;
           splitmux->max_in_running_time = ctx->in_running_time;
@@ -1164,14 +1213,14 @@
         }
         break;
       case SPLITMUX_STATE_WAITING_GOP_COMPLETE:
-        /* After a GOP start is found, this buffer might complete the GOP */
+
         /* If we overran the target timestamp, it might be time to process
          * the GOP, otherwise bail out for more data
          */
         GST_LOG_OBJECT (pad,
-            "Checking TS %" GST_TIME_FORMAT " against max %" GST_TIME_FORMAT,
-            GST_TIME_ARGS (ctx->in_running_time),
-            GST_TIME_ARGS (splitmux->max_in_running_time));
+            "Checking TS %" GST_STIME_FORMAT " against max %" GST_STIME_FORMAT,
+            GST_STIME_ARGS (ctx->in_running_time),
+            GST_STIME_ARGS (splitmux->max_in_running_time));
 
         if (ctx->in_running_time < splitmux->max_in_running_time) {
           loop_again = FALSE;
@@ -1195,8 +1244,14 @@
         event = gst_event_new_custom (GST_EVENT_CUSTOM_DOWNSTREAM |
             GST_EVENT_TYPE_SERIALIZED,
             gst_structure_new ("splitmuxsink-unblock", "timestamp",
-                G_TYPE_UINT64, splitmux->max_in_running_time, NULL));
+                G_TYPE_INT64, splitmux->max_in_running_time, NULL));
+
+        GST_SPLITMUX_UNLOCK (splitmux);
         gst_pad_send_event (ctx->sinkpad, event);
+        GST_SPLITMUX_LOCK (splitmux);
+        /* state may have changed while we were unlocked. Loop again if so */
+        if (splitmux->state != SPLITMUX_STATE_ENDING_FILE)
+          break;
         /* fallthrough */
       }
       case SPLITMUX_STATE_START_NEXT_FRAGMENT:
@@ -1224,7 +1279,7 @@
   check_queue_length (splitmux, ctx);
 
   GST_LOG_OBJECT (pad, "Returning to queue buffer %" GST_PTR_FORMAT
-      " run ts %" GST_TIME_FORMAT, buf, GST_TIME_ARGS (ctx->in_running_time));
+      " run ts %" GST_STIME_FORMAT, buf, GST_STIME_ARGS (ctx->in_running_time));
 
   GST_SPLITMUX_UNLOCK (splitmux);
   return GST_PAD_PROBE_PASS;
@@ -1602,8 +1657,9 @@
       GST_SPLITMUX_LOCK (splitmux);
       /* Start by collecting one input on each pad */
       splitmux->state = SPLITMUX_STATE_COLLECTING_GOP_START;
-      splitmux->max_in_running_time = 0;
-      splitmux->muxed_out_time = splitmux->mux_start_time = 0;
+      splitmux->max_in_running_time = GST_CLOCK_STIME_NONE;
+      splitmux->muxed_out_time = splitmux->mux_start_time =
+          GST_CLOCK_STIME_NONE;
       splitmux->muxed_out_bytes = splitmux->mux_start_bytes = 0;
       splitmux->opening_first_fragment = TRUE;
       GST_SPLITMUX_UNLOCK (splitmux);
diff --git a/gst/multifile/gstsplitmuxsink.h b/gst/multifile/gstsplitmuxsink.h
index a233642..8a43892 100644
--- a/gst/multifile/gstsplitmuxsink.h
+++ b/gst/multifile/gstsplitmuxsink.h
@@ -48,7 +48,7 @@
 typedef struct _MqStreamBuf
 {
   gboolean keyframe;
-  GstClockTime run_ts;
+  GstClockTimeDiff run_ts;
   gsize buf_size;
 } MqStreamBuf;
 
@@ -70,8 +70,8 @@
   GstSegment in_segment;
   GstSegment out_segment;
 
-  GstClockTime in_running_time;
-  GstClockTime out_running_time;
+  GstClockTimeDiff in_running_time;
+  GstClockTimeDiff out_running_time;
 
   gsize in_bytes;
 
@@ -114,17 +114,18 @@
 
   MqStreamCtx *reference_ctx;
   guint queued_gops;
-  GstClockTime max_in_running_time;
-  GstClockTime max_out_running_time;
+  GstClockTimeDiff max_in_running_time;
+  GstClockTimeDiff max_out_running_time;
 
-  GstClockTime muxed_out_time;
+  GstClockTimeDiff muxed_out_time;
   gsize muxed_out_bytes;
   gboolean have_muxed_something;
 
-  GstClockTime mux_start_time;
+  GstClockTimeDiff mux_start_time;
   gsize mux_start_bytes;
 
   gboolean opening_first_fragment;
+  gboolean switching_fragment;
 };
 
 struct _GstSplitMuxSinkClass {
diff --git a/gst/multifile/gstsplitmuxsrc.c b/gst/multifile/gstsplitmuxsrc.c
index e26c3d1..6cd9e1f 100644
--- a/gst/multifile/gstsplitmuxsrc.c
+++ b/gst/multifile/gstsplitmuxsrc.c
@@ -522,11 +522,11 @@
   } else {
     GstBuffer *buf = (GstBuffer *) (item->object);
     GstFlowReturn ret = gst_splitmux_handle_buffer (splitmux, splitpad, buf);
-    if (G_UNLIKELY (ret != GST_FLOW_OK)) {
+    if (G_UNLIKELY (ret != GST_FLOW_OK && ret != GST_FLOW_EOS)) {
       /* Stop immediately on error or flushing */
       GST_INFO_OBJECT (splitpad, "Stopping due to pad_push() result %d", ret);
       gst_pad_pause_task (pad);
-      if (ret <= GST_FLOW_EOS) {
+      if (ret < GST_FLOW_EOS) {
         const gchar *reason = gst_flow_get_name (ret);
         GST_ELEMENT_ERROR (splitmux, STREAM, FAILED,
             (_("Internal data flow error.")),
diff --git a/gst/rtp/gstrtpbvpay.c b/gst/rtp/gstrtpbvpay.c
index 15a7b7f..24a4fd4 100644
--- a/gst/rtp/gstrtpbvpay.c
+++ b/gst/rtp/gstrtpbvpay.c
@@ -217,6 +217,17 @@
     }
     gst_caps_unref (otherpadcaps);
   }
+
+  if (filter) {
+    GstCaps *tmp;
+
+    GST_DEBUG_OBJECT (rtppayload, "Intersect %" GST_PTR_FORMAT " and filter %"
+        GST_PTR_FORMAT, caps, filter);
+    tmp = gst_caps_intersect_full (filter, caps, GST_CAPS_INTERSECT_FIRST);
+    gst_caps_unref (caps);
+    caps = tmp;
+  }
+
   return caps;
 }
 
diff --git a/gst/rtp/gstrtpceltpay.c b/gst/rtp/gstrtpceltpay.c
index 6f16ba2..37dc112 100644
--- a/gst/rtp/gstrtpceltpay.c
+++ b/gst/rtp/gstrtpceltpay.c
@@ -200,6 +200,16 @@
     gst_caps_unref (otherpadcaps);
   }
 
+  if (filter) {
+    GstCaps *tmp;
+
+    GST_DEBUG_OBJECT (payload, "Intersect %" GST_PTR_FORMAT " and filter %"
+        GST_PTR_FORMAT, caps, filter);
+    tmp = gst_caps_intersect_full (filter, caps, GST_CAPS_INTERSECT_FIRST);
+    gst_caps_unref (caps);
+    caps = tmp;
+  }
+
   return caps;
 }
 
diff --git a/gst/rtp/gstrtpg722pay.c b/gst/rtp/gstrtpg722pay.c
index 79194c0..aaa3b36 100644
--- a/gst/rtp/gstrtpg722pay.c
+++ b/gst/rtp/gstrtpg722pay.c
@@ -213,6 +213,17 @@
     }
     gst_caps_unref (otherpadcaps);
   }
+
+  if (filter) {
+    GstCaps *tmp;
+
+    GST_DEBUG_OBJECT (rtppayload, "Intersect %" GST_PTR_FORMAT " and filter %"
+        GST_PTR_FORMAT, caps, filter);
+    tmp = gst_caps_intersect_full (filter, caps, GST_CAPS_INTERSECT_FIRST);
+    gst_caps_unref (caps);
+    caps = tmp;
+  }
+
   return caps;
 }
 
diff --git a/gst/rtp/gstrtph263ppay.c b/gst/rtp/gstrtph263ppay.c
index 9c09ad0..a9fcca0 100644
--- a/gst/rtp/gstrtph263ppay.c
+++ b/gst/rtp/gstrtph263ppay.c
@@ -254,8 +254,9 @@
   if (!peercaps || gst_caps_is_any (peercaps)) {
     if (peercaps)
       gst_caps_unref (peercaps);
-    return
+    caps =
         gst_pad_get_pad_template_caps (GST_RTP_BASE_PAYLOAD_SINKPAD (payload));
+    goto done;
   }
 
   /* We basically need to differentiate two use-cases here: One where there's
@@ -264,9 +265,11 @@
    * we want it to produce. The second case is simply payloader ! depayloader
    * where we are dealing with the depayloader's template caps. In this case
    * we should accept any input compatible with our sink template caps. */
-  if (!gst_caps_is_fixed (peercaps))
-    return
+  if (!gst_caps_is_fixed (peercaps)) {
+    caps =
         gst_pad_get_pad_template_caps (GST_RTP_BASE_PAYLOAD_SINKPAD (payload));
+    goto done;
+  }
 
   templ = gst_pad_get_pad_template_caps (GST_RTP_BASE_PAYLOAD_SRCPAD (payload));
   intersect = gst_caps_intersect (peercaps, templ);
@@ -601,6 +604,18 @@
 
   gst_caps_unref (intersect);
 
+done:
+
+  if (filter) {
+    GstCaps *tmp;
+
+    GST_DEBUG_OBJECT (payload, "Intersect %" GST_PTR_FORMAT " and filter %"
+        GST_PTR_FORMAT, caps, filter);
+    tmp = gst_caps_intersect_full (filter, caps, GST_CAPS_INTERSECT_FIRST);
+    gst_caps_unref (caps);
+    caps = tmp;
+  }
+
   return caps;
 }
 
diff --git a/gst/rtp/gstrtph264pay.c b/gst/rtp/gstrtph264pay.c
index c8100ec..bcbf098 100644
--- a/gst/rtp/gstrtph264pay.c
+++ b/gst/rtp/gstrtph264pay.c
@@ -340,6 +340,13 @@
   caps = icaps;
 
 done:
+  if (filter) {
+    GST_DEBUG_OBJECT (payload, "Intersect %" GST_PTR_FORMAT " and filter %"
+        GST_PTR_FORMAT, caps, filter);
+    icaps = gst_caps_intersect_full (filter, caps, GST_CAPS_INTERSECT_FIRST);
+    gst_caps_unref (caps);
+    caps = icaps;
+  }
 
   gst_caps_unref (template_caps);
   gst_caps_unref (allowed_caps);
diff --git a/gst/rtp/gstrtph265depay.c b/gst/rtp/gstrtph265depay.c
index eb0c2b7..469666a 100644
--- a/gst/rtp/gstrtph265depay.c
+++ b/gst/rtp/gstrtph265depay.c
@@ -146,7 +146,7 @@
   rtph265depay->adapter = gst_adapter_new ();
   rtph265depay->picture_adapter = gst_adapter_new ();
   rtph265depay->byte_stream = DEFAULT_BYTE_STREAM;
-  rtph265depay->stream_format = (gchar *) g_malloc (10);
+  rtph265depay->stream_format = NULL;
   rtph265depay->merge = DEFAULT_ACCESS_UNIT;
   rtph265depay->vps = g_ptr_array_new_with_free_func (
       (GDestroyNotify) gst_buffer_unref);
@@ -212,8 +212,8 @@
       const gchar *str = NULL;
 
       if ((str = gst_structure_get_string (s, "stream-format"))) {
-
-        strcpy (rtph265depay->stream_format, str);
+        g_free (rtph265depay->stream_format);
+        rtph265depay->stream_format = g_strdup (str);
 
         if (strcmp (str, "hev1") == 0) {
           byte_stream = FALSE;
@@ -246,7 +246,8 @@
   } else {
     GST_DEBUG_OBJECT (rtph265depay, "defaulting to byte-stream %d",
         DEFAULT_BYTE_STREAM);
-    strcpy (rtph265depay->stream_format, "byte-stream");
+    g_free (rtph265depay->stream_format);
+    rtph265depay->stream_format = g_strdup ("byte-stream");
     rtph265depay->byte_stream = DEFAULT_BYTE_STREAM;
   }
   if (merge != -1) {
@@ -306,12 +307,10 @@
     return TRUE;
 
   srccaps = gst_caps_new_simple ("video/x-h265",
-      "stream-format", G_TYPE_STRING,
-      rtph265depay->stream_format,
+      "stream-format", G_TYPE_STRING, rtph265depay->stream_format,
       "alignment", G_TYPE_STRING, rtph265depay->merge ? "au" : "nal", NULL);
 
   if (!rtph265depay->byte_stream) {
-
     GstBuffer *codec_data;
     gint i = 0;
     gint len;
diff --git a/gst/rtp/gstrtph265pay.c b/gst/rtp/gstrtph265pay.c
index dceb61e..e9979d4 100644
--- a/gst/rtp/gstrtph265pay.c
+++ b/gst/rtp/gstrtph265pay.c
@@ -374,6 +374,16 @@
 
 done:
 
+  if (filter) {
+    GstCaps *tmp;
+
+    GST_DEBUG_OBJECT (payload, "Intersect %" GST_PTR_FORMAT " and filter %"
+        GST_PTR_FORMAT, caps, filter);
+    tmp = gst_caps_intersect_full (filter, caps, GST_CAPS_INTERSECT_FIRST);
+    gst_caps_unref (caps);
+    caps = tmp;
+  }
+
   gst_caps_unref (template_caps);
   gst_caps_unref (allowed_caps);
 
@@ -822,7 +832,7 @@
   GST_DEBUG ("NAL payload len=%u", size);
 
   header = data[0];
-  type = header & 0x3f;
+  type = (header & 0x7e) >> 1;
 
   /* We record the timestamp of the last SPS/PPS so
    * that we can insert them at regular intervals and when needed. */
diff --git a/gst/rtp/gstrtpilbcpay.c b/gst/rtp/gstrtpilbcpay.c
index 7d6ea28..ffe9ea9 100644
--- a/gst/rtp/gstrtpilbcpay.c
+++ b/gst/rtp/gstrtpilbcpay.c
@@ -206,6 +206,17 @@
     }
     gst_caps_unref (otherpadcaps);
   }
+
+  if (filter) {
+    GstCaps *tmp;
+
+    GST_DEBUG_OBJECT (rtppayload, "Intersect %" GST_PTR_FORMAT " and filter %"
+        GST_PTR_FORMAT, caps, filter);
+    tmp = gst_caps_intersect_full (filter, caps, GST_CAPS_INTERSECT_FIRST);
+    gst_caps_unref (caps);
+    caps = tmp;
+  }
+
   return caps;
 }
 
diff --git a/gst/rtpmanager/rtpjitterbuffer.c b/gst/rtpmanager/rtpjitterbuffer.c
index 1853d8d..f867546 100644
--- a/gst/rtpmanager/rtpjitterbuffer.c
+++ b/gst/rtpmanager/rtpjitterbuffer.c
@@ -782,7 +782,7 @@
   /* ERRORS */
 duplicate:
   {
-    GST_WARNING ("duplicate packet %d found", (gint) seqnum);
+    GST_DEBUG ("duplicate packet %d found", (gint) seqnum);
     return FALSE;
   }
 }
diff --git a/gst/rtpmanager/rtpsession.c b/gst/rtpmanager/rtpsession.c
index c1bfdd3..091951d 100644
--- a/gst/rtpmanager/rtpsession.c
+++ b/gst/rtpmanager/rtpsession.c
@@ -4046,9 +4046,9 @@
       result =
           sess->callbacks.send_rtcp (sess, source, buffer, output->is_bye,
           sess->send_rtcp_user_data);
-      sess->stats.nacks_sent += data.nacked_seqnums;
 
       RTP_SESSION_LOCK (sess);
+      sess->stats.nacks_sent += data.nacked_seqnums;
       on_sender_ssrc_active (sess, source);
       RTP_SESSION_UNLOCK (sess);
     } else {
@@ -4056,8 +4056,11 @@
           " empty_buffer: %d, "
           " do_not_suppress: %d may_suppress: %d", sess->callbacks.send_rtcp,
           empty_buffer, do_not_suppress, data.may_suppress);
-      if (!empty_buffer)
+      if (!empty_buffer) {
+        RTP_SESSION_LOCK (sess);
         sess->stats.nacks_dropped += data.nacked_seqnums;
+        RTP_SESSION_UNLOCK (sess);
+      }
       gst_buffer_unref (buffer);
     }
     g_object_unref (source);
diff --git a/gst/rtsp/gstrtspsrc.c b/gst/rtsp/gstrtspsrc.c
index 362fed2..dc182c4 100644
--- a/gst/rtsp/gstrtspsrc.c
+++ b/gst/rtsp/gstrtspsrc.c
@@ -2156,9 +2156,8 @@
   if ((stop = seeksegment.stop) == -1)
     stop = seeksegment.duration;
 
-  playing = (src->state == GST_RTSP_STATE_PLAYING);
-
   /* if we were playing, pause first */
+  playing = (src->state == GST_RTSP_STATE_PLAYING);
   if (playing) {
     /* obtain current position in case seek fails */
     gst_rtspsrc_get_position (src);
@@ -2171,10 +2170,6 @@
   /* PLAY will add the range header now. */
   src->need_range = TRUE;
 
-  /* and continue playing */
-  if (playing)
-    gst_rtspsrc_play (src, &seeksegment, FALSE);
-
   /* prepare for streaming again */
   if (flush) {
     /* if we started flush, we stop now */
@@ -2203,6 +2198,15 @@
     stream->discont = TRUE;
   }
 
+  /* and continue playing if needed */
+  GST_OBJECT_LOCK (src);
+  playing = (GST_STATE_PENDING (src) == GST_STATE_VOID_PENDING
+      && GST_STATE (src) == GST_STATE_PLAYING)
+      || (GST_STATE_PENDING (src) == GST_STATE_PLAYING);
+  GST_OBJECT_UNLOCK (src);
+  if (playing)
+    gst_rtspsrc_play (src, &seeksegment, FALSE);
+
   GST_RTSP_STREAM_UNLOCK (src);
 
   return TRUE;
@@ -4852,26 +4856,30 @@
   if (!restart)
     goto done;
 
-  /* we can try only TCP now */
-  src->cur_protocols = GST_RTSP_LOWER_TRANS_TCP;
+  /* unless redirect, try tcp */
+  if (!src->need_redirect)
+    src->cur_protocols = GST_RTSP_LOWER_TRANS_TCP;
 
   /* close and cleanup our state */
   if ((res = gst_rtspsrc_close (src, async, FALSE)) < 0)
     goto done;
 
-  /* see if we have TCP left to try. Also don't try TCP when we were configured
-   * with an SDP. */
-  if (!(src->protocols & GST_RTSP_LOWER_TRANS_TCP) || src->from_sdp)
+  /* unless redirect, see if we have TCP left to try. Also don't 
+   * try TCP when we were configured with an SDP. */
+  if (!src->need_redirect && (!(src->protocols & GST_RTSP_LOWER_TRANS_TCP)
+          || src->from_sdp))
     goto no_protocols;
 
-  /* We post a warning message now to inform the user
-   * that nothing happened. It's most likely a firewall thing. */
-  GST_ELEMENT_WARNING (src, RESOURCE, READ, (NULL),
-      ("Could not receive any UDP packets for %.4f seconds, maybe your "
-          "firewall is blocking it. Retrying using a TCP connection.",
-          gst_guint64_to_gdouble (src->udp_timeout / 1000000.0)));
+  if (!src->need_redirect) {
+    /* We post a warning message now to inform the user
+     * that nothing happened. It's most likely a firewall thing. */
+    GST_ELEMENT_WARNING (src, RESOURCE, READ, (NULL),
+        ("Could not receive any UDP packets for %.4f seconds, maybe your "
+            "firewall is blocking it. Retrying using a tcp connection.",
+            gst_guint64_to_gdouble (src->udp_timeout / 1000000.0)));
+  }
 
-  /* open new connection using tcp */
+  /* unless redirect, open new connection using tcp */
   if (gst_rtspsrc_open (src, async) < 0)
     goto open_failed;
 
@@ -6760,8 +6768,24 @@
   /* could not be set but since the request returned OK, we assume it
    * was SDP, else check it. */
   if (respcont) {
-    if (g_ascii_strcasecmp (respcont, "application/sdp") != 0)
+    const gchar *props = strchr (respcont, ';');
+
+    if (props) {
+      gchar *mimetype = g_strndup (respcont, props - respcont);
+
+      mimetype = g_strstrip (mimetype);
+      if (g_ascii_strcasecmp (mimetype, "application/sdp") != 0) {
+        g_free (mimetype);
+        goto wrong_content_type;
+      }
+
+      /* TODO: Check for charset property and do conversions of all messages if
+       * needed. Some servers actually send that property */
+
+      g_free (mimetype);
+    } else if (g_ascii_strcasecmp (respcont, "application/sdp") != 0) {
       goto wrong_content_type;
+    }
   }
 
   /* get message body and parse as SDP */
diff --git a/gst/udp/gstmultiudpsink.c b/gst/udp/gstmultiudpsink.c
index 4c925f2..ab1d93a 100644
--- a/gst/udp/gstmultiudpsink.c
+++ b/gst/udp/gstmultiudpsink.c
@@ -819,6 +819,7 @@
     msgs[i].vectors = &vecs[mem];
     msgs[i].num_vectors = mem_nums[i];
     msgs[i].num_control_messages = 0;
+    msgs[i].bytes_sent = 0;
     msgs[i].control_messages = NULL;
     msgs[i].address = clients[0]->addr;
     mem += mem_nums[i];
diff --git a/gst/udp/gstudpsrc.c b/gst/udp/gstudpsrc.c
index 106c67c..99bb347 100644
--- a/gst/udp/gstudpsrc.c
+++ b/gst/udp/gstudpsrc.c
@@ -107,6 +107,18 @@
 #include "config.h"
 #endif
 
+/* Needed to get struct in6_pktinfo.
+ * Also all these have to be before glib.h is included as
+ * otherwise struct in6_pktinfo is not defined completely
+ * due to broken glibc headers */
+#define _GNU_SOURCE
+/* Needed for OSX/iOS to define the IPv6 variants */
+#define __APPLE_USE_RFC_3542
+#include <sys/types.h>
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+
 #include <string.h>
 #include "gstudpsrc.h"
 
@@ -114,6 +126,283 @@
 
 #include <gio/gnetworking.h>
 
+/* Required for other parts of in_pktinfo / in6_pktinfo but only
+ * on non-Windows and can be included after glib.h */
+#ifndef G_OS_WIN32
+#include <netinet/ip.h>
+#endif
+
+/* Control messages for getting the destination address */
+#ifdef IP_PKTINFO
+GType gst_ip_pktinfo_message_get_type (void);
+
+#define GST_TYPE_IP_PKTINFO_MESSAGE         (gst_ip_pktinfo_message_get_type ())
+#define GST_IP_PKTINFO_MESSAGE(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), GST_TYPE_IP_PKTINFO_MESSAGE, GstIPPktinfoMessage))
+#define GST_IP_PKTINFO_MESSAGE_CLASS(c)     (G_TYPE_CHECK_CLASS_CAST ((c), GST_TYPE_IP_PKTINFO_MESSAGE, GstIPPktinfoMessageClass))
+#define GST_IS_IP_PKTINFO_MESSAGE(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), GST_TYPE_IP_PKTINFO_MESSAGE))
+#define GST_IS_IP_PKTINFO_MESSAGE_CLASS(c)  (G_TYPE_CHECK_CLASS_TYPE ((c), GST_TYPE_IP_PKTINFO_MESSAGE))
+#define GST_IP_PKTINFO_MESSAGE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GST_TYPE_IP_PKTINFO_MESSAGE, GstIPPktinfoMessageClass))
+
+typedef struct _GstIPPktinfoMessage GstIPPktinfoMessage;
+typedef struct _GstIPPktinfoMessageClass GstIPPktinfoMessageClass;
+
+struct _GstIPPktinfoMessageClass
+{
+  GSocketControlMessageClass parent_class;
+
+};
+
+struct _GstIPPktinfoMessage
+{
+  GSocketControlMessage parent;
+
+  guint ifindex;
+#ifndef G_OS_WIN32
+  struct in_addr spec_dst;
+#endif
+  struct in_addr addr;
+};
+
+G_DEFINE_TYPE (GstIPPktinfoMessage, gst_ip_pktinfo_message,
+    G_TYPE_SOCKET_CONTROL_MESSAGE);
+
+static gsize
+gst_ip_pktinfo_message_get_size (GSocketControlMessage * message)
+{
+  return sizeof (struct in_pktinfo);
+}
+
+static int
+gst_ip_pktinfo_message_get_level (GSocketControlMessage * message)
+{
+  return IPPROTO_IP;
+}
+
+static int
+gst_ip_pktinfo_message_get_msg_type (GSocketControlMessage * message)
+{
+  return IP_PKTINFO;
+}
+
+static GSocketControlMessage *
+gst_ip_pktinfo_message_deserialize (gint level,
+    gint type, gsize size, gpointer data)
+{
+  struct in_pktinfo *pktinfo;
+  GstIPPktinfoMessage *message;
+
+  if (level != IPPROTO_IP || type != IP_PKTINFO)
+    return NULL;
+
+  if (size < sizeof (struct in_pktinfo))
+    return NULL;
+
+  pktinfo = data;
+
+  message = g_object_new (GST_TYPE_IP_PKTINFO_MESSAGE, NULL);
+  message->ifindex = pktinfo->ipi_ifindex;
+#ifndef G_OS_WIN32
+  message->spec_dst = pktinfo->ipi_spec_dst;
+#endif
+  message->addr = pktinfo->ipi_addr;
+
+  return G_SOCKET_CONTROL_MESSAGE (message);
+}
+
+static void
+gst_ip_pktinfo_message_init (GstIPPktinfoMessage * message)
+{
+}
+
+static void
+gst_ip_pktinfo_message_class_init (GstIPPktinfoMessageClass * class)
+{
+  GSocketControlMessageClass *scm_class;
+
+  scm_class = G_SOCKET_CONTROL_MESSAGE_CLASS (class);
+  scm_class->get_size = gst_ip_pktinfo_message_get_size;
+  scm_class->get_level = gst_ip_pktinfo_message_get_level;
+  scm_class->get_type = gst_ip_pktinfo_message_get_msg_type;
+  scm_class->deserialize = gst_ip_pktinfo_message_deserialize;
+}
+#endif
+
+#ifdef IPV6_PKTINFO
+GType gst_ipv6_pktinfo_message_get_type (void);
+
+#define GST_TYPE_IPV6_PKTINFO_MESSAGE         (gst_ipv6_pktinfo_message_get_type ())
+#define GST_IPV6_PKTINFO_MESSAGE(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), GST_TYPE_IPV6_PKTINFO_MESSAGE, GstIPV6PktinfoMessage))
+#define GST_IPV6_PKTINFO_MESSAGE_CLASS(c)     (G_TYPE_CHECK_CLASS_CAST ((c), GST_TYPE_IPV6_PKTINFO_MESSAGE, GstIPV6PktinfoMessageClass))
+#define GST_IS_IPV6_PKTINFO_MESSAGE(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), GST_TYPE_IPV6_PKTINFO_MESSAGE))
+#define GST_IS_IPV6_PKTINFO_MESSAGE_CLASS(c)  (G_TYPE_CHECK_CLASS_TYPE ((c), GST_TYPE_IPV6_PKTINFO_MESSAGE))
+#define GST_IPV6_PKTINFO_MESSAGE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GST_TYPE_IPV6_PKTINFO_MESSAGE, GstIPV6PktinfoMessageClass))
+
+typedef struct _GstIPV6PktinfoMessage GstIPV6PktinfoMessage;
+typedef struct _GstIPV6PktinfoMessageClass GstIPV6PktinfoMessageClass;
+
+struct _GstIPV6PktinfoMessageClass
+{
+  GSocketControlMessageClass parent_class;
+
+};
+
+struct _GstIPV6PktinfoMessage
+{
+  GSocketControlMessage parent;
+
+  guint ifindex;
+  struct in6_addr addr;
+};
+
+G_DEFINE_TYPE (GstIPV6PktinfoMessage, gst_ipv6_pktinfo_message,
+    G_TYPE_SOCKET_CONTROL_MESSAGE);
+
+static gsize
+gst_ipv6_pktinfo_message_get_size (GSocketControlMessage * message)
+{
+  return sizeof (struct in6_pktinfo);
+}
+
+static int
+gst_ipv6_pktinfo_message_get_level (GSocketControlMessage * message)
+{
+  return IPPROTO_IPV6;
+}
+
+static int
+gst_ipv6_pktinfo_message_get_msg_type (GSocketControlMessage * message)
+{
+  return IPV6_PKTINFO;
+}
+
+static GSocketControlMessage *
+gst_ipv6_pktinfo_message_deserialize (gint level,
+    gint type, gsize size, gpointer data)
+{
+  struct in6_pktinfo *pktinfo;
+  GstIPV6PktinfoMessage *message;
+
+  if (level != IPPROTO_IPV6 || type != IPV6_PKTINFO)
+    return NULL;
+
+  if (size < sizeof (struct in6_pktinfo))
+    return NULL;
+
+  pktinfo = data;
+
+  message = g_object_new (GST_TYPE_IPV6_PKTINFO_MESSAGE, NULL);
+  message->ifindex = pktinfo->ipi6_ifindex;
+  message->addr = pktinfo->ipi6_addr;
+
+  return G_SOCKET_CONTROL_MESSAGE (message);
+}
+
+static void
+gst_ipv6_pktinfo_message_init (GstIPV6PktinfoMessage * message)
+{
+}
+
+static void
+gst_ipv6_pktinfo_message_class_init (GstIPV6PktinfoMessageClass * class)
+{
+  GSocketControlMessageClass *scm_class;
+
+  scm_class = G_SOCKET_CONTROL_MESSAGE_CLASS (class);
+  scm_class->get_size = gst_ipv6_pktinfo_message_get_size;
+  scm_class->get_level = gst_ipv6_pktinfo_message_get_level;
+  scm_class->get_type = gst_ipv6_pktinfo_message_get_msg_type;
+  scm_class->deserialize = gst_ipv6_pktinfo_message_deserialize;
+}
+
+#endif
+
+#ifdef IP_RECVDSTADDR
+GType gst_ip_recvdstaddr_message_get_type (void);
+
+#define GST_TYPE_IP_RECVDSTADDR_MESSAGE         (gst_ip_recvdstaddr_message_get_type ())
+#define GST_IP_RECVDSTADDR_MESSAGE(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), GST_TYPE_IP_RECVDSTADDR_MESSAGE, GstIPRecvdstaddrMessage))
+#define GST_IP_RECVDSTADDR_MESSAGE_CLASS(c)     (G_TYPE_CHECK_CLASS_CAST ((c), GST_TYPE_IP_RECVDSTADDR_MESSAGE, GstIPRecvdstaddrMessageClass))
+#define GST_IS_IP_RECVDSTADDR_MESSAGE(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), GST_TYPE_IP_RECVDSTADDR_MESSAGE))
+#define GST_IS_IP_RECVDSTADDR_MESSAGE_CLASS(c)  (G_TYPE_CHECK_CLASS_TYPE ((c), GST_TYPE_IP_RECVDSTADDR_MESSAGE))
+#define GST_IP_RECVDSTADDR_MESSAGE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GST_TYPE_IP_RECVDSTADDR_MESSAGE, GstIPRecvdstaddrMessageClass))
+
+typedef struct _GstIPRecvdstaddrMessage GstIPRecvdstaddrMessage;
+typedef struct _GstIPRecvdstaddrMessageClass GstIPRecvdstaddrMessageClass;
+
+struct _GstIPRecvdstaddrMessageClass
+{
+  GSocketControlMessageClass parent_class;
+
+};
+
+struct _GstIPRecvdstaddrMessage
+{
+  GSocketControlMessage parent;
+
+  guint ifindex;
+  struct in_addr addr;
+};
+
+G_DEFINE_TYPE (GstIPRecvdstaddrMessage, gst_ip_recvdstaddr_message,
+    G_TYPE_SOCKET_CONTROL_MESSAGE);
+
+static gsize
+gst_ip_recvdstaddr_message_get_size (GSocketControlMessage * message)
+{
+  return sizeof (struct in_addr);
+}
+
+static int
+gst_ip_recvdstaddr_message_get_level (GSocketControlMessage * message)
+{
+  return IPPROTO_IP;
+}
+
+static int
+gst_ip_recvdstaddr_message_get_msg_type (GSocketControlMessage * message)
+{
+  return IP_RECVDSTADDR;
+}
+
+static GSocketControlMessage *
+gst_ip_recvdstaddr_message_deserialize (gint level,
+    gint type, gsize size, gpointer data)
+{
+  struct in_addr *addr;
+  GstIPRecvdstaddrMessage *message;
+
+  if (level != IPPROTO_IP || type != IP_RECVDSTADDR)
+    return NULL;
+
+  if (size < sizeof (struct in_addr))
+    return NULL;
+
+  addr = data;
+
+  message = g_object_new (GST_TYPE_IP_RECVDSTADDR_MESSAGE, NULL);
+  message->addr = *addr;
+
+  return G_SOCKET_CONTROL_MESSAGE (message);
+}
+
+static void
+gst_ip_recvdstaddr_message_init (GstIPRecvdstaddrMessage * message)
+{
+}
+
+static void
+gst_ip_recvdstaddr_message_class_init (GstIPRecvdstaddrMessageClass * class)
+{
+  GSocketControlMessageClass *scm_class;
+
+  scm_class = G_SOCKET_CONTROL_MESSAGE_CLASS (class);
+  scm_class->get_size = gst_ip_recvdstaddr_message_get_size;
+  scm_class->get_level = gst_ip_recvdstaddr_message_get_level;
+  scm_class->get_type = gst_ip_recvdstaddr_message_get_msg_type;
+  scm_class->deserialize = gst_ip_recvdstaddr_message_deserialize;
+}
+#endif
+
 /* not 100% correct, but a good upper bound for memory allocation purposes */
 #define MAX_IPV4_UDP_PACKET_SIZE (65536 - 8)
 
@@ -199,6 +488,16 @@
 
   GST_DEBUG_CATEGORY_INIT (udpsrc_debug, "udpsrc", 0, "UDP src");
 
+#ifdef IP_PKTINFO
+  GST_TYPE_IP_PKTINFO_MESSAGE;
+#endif
+#ifdef IPV6_PKTINFO
+  GST_TYPE_IPV6_PKTINFO_MESSAGE;
+#endif
+#ifdef IP_RECVDSTADDR
+  GST_TYPE_IP_RECVDSTADDR_MESSAGE;
+#endif
+
   gobject_class->set_property = gst_udpsrc_set_property;
   gobject_class->get_property = gst_udpsrc_get_property;
   gobject_class->finalize = gst_udpsrc_finalize;
@@ -517,6 +816,8 @@
   GError *err = NULL;
   gssize res;
   gsize offset;
+  GSocketControlMessage **msgs = NULL;
+  gint n_msgs = 0, i;
 
   udpsrc = GST_UDPSRC_CAST (psrc);
 
@@ -564,7 +865,7 @@
 
   res =
       g_socket_receive_message (udpsrc->used_socket, &saddr, udpsrc->vec, 2,
-      NULL, NULL, &flags, udpsrc->cancellable, &err);
+      &msgs, &n_msgs, &flags, udpsrc->cancellable, &err);
 
   if (G_UNLIKELY (res < 0)) {
     /* G_IO_ERROR_HOST_UNREACHABLE for a UDP socket means that a packet sent
@@ -587,6 +888,66 @@
   if (res > udpsrc->max_size)
     udpsrc->max_size = res;
 
+  /* Retry if multicast and the destination address is not ours. We don't want
+   * to receive arbitrary packets */
+  {
+    GInetAddress *iaddr = g_inet_socket_address_get_address (udpsrc->addr);
+    gboolean skip_packet = FALSE;
+    gsize iaddr_size = g_inet_address_get_native_size (iaddr);
+    const guint8 *iaddr_bytes = g_inet_address_to_bytes (iaddr);
+
+    if (g_inet_address_get_is_multicast (iaddr)) {
+
+      for (i = 0; i < n_msgs && !skip_packet; i++) {
+#ifdef IP_PKTINFO
+        if (GST_IS_IP_PKTINFO_MESSAGE (msgs[i])) {
+          GstIPPktinfoMessage *msg = GST_IP_PKTINFO_MESSAGE (msgs[i]);
+
+          if (sizeof (msg->addr) == iaddr_size
+              && memcmp (iaddr_bytes, &msg->addr, sizeof (msg->addr)))
+            skip_packet = TRUE;
+        }
+#endif
+#ifdef IPV6_PKTINFO
+        if (GST_IS_IPV6_PKTINFO_MESSAGE (msgs[i])) {
+          GstIPV6PktinfoMessage *msg = GST_IPV6_PKTINFO_MESSAGE (msgs[i]);
+
+          if (sizeof (msg->addr) == iaddr_size
+              && memcmp (iaddr_bytes, &msg->addr, sizeof (msg->addr)))
+            skip_packet = TRUE;
+        }
+#endif
+#ifdef IP_RECVDSTADDR
+        if (GST_IS_IP_RECVDSTADDR_MESSAGE (msgs[i])) {
+          GstIPRecvdstaddrMessage *msg = GST_IP_RECVDSTADDR_MESSAGE (msgs[i]);
+
+          if (sizeof (msg->addr) == iaddr_size
+              && memcmp (iaddr_bytes, &msg->addr, sizeof (msg->addr)))
+            skip_packet = TRUE;
+        }
+#endif
+      }
+
+    }
+
+    for (i = 0; i < n_msgs; i++) {
+      g_object_unref (msgs[i]);
+    }
+    g_free (msgs);
+
+    if (skip_packet) {
+      GST_DEBUG_OBJECT (udpsrc,
+          "Dropping packet for a different multicast address");
+
+      if (saddr != NULL) {
+        g_object_unref (saddr);
+        saddr = NULL;
+      }
+
+      goto retry;
+    }
+  }
+
   outbuf = gst_buffer_new ();
 
   /* append first memory chunk to buffer */
@@ -1040,6 +1401,49 @@
             g_inet_socket_address_get_address (src->addr),
             FALSE, src->multi_iface, &err))
       goto membership;
+
+    if (g_inet_address_get_family (g_inet_socket_address_get_address
+            (src->addr)) == G_SOCKET_FAMILY_IPV4) {
+#if defined(IP_PKTINFO)
+      if (!g_socket_set_option (src->used_socket, IPPROTO_IP, IP_PKTINFO, TRUE,
+              &err)) {
+        GST_WARNING_OBJECT (src, "Failed to enable IP_PKTINFO: %s",
+            err->message);
+        g_clear_error (&err);
+      }
+#elif defined(IP_RECVDSTADDR)
+      if (!g_socket_set_option (src->used_socket, IPPROTO_IP, IP_RECVDSTADDR,
+              TRUE, &err)) {
+        GST_WARNING_OBJECT (src, "Failed to enable IP_RECVDSTADDR: %s",
+            err->message);
+        g_clear_error (&err);
+      }
+#else
+#pragma message("No API available for getting IPv4 destination address")
+      GST_WARNING_OBJECT (src, "No API available for getting IPv4 destination "
+          "address, will receive packets for every destination to our port");
+#endif
+    } else
+        if (g_inet_address_get_family (g_inet_socket_address_get_address
+            (src->addr)) == G_SOCKET_FAMILY_IPV6) {
+#ifdef IPV6_PKTINFO
+#ifdef IPV6_RECVPKTINFO
+      if (!g_socket_set_option (src->used_socket, IPPROTO_IPV6,
+              IPV6_RECVPKTINFO, TRUE, &err)) {
+#else
+      if (!g_socket_set_option (src->used_socket, IPPROTO_IPV6, IPV6_PKTINFO,
+              TRUE, &err)) {
+#endif
+        GST_WARNING_OBJECT (src, "Failed to enable IPV6_PKTINFO: %s",
+            err->message);
+        g_clear_error (&err);
+      }
+#else
+#pragma message("No API available for getting IPv6 destination address")
+      GST_WARNING_OBJECT (src, "No API available for getting IPv6 destination "
+          "address, will receive packets for every destination to our port");
+#endif
+    }
   }
 
   /* NOTE: sockaddr_in.sin_port works for ipv4 and ipv6 because sin_port
diff --git a/gst/videomixer/videomixerorc-dist.c b/gst/videomixer/videomixerorc-dist.c
index 7ddc1b0..115b6fc 100644
--- a/gst/videomixer/videomixerorc-dist.c
+++ b/gst/videomixer/videomixerorc-dist.c
@@ -1713,7 +1713,7 @@
       static const orc_uint8 bc[] = {
         1, 7, 9, 28, 118, 105, 100, 101, 111, 95, 109, 105, 120, 101, 114, 95,
         111, 114, 99, 95, 111, 118, 101, 114, 108, 97, 121, 95, 97, 114, 103,
-            98,
+        98,
         11, 4, 4, 12, 4, 4, 14, 4, 255, 255, 255, 255, 14, 4, 255, 0,
         0, 0, 14, 4, 0, 255, 255, 255, 14, 2, 8, 0, 0, 0, 16, 2,
         20, 4, 20, 2, 20, 1, 20, 8, 20, 8, 20, 8, 20, 4, 20, 8,
@@ -2283,7 +2283,7 @@
       static const orc_uint8 bc[] = {
         1, 7, 9, 28, 118, 105, 100, 101, 111, 95, 109, 105, 120, 101, 114, 95,
         111, 114, 99, 95, 111, 118, 101, 114, 108, 97, 121, 95, 98, 103, 114,
-            97,
+        97,
         11, 4, 4, 12, 4, 4, 14, 4, 255, 255, 255, 255, 14, 4, 0, 0,
         0, 255, 14, 4, 255, 255, 255, 0, 14, 4, 24, 0, 0, 0, 14, 2,
         8, 0, 0, 0, 16, 2, 20, 4, 20, 4, 20, 2, 20, 1, 20, 8,
diff --git a/ltmain.sh b/ltmain.sh
index 147d758..2ad8be8 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -31,7 +31,7 @@
 
 PROGRAM=libtool
 PACKAGE=libtool
-VERSION="2.4.6 Debian-2.4.6-0.1"
+VERSION="2.4.6 Debian-2.4.6-1"
 package_revision=2.4.6
 
 
@@ -1977,7 +1977,7 @@
 # End:
 
 # Set a version string.
-scriptversion='(GNU libtool) 2.4.6'
+scriptversion='(GNU libtool) 2.4.6 Debian-2.4.6-1'
 
 
 # func_echo ARG...
@@ -2068,7 +2068,7 @@
        compiler:       $LTCC
        compiler flags: $LTCFLAGS
        linker:         $LD (gnu? $with_gnu_ld)
-       version:        $progname (GNU libtool) 2.4.6
+       version:        $progname $scriptversion
        automake:       `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
        autoconf:       `($AUTOCONF --version) 2>/dev/null |$SED 1q`
 
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 10ab284..ee80844 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -728,7 +728,6 @@
     cat <<_LT_EOF >> "$cfgfile"
 #! $SHELL
 # Generated automatically by $as_me ($PACKAGE) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 
 # Provide generalized library-building support services.
diff --git a/po/af.gmo b/po/af.gmo
index 1096f00..3192c2c 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index 274e27e..e3da65b 100644
--- a/po/af.po
+++ b/po/af.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.7.6\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2004-03-18 14:16+0200\n"
 "Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n"
 "Language-Team: Afrikaans <i18n@af.org.za>\n"
diff --git a/po/az.gmo b/po/az.gmo
index ebfa36e..2f90705 100644
--- a/po/az.gmo
+++ b/po/az.gmo
Binary files differ
diff --git a/po/az.po b/po/az.po
index fe9e1de..6eda978 100644
--- a/po/az.po
+++ b/po/az.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-0.8.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2004-03-19 18:29+0200\n"
 "Last-Translator: Metin Amiroff <metin@karegen.com>\n"
 "Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
diff --git a/po/bg.gmo b/po/bg.gmo
index d466bf1..50928e5 100644
--- a/po/bg.gmo
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
index 49850dd..ac61460 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-21 21:03+0200\n"
 "Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
 "Language-Team: Bulgarian <dict@ludost.net>\n"
diff --git a/po/ca.gmo b/po/ca.gmo
index 895ec9f..042eb69 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 72cc7a4..dbaaeda 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 0.10.28.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2012-01-01 14:19+0100\n"
 "Last-Translator: Gil Forcada <gforcada@gnome.org>\n"
 "Language-Team: Catalan <ca@dodds.net>\n"
diff --git a/po/cs.gmo b/po/cs.gmo
index 138c84f..6f22556 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index 800d129..7baa214 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good-1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-27 16:40+0100\n"
 "Last-Translator: Marek Černocký <marek@manet.cz>\n"
 "Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
diff --git a/po/da.gmo b/po/da.gmo
index 0bd9643..b64850a 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index 15148ff..7e85327 100644
--- a/po/da.po
+++ b/po/da.po
@@ -11,7 +11,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good-1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-03-27 23:54+0200\n"
 "Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
 "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
diff --git a/po/de.gmo b/po/de.gmo
index 0390ebd..2d0f49e 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index 83b3994..2c0fa81 100644
--- a/po/de.po
+++ b/po/de.po
@@ -14,7 +14,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-22 23:42+0100\n"
 "Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
diff --git a/po/el.gmo b/po/el.gmo
index 3b37aaf..4ba4503 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/el.po b/po/el.po
index 7c3006b..38919e2 100644
--- a/po/el.po
+++ b/po/el.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 0.10.28.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2012-05-05 19:05+0100\n"
 "Last-Translator: Savvas Radevic <vicedar@gmail.com>\n"
 "Language-Team: Greek <team@lists.gnome.gr>\n"
diff --git a/po/en_GB.gmo b/po/en_GB.gmo
index 4c10bd5..625b73a 100644
--- a/po/en_GB.gmo
+++ b/po/en_GB.gmo
Binary files differ
diff --git a/po/en_GB.po b/po/en_GB.po
index 6363a7a..821f95d 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.8.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2004-04-26 10:41-0400\n"
 "Last-Translator: Gareth Owen <gowen72@yahoo.com>\n"
 "Language-Team: English (British) <en_gb@li.org>\n"
diff --git a/po/eo.gmo b/po/eo.gmo
index 1e0da0b..c5b2d2b 100644
--- a/po/eo.gmo
+++ b/po/eo.gmo
Binary files differ
diff --git a/po/eo.po b/po/eo.po
index e6b3de4..9ab0833 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 0.10.28.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2011-06-04 21:48+0100\n"
 "Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n"
 "Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
diff --git a/po/es.gmo b/po/es.gmo
index 4e1780e..1f28b92 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index 0adc3a8..dbc5d95 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 0.10.26.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2011-02-12 18:30+0100\n"
 "Last-Translator: Jorge González González <aloriel@gmail.com>\n"
 "Language-Team: Spanish <es@li.org>\n"
diff --git a/po/eu.gmo b/po/eu.gmo
index ca2b9ff..84dc6a1 100644
--- a/po/eu.gmo
+++ b/po/eu.gmo
Binary files differ
diff --git a/po/eu.po b/po/eu.po
index 9016d9b..32c41ca 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good-0.10.18.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2010-03-25 12:37+0100\n"
 "Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n"
 "Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
diff --git a/po/fi.gmo b/po/fi.gmo
index 49eb297..8326832 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index dd9a749..6c1130a 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -11,7 +11,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 0.10.25.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2010-11-17 23:03+0200\n"
 "Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n"
 "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
diff --git a/po/fr.gmo b/po/fr.gmo
index 1acd5f5..71635e5 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index c039822..14c2986 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-20 16:27+0100\n"
 "Last-Translator: Stéphane Aulery <lkppo@free.fr>\n"
 "Language-Team: French <traduc@traduc.org>\n"
diff --git a/po/gl.gmo b/po/gl.gmo
index 01969b0..5a96e33 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gl.po b/po/gl.po
index d04aeab..c609f48 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2012-12-15 03:46+0200\n"
 "Last-Translator: Fran Dieguez <frandieguez@ubuntu.com>\n"
 "Language-Team: Galician <proxecto@trasno.net>\n"
diff --git a/po/gst-plugins-good-1.0.pot b/po/gst-plugins-good-1.0.pot
index fcb59e1..61260e3 100644
--- a/po/gst-plugins-good-1.0.pot
+++ b/po/gst-plugins-good-1.0.pot
@@ -5,9 +5,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: gst-plugins-good 1.8.2\n"
+"Project-Id-Version: gst-plugins-good 1.8.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -88,9 +88,9 @@
 msgstr ""
 
 #: gst/isomp4/qtdemux.c:3604 gst/isomp4/qtdemux.c:6900
-#: gst/isomp4/qtdemux.c:6907 gst/isomp4/qtdemux.c:7729
-#: gst/isomp4/qtdemux.c:8158 gst/isomp4/qtdemux.c:8165
-#: gst/isomp4/qtdemux.c:10530
+#: gst/isomp4/qtdemux.c:6907 gst/isomp4/qtdemux.c:7741
+#: gst/isomp4/qtdemux.c:8170 gst/isomp4/qtdemux.c:8177
+#: gst/isomp4/qtdemux.c:10542
 msgid "This file is corrupt and cannot be played."
 msgstr ""
 
@@ -102,11 +102,11 @@
 msgid "This file is incomplete and cannot be played."
 msgstr ""
 
-#: gst/isomp4/qtdemux.c:9139
+#: gst/isomp4/qtdemux.c:9151
 msgid "The video in this file might not play correctly."
 msgstr ""
 
-#: gst/isomp4/qtdemux.c:10571
+#: gst/isomp4/qtdemux.c:10583
 #, c-format
 msgid "This file contains too many streams. Only playing first %d"
 msgstr ""
@@ -115,13 +115,13 @@
 msgid "Internal data flow error."
 msgstr ""
 
-#: gst/rtsp/gstrtspsrc.c:6406
+#: gst/rtsp/gstrtspsrc.c:6414
 msgid ""
 "No supported stream was found. You might need to install a GStreamer RTSP "
 "extension plugin for Real media streams."
 msgstr ""
 
-#: gst/rtsp/gstrtspsrc.c:6411
+#: gst/rtsp/gstrtspsrc.c:6419
 msgid ""
 "No supported stream was found. You might need to allow more transport "
 "protocols or may otherwise be missing the right GStreamer RTSP extension "
diff --git a/po/hr.gmo b/po/hr.gmo
index 437abd0..5b300b8 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differ
diff --git a/po/hr.po b/po/hr.po
index c10dee2..19e0e5c 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-05-27 12:47-0700\n"
 "Last-Translator: Božidar Putanec <bozidarp@yahoo.com>\n"
 "Language-Team: Croatian <lokalizacija@linux.hr>\n"
diff --git a/po/hu.gmo b/po/hu.gmo
index fe2b2a5..d55dc02 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index f65a266..000104c 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-03-14 18:35+0100\n"
 "Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\n"
 "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
diff --git a/po/id.gmo b/po/id.gmo
index be500c3..9e25604 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
index 64d3567..e937f74 100644
--- a/po/id.po
+++ b/po/id.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.3.90\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2014-07-06 21:37+0700\n"
 "Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n"
 "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
diff --git a/po/it.gmo b/po/it.gmo
index 3a4c85c..e848edd 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index ef9eb96..09d0b6c 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 0.10.25.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2010-10-25 10:11+0200\n"
 "Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
diff --git a/po/ja.gmo b/po/ja.gmo
index 12080e7..61a903c 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 4708f17..a2f90e0 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2012-12-22 20:13+0900\n"
 "Last-Translator: Takeshi Hamasaki <hmatrjp@users.sourceforge.jp>\n"
 "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
diff --git a/po/lt.gmo b/po/lt.gmo
index c47136a..d4b9e88 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/lt.po b/po/lt.po
index e663b82..b899dc0 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 0.10.23.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2010-07-16 19:34+0300\n"
 "Last-Translator: Žygimantas Beručka <uid0@akl.lt>\n"
 "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
diff --git a/po/lv.gmo b/po/lv.gmo
index 0319a51..3f1eae5 100644
--- a/po/lv.gmo
+++ b/po/lv.gmo
Binary files differ
diff --git a/po/lv.po b/po/lv.po
index 84ac15e..6e71eaa 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2014-04-20 16:38+0300\n"
 "Last-Translator: Rihards Prieditis <rprieditis@gmail.com>\n"
 "Language-Team: Latvian <translation-team-lv@lists.sourceforge.net>\n"
diff --git a/po/mt.gmo b/po/mt.gmo
index 97e79fd..a4cb829 100644
--- a/po/mt.gmo
+++ b/po/mt.gmo
Binary files differ
diff --git a/po/mt.po b/po/mt.po
index d14f2c1..a943e81 100644
--- a/po/mt.po
+++ b/po/mt.po
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good-0.10.10.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2008-10-26 19:09+0100\n"
 "Last-Translator: Michel Bugeja <michelbugeja@rabatmalta.com>\n"
 "Language-Team: Maltese <translation-team-mt@lists.sourceforge.net>\n"
diff --git a/po/nb.gmo b/po/nb.gmo
index 62faead..c34ee26 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index bb5a167..9d87bb9 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.6.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2015-12-22 21:12+0100\n"
 "Last-Translator: Johnny A. Solbu <johnny@solbu.net>\n"
 "Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"
diff --git a/po/nl.gmo b/po/nl.gmo
index 53473fc..9ecf164 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index bf47425..53b218c 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-20 16:40+0100\n"
 "Last-Translator: Freek de Kruijf <f.de.kruijf@gmail.com>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
diff --git a/po/or.gmo b/po/or.gmo
index 3552c8b..759fd71 100644
--- a/po/or.gmo
+++ b/po/or.gmo
Binary files differ
diff --git a/po/or.po b/po/or.po
index 1e07b3a..b4f4ba2 100644
--- a/po/or.po
+++ b/po/or.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-0.8.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2004-09-27 13:32+0530\n"
 "Last-Translator: Gora Mohanty <gora_mohanty@yahoo.co.in>\n"
 "Language-Team: Oriya <gora_mohanty@yahoo.co.in>\n"
diff --git a/po/pl.gmo b/po/pl.gmo
index 676e0aa..da7baba 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index bdcbb4e..da5b9bb 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-20 21:43+0100\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index a1b21df..9cdc07e 100644
--- a/po/pt_BR.gmo
+++ b/po/pt_BR.gmo
Binary files differ
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 9c8e73f..fb2d166 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -13,7 +13,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good-1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-05-06 17:49-0300\n"
 "Last-Translator: Fabrício Godoy <skarllot@gmail.com>\n"
 "Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
diff --git a/po/ro.gmo b/po/ro.gmo
index 5843436..247c45f 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index cfab19d..af797d4 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 0.10.23.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2010-08-16 03:22+0300\n"
 "Last-Translator: Lucian Adrian Grijincu <lucian.grijincu@gmail.com>\n"
 "Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
diff --git a/po/ru.gmo b/po/ru.gmo
index faf284d..fcb5c6e 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/ru.po b/po/ru.po
index 01e0528..1fad7e3 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-21 09:55+0300\n"
 "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
 "Language-Team: Russian <gnu@d07.ru>\n"
diff --git a/po/sk.gmo b/po/sk.gmo
index cec9cc4..2f3c599 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sk.po b/po/sk.po
index 7b8b170..acbf9f7 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-05-20 12:31+0100\n"
 "Last-Translator: Peter Tuhársky <tuharsky@misbb.sk>\n"
 "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
diff --git a/po/sl.gmo b/po/sl.gmo
index c7318e2..9b342bd 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index ec2020c..d60a93c 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good-1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2014-04-09 22:52+0100\n"
 "Last-Translator: Klemen Košir <klemen913@gmail.com>\n"
 "Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
diff --git a/po/sq.gmo b/po/sq.gmo
index d90b491..2faf1f3 100644
--- a/po/sq.gmo
+++ b/po/sq.gmo
Binary files differ
diff --git a/po/sq.po b/po/sq.po
index 713e727..e47a276 100644
--- a/po/sq.po
+++ b/po/sq.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins 0.8.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2004-08-07 20:29+0200\n"
 "Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
 "Language-Team: Albanian <begraj@hotmail.com>\n"
diff --git a/po/sr.gmo b/po/sr.gmo
index ebd731f..8cf5fec 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr.po b/po/sr.po
index bc51935..569baf2 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good-1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-03-05 09:52+0200\n"
 "Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
 "Language-Team: Serbian <(nothing)>\n"
diff --git a/po/sv.gmo b/po/sv.gmo
index 0786f85..6cef16b 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index 10cc946..09af49d 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-20 16:13+0100\n"
 "Last-Translator: Sebastian Rasmussen <sebras@gmail.com>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
diff --git a/po/tr.gmo b/po/tr.gmo
index 9ae083b..b2feb92 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index f342199..a02c7e8 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.4.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2015-01-10 21:07+0100\n"
 "Last-Translator: Volkan Gezer <volkangezer@gmail.com>\n"
 "Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
diff --git a/po/uk.gmo b/po/uk.gmo
index 173490d..bd9f384 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/uk.po b/po/uk.po
index 04e9c32..3b67396 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-20 17:27+0200\n"
 "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
 "Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
diff --git a/po/vi.gmo b/po/vi.gmo
index 9963d93..09847aa 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index 876761d..20a6ebd 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-21 07:25+0700\n"
 "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
 "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index 36ab4da..81d9d8d 100644
--- a/po/zh_CN.gmo
+++ b/po/zh_CN.gmo
Binary files differ
diff --git a/po/zh_CN.po b/po/zh_CN.po
index b3e818b..dbe0c32 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good 1.7.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2016-02-21 16:52+0800\n"
 "Last-Translator: Tianze Wang <zwpwjwtz@126.com>\n"
 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
diff --git a/po/zh_HK.gmo b/po/zh_HK.gmo
index c5bfe5d..3985c64 100644
--- a/po/zh_HK.gmo
+++ b/po/zh_HK.gmo
Binary files differ
diff --git a/po/zh_HK.po b/po/zh_HK.po
index 243c2a5..d74d857 100644
--- a/po/zh_HK.po
+++ b/po/zh_HK.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good-0.10.2 0.10.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2006-08-29 01:08+0800\n"
 "Last-Translator: Abel Cheung <abelcheung@gmail.com>\n"
 "Language-Team: Chinese (Hong Kong) <community@linuxhall.org>\n"
diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo
index c382a13..ad50fe5 100644
--- a/po/zh_TW.gmo
+++ b/po/zh_TW.gmo
Binary files differ
diff --git a/po/zh_TW.po b/po/zh_TW.po
index bcd0dc0..d6e6dfe 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gst-plugins-good-0.10.2 0.10.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-06-09 11:20+0300\n"
+"POT-Creation-Date: 2016-08-19 11:57+0300\n"
 "PO-Revision-Date: 2006-08-29 01:08+0800\n"
 "Last-Translator: Abel Cheung <abelcheung@gmail.com>\n"
 "Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
diff --git a/tests/check/elements/qtmux.c b/tests/check/elements/qtmux.c
index ff8b07b..df9f5c5 100644
--- a/tests/check/elements/qtmux.c
+++ b/tests/check/elements/qtmux.c
@@ -1292,9 +1292,7 @@
   input2.input = NULL;
   input2.input =
       g_list_append (input2.input, gst_event_new_stream_start ("test-2"));
-  caps = gst_caps_from_string
-      ("audio/mpeg, rate=(int)44100, channels=(int)1, mpegversion=(int)4, "
-      "stream-format=(string)raw, framed=(boolean)true");
+  caps = gst_caps_from_string (AUDIO_AAC_CAPS_STRING);
   input2.input = g_list_append (input2.input, gst_event_new_caps (caps));
   gst_caps_unref (caps);
   gst_segment_init (&input2.segment, GST_FORMAT_TIME);
@@ -1353,9 +1351,7 @@
   input2.input = NULL;
   input2.input =
       g_list_append (input2.input, gst_event_new_stream_start ("test-2"));
-  caps = gst_caps_from_string
-      ("audio/mpeg, rate=(int)44100, channels=(int)1, mpegversion=(int)4, "
-      "stream-format=(string)raw, framed=(boolean)true");
+  caps = gst_caps_from_string (AUDIO_AAC_CAPS_STRING);
   input2.input = g_list_append (input2.input, gst_event_new_caps (caps));
   gst_caps_unref (caps);
   gst_segment_init (&input2.segment, GST_FORMAT_TIME);
@@ -1417,9 +1413,7 @@
   input2.input = NULL;
   input2.input =
       g_list_append (input2.input, gst_event_new_stream_start ("test-2"));
-  caps = gst_caps_from_string
-      ("audio/mpeg, rate=(int)44100, channels=(int)1, mpegversion=(int)4, "
-      "stream-format=(string)raw, framed=(boolean)true");
+  caps = gst_caps_from_string (AUDIO_AAC_CAPS_STRING);
   input2.input = g_list_append (input2.input, gst_event_new_caps (caps));
   gst_caps_unref (caps);
   gst_segment_init (&input2.segment, GST_FORMAT_TIME);
@@ -1485,9 +1479,7 @@
   input2.input = NULL;
   input2.input =
       g_list_append (input2.input, gst_event_new_stream_start ("test-2"));
-  caps = gst_caps_from_string
-      ("audio/mpeg, rate=(int)44100, channels=(int)1, mpegversion=(int)4, "
-      "stream-format=(string)raw, framed=(boolean)true");
+  caps = gst_caps_from_string (AUDIO_AAC_CAPS_STRING);
   input2.input = g_list_append (input2.input, gst_event_new_caps (caps));
   gst_caps_unref (caps);
   gst_segment_init (&input2.segment, GST_FORMAT_TIME);
@@ -1554,9 +1546,7 @@
   input2.input = NULL;
   input2.input =
       g_list_append (input2.input, gst_event_new_stream_start ("test-2"));
-  caps = gst_caps_from_string
-      ("audio/mpeg, rate=(int)44100, channels=(int)1, mpegversion=(int)4, "
-      "stream-format=(string)raw, framed=(boolean)true");
+  caps = gst_caps_from_string (AUDIO_AAC_CAPS_STRING);
   input2.input = g_list_append (input2.input, gst_event_new_caps (caps));
   gst_caps_unref (caps);
   gst_segment_init (&input2.segment, GST_FORMAT_TIME);
diff --git a/win32/common/config.h b/win32/common/config.h
index f05ed03..6ebb6a7 100644
--- a/win32/common/config.h
+++ b/win32/common/config.h
@@ -64,7 +64,7 @@
 #define GST_PACKAGE_ORIGIN "Unknown package origin"
 
 /* GStreamer package release date/time for plugins as YYYY-MM-DD */
-#define GST_PACKAGE_RELEASE_DATETIME "2016-06-09"
+#define GST_PACKAGE_RELEASE_DATETIME "2016-08-19"
 
 /* Define if static plugins should be built */
 #undef GST_PLUGIN_BUILD_STATIC
@@ -395,7 +395,7 @@
 #define PACKAGE_NAME "GStreamer Good Plug-ins"
 
 /* Define to the full name and version of this package. */
-#define PACKAGE_STRING "GStreamer Good Plug-ins 1.8.2"
+#define PACKAGE_STRING "GStreamer Good Plug-ins 1.8.3"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "gst-plugins-good"
@@ -404,7 +404,7 @@
 #undef PACKAGE_URL
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "1.8.2"
+#define PACKAGE_VERSION "1.8.3"
 
 /* directory where plugins are located */
 #ifdef _DEBUG
@@ -435,7 +435,7 @@
 #undef TARGET_CPU
 
 /* Version number of package */
-#define VERSION "1.8.2"
+#define VERSION "1.8.3"
 
 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
    significant byte first (like Motorola and SPARC, unlike Intel). */