Merge tag 'upstream/1.10.0'

Upstream version 1.10.0
diff --git a/ChangeLog b/ChangeLog
index 0eb9a02..48ef7e0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,437 @@
-=== release 1.9.90 ===
+=== release 1.10.0 ===
 
-2016-09-30  Sebastian Dröge <slomo@coaxion.net>
+2016-11-01  Sebastian Dröge <slomo@coaxion.net>
 
 	* configure.ac:
-	  releasing 1.9.90
+	  releasing 1.10.0
+
+2016-11-01 17:41:51 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/el.po:
+	  po: Update translations
+
+2016-10-27 12:01:55 +0200  Tobias Schneider <tobias.schneider@voiceinterconnect.de>
+
+	* sys/v4l2/gstv4l2object.c:
+	  v4l2object: fix extra-controls leak
+	  Gst struct v4l2object->extra_controls is created if user sets appropriate
+	  option but it is not freed on destruction of v4l2object.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773580
+
+2016-10-31 18:00:07 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* ext/soup/gstsouphttpsrc.c:
+	* ext/soup/gstsouphttpsrc.h:
+	  Revert "souphttpsrc: reduce reading latency by using non-blocking read"
+	  This reverts commit 8816764112408766889c8b680a3af51115df4bf5.
+	  It causes issues with the timeouts, and causes connections to be closed
+	  without actual reason. Needs further investigation.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773509
+
+2016-10-31 09:00:49 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+	* gst/wavparse/gstwavparse.c:
+	  wavparse: Don't try to add srcpad if we don't know valid caps yet
+	  Otherwise we'll run into an assertion on specially crafted files.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773643
+
+2016-10-27 11:23:51 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+	* meson.build:
+	  meson: Remove uselessly duplicated dep checks
+	  These checks are done inside the meson.build files for each plugin.
+
+2016-10-27 11:22:59 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+	* ext/meson.build:
+	  meson: dv plugin now works on MSVC
+	  Needs a Meson patch to filter out the useless -lpthread
+	  https://github.com/mesonbuild/meson/pull/962
+
+2016-10-27 14:03:48 +0200  Branko Subasic <branko@axis.com>
+
+	* gst/matroska/matroska-mux.c:
+	  matroskamux: allow resolutions above 4096
+	  Modify the caps string to allow width and height greater than 4096.
+	  There is no need to restrict it since the matroska format allows the
+	  width and height values to be up to eight bytes long.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773582
+
+2016-10-23 17:23:10 -0700  Scott D Phillips <scott.d.phillips@intel.com>
+
+	* gst/udp/gstudpsrc.c:
+	  udpsrc: Check for G_PLATFORM_WIN32 for presence of ipi_spec_dest
+	  G_OS_WIN32 is only set when not building with cygwin, but
+	  ipi_spec_dest is missing both with and without cygwin.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773114
+
+2016-10-26 08:51:40 +0200  Michael Olbrich <m.olbrich@pengutronix.de>
+
+	* ext/soup/gstsouphttpsrc.c:
+	  souphttpsrc: reset read_position when reading fails
+	  souphttpsrc maintains two variables for the position:
+	  * 'request_position' is where we want to be
+	  * 'read_position' is where we are
+	  During Normal operations both are updated in sync when data arrives. A seek
+	  changes 'request_position' but not 'read_position'.
+	  When the two positions get out of sync, then a new request is send and the
+	  'Range' header is adjusted to the current 'request_position'.
+	  Without this patch, if reading fails, then the source is destroyed. This
+	  triggers a new request, but the range remains unchanged. As a result, the
+	  old range is used and old data will be read.
+	  Changing the 'read_position' to -1 makes it explicitly different from
+	  'request_position' and as a result the 'Range' header is updated correctly.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773509
+
+2016-10-25 08:54:34 -0700  Scott D Phillips <scott.d.phillips@intel.com>
+
+	* meson.build:
+	  meson: Don't depend on gstreamer-check-1.0 on windows
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773114
+
+2016-10-25 15:24:20 +0200  Mark Nauwelaerts <mnauw@users.sourceforge.net>
+
+	* gst/rtsp/gstrtspsrc.c:
+	  rtspsrc: reset connection info to non-flushing when closing
+	  This solves a hanging mainloop in following scenario:
+	  * connect to source
+	  * network/server drops
+	  * pipeline set to NULL (and connection to flushing as part)
+	  * pipeline set to PAUSED/PLAYING (connection to non-flushing, but not recorded)
+	  * [connecting still not possible]
+	  * pipeline set to NULL => mainloop hangs (since no actual flushing is done)
+
+2016-10-26 14:32:48 +1100  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	* gst/multifile/gstsplitmuxsink.h:
+	  splitmuxsink: Only allow one video request pad
+	  The pacing of the overall muxing is controlled
+	  by the video GOPs arriving, so we can only handle
+	  1 video stream, and the request pad is named accordingly.
+	  Ignore a request for a 2nd video pad if there's already
+	  an active one.
+
+2016-10-26 11:59:32 +1100  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	  splitmuxsink: Take ownership of floating refs
+	  sink the floating ref when handed a muxer or sink to use so
+	  we clearly take ownership.
+
+2016-10-25 14:51:52 +1100  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	  splitmuxsink: Set child elements to NULL when removing.
+	  Make sure that elements are in the NULL state when removing.
+	  Fixes critical warnings when errors occur early on in starting up.
+
+2016-10-25 14:50:53 +1100  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsink.c:
+	  splitmuxsink: Set pad template on request sink pads
+	  Ensure that the ghost pad returned as a request pad
+	  has the template that was requested
+
+2016-10-25 10:50:47 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+	* meson.build:
+	* tests/check/meson.build:
+	  Revert "meson: move gstreamer-check-1.0 dependency to tests/check"
+	  This reverts commit 46632694662b96fddb848a1f2091a215b28a2d35.
+	  Does not actually work. See:
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773114#c31
+
+2016-06-08 11:24:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+	* gst/flv/gstflvmux.c:
+	  flvmux: Assume PTS is DTS when PTS is missing
+	  This fixes issue for encoders that only sets the DTS. We assume that
+	  there was no re-ordering when that happens.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=762207
+
+2016-10-24 00:34:15 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/meson.build:
+	  meson: fix build outside of gst-all
+
+2016-10-21 00:42:54 -0700  Scott D Phillips <scott.d.phillips@intel.com>
+
+	* sys/directsound/meson.build:
+	  meson: directsound: Add ole32 library dependency
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773114
+
+2016-10-21 00:42:18 -0700  Scott D Phillips <scott.d.phillips@intel.com>
+
+	* meson.build:
+	* tests/check/meson.build:
+	  meson: move gstreamer-check-1.0 dependency to tests/check
+	  https://bugzilla.gnome.org/show_bug.cgi?id=773114
+
+2016-10-20 22:08:14 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* tests/check/elements/videomixer.c:
+	  tests: videomixer: disable racy flush_start_flush_stop test
+	  It's been broken for years, and it's unlikely it will ever
+	  be fixed for collectpads/videomixer now that there's compositor
+	  which works fine. So let's disable it, since all it does
+	  is that it creates noise that distracts from other failures.
+	  Also see the corresponding adder bug as it failed in the same way:
+	  https://bugzilla.gnome.org/show_bug.cgi?id=708891
+
+2016-10-09 16:56:10 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+	* tests/check/elements/souphttpsrc.c:
+	  tests: Fix souphttpsrc tests without CK_FORK=no
+	  It seems that the forked processes all attempt to handle the listening
+	  socket from the server, and only one has to shutdown the socket to break
+	  the server completely.
+	  Create a new server inside each test to avoid this.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=772656
+
+2016-10-09 15:23:51 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+	* tests/check/elements/level.c:
+	  tests: Fix level test in CK_FORK=no mode
+	  The tests accumulate buffers in GstCheck's buffers list, and the list is
+	  not (consistently) reset between tests. Do that and remove the now
+	  conflicting unrefs for outbuffers.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=772644
+
+2016-10-07 13:04:27 +0530  Gaurav Gupta <g.gupta@samsung.com>
+
+	* sys/waveform/gstwaveformsink.c:
+	  waveformsink: Fix Memory leak using GST_PTR_FORMAT
+	  https://bugzilla.gnome.org/show_bug.cgi?id=772497
+
+2016-10-18 12:23:42 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+	* gst/monoscope/meson.build:
+	  meson: Add missing gstaudio dep to monoscope
+	  In file included from ../subprojects/gst-plugins-good/gst/monoscope/gstmonoscope.c:42:0:
+	  ../subprojects/gst-plugins-base/gst-libs/gst/audio/audio.h:26:39: fatal error: gst/audio/audio-enumtypes.h: No such file or directory
+	  #include <gst/audio/audio-enumtypes.h>
+	  ^
+	  compilation terminated.
+	  https://ci.gstreamer.net/job/GStreamer-master-meson/271/console
+
+2016-10-16 02:18:22 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+	* gst/multifile/meson.build:
+	  meson: Add missing pbutils dependency to multifile
+	  Found via the Jenkins CI:
+	  FAILED: subprojects/gst-plugins-good/gst/multifile/gstmultifile@sha/gstsplitmuxsink.c.o
+	  [...]
+	  In file included from ../subprojects/gst-plugins-good/gst/multifile/gstsplitmuxsink.h:24:0,
+	  from ../subprojects/gst-plugins-good/gst/multifile/gstsplitmuxsink.c:59:
+	  ../subprojects/gst-plugins-base/gst-libs/gst/pbutils/pbutils.h:30:43: fatal error: gst/pbutils/pbutils-enumtypes.h: No such file or directory
+	  #include <gst/pbutils/pbutils-enumtypes.h>
+	  ^
+	  compilation terminated.
+	  https://ci.gstreamer.net/job/GStreamer-master-meson/263/console
+
+2016-10-15 22:11:08 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+	* meson.build:
+	  meson: Don't set c_std to gnu99
+	  Use the default for each compiler on every platform instead. This
+	  improves our compatibility with compilers that don't have gnu99 as
+	  a c_std.
+
+2016-10-04 18:04:11 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+	* meson.build:
+	* tests/check/getpluginsdir:
+	* tests/check/meson.build:
+	  meson: Make use of new environment object and set plugin path to builddir
+	  Workaround source_root being the root directory of all projects in the subproject
+	  case and remove now unneeded getpluginsdir
+	  Bump meson requirement to 0.35
+
+2016-10-06 11:15:54 +0530  Gaurav Gupta <g.gupta@samsung.com>
+
+	* tests/examples/rtp/client-rtpaux.c:
+	  tests: Fix memory leak in test rtpaux test
+	  https://bugzilla.gnome.org/show_bug.cgi?id=772496
+
+2016-10-03 11:27:54 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+	* gst/imagefreeze/gstimagefreeze.c:
+	  imagefreeze: Forward latency queries to upstream
+	  Without this, latency queries to imagefreeze will fail.
+
+2016-09-30 11:35:39 -0300  Thibault Saunier <thibault.saunier@osg.samsung.com>
+
+	* hooks/pre-commit.hook:
+	* meson.build:
+	* tests/check/getpluginsdir:
+	  meson: Setup pre commit hook and fix getpluginsdir for standalone case
+
+2016-09-29 04:55:14 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsrc.c:
+	  splitmuxsrc: Handle stop point from segment
+	  If the seek stop point (or start, during reverse play)
+	  was within the segment we just finished, go EOS immediately
+	  instead of proceeding through all other parts and sending
+	  0 length seeks to them.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=772138
+
+2016-09-29 03:21:26 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxsrc.c:
+	  splitmuxsrc: Drop lock shutting down pads
+	  Avoid a sporadic deadlock on shutdown by dropping
+	  the splitmux lock around pad shutdown
+	  https://bugzilla.gnome.org/show_bug.cgi?id=772138
+
+2016-09-29 02:47:36 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxpartreader.c:
+	  splitmuxsrc: Fix extra unref handling queries
+	  https://bugzilla.gnome.org/show_bug.cgi?id=772138
+
+2016-09-29 04:50:25 +1000  Jan Schmidt <jan@centricular.com>
+
+	* gst/multifile/gstsplitmuxpartreader.c:
+	* gst/multifile/gstsplitmuxpartreader.h:
+	* gst/multifile/gstsplitmuxsrc.c:
+	  splitmuxsrc: Avoid stall when parts get out of sync
+	  When one part moves ahead of the others - due to excessive
+	  downstream queueing, or really small input files - then
+	  we can end up activating parts more than once. That can lead to
+	  effects like shutting down pad tasks prematurely.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=772138
+
+2016-09-30 11:41:19 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* meson.build:
+	  meson: update version
+
+=== release 1.9.90 ===
+
+2016-09-30 13:02:19 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* ChangeLog:
+	* NEWS:
+	* RELEASE:
+	* configure.ac:
+	* docs/plugins/gst-plugins-good-plugins.args:
+	* docs/plugins/gst-plugins-good-plugins.interfaces:
+	* 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.9.90
+
+2016-09-30 12:17:26 +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-09-30 11:43:54 +0300  Sebastian Dröge <sebastian@centricular.com>
 
diff --git a/NEWS b/NEWS
index 072b2df..547de7f 100644
--- a/NEWS
+++ b/NEWS
@@ -1 +1,1114 @@
-This is GStreamer 1.9.90
+# GStreamer 1.10 Release Notes
+
+**GStreamer 1.10.0 was released on 1st November 2016.**
+
+The GStreamer team is proud to announce a new major feature release in the
+stable 1.x API series of your favourite cross-platform multimedia framework!
+
+As always, this release is again packed with new features, bug fixes and other
+improvements.
+
+See [https://gstreamer.freedesktop.org/releases/1.10/][latest] for the latest
+version of this document.
+
+*Last updated: Tuesday 1 Nov 2016, 15:00 UTC [(log)][gitlog]*
+
+[latest]: https://gstreamer.freedesktop.org/releases/1.10/
+[gitlog]: https://cgit.freedesktop.org/gstreamer/www/log/src/htdocs/releases/1.10/release-notes-1.10.md
+
+## Introduction
+
+The GStreamer team is proud to announce a new major feature release in the
+stable 1.x API series of your favourite cross-platform multimedia framework!
+
+As always, this release is again packed with new features, bug fixes and other
+improvements.
+
+## Highlights
+
+- Several convenience APIs have been added to make developers' lives easier
+- A new `GstStream` API provides applications a more meaningful view of the
+  structure of streams, simplifying the process of dealing with media in
+  complex container formats
+- Experimental `decodebin3` and `playbin3` elements which bring a number of
+  improvements which were hard to implement within `decodebin` and `playbin`
+- A new `parsebin` element to automatically unpack and parse a stream, stopping
+  just short of decoding
+- Experimental new `meson`-based build system, bringing faster build and much
+  better Windows support (including for building with Visual Studio)
+- A new `gst-docs` module has been created, and we are in the process of moving
+  our documentation to a markdown-based format for easier maintenance and
+  updates
+- A new `gst-examples` module has been create, which contains example
+  GStreamer applications and is expected to grow with many more examples in
+  the future
+- Various OpenGL and OpenGL|ES-related fixes and improvements for greater
+  efficiency on desktop and mobile platforms, and Vulkan support on Wayland was
+  also added
+- Extensive improvements to the VAAPI plugins for improved robustness and
+  efficiency
+- Lots of fixes and improvements across the board, spanning RTP/RTSP, V4L2,
+  Bluetooth, audio conversion, echo cancellation, and more!
+
+## Major new features and changes
+
+### Noteworthy new API, features and other changes
+
+#### Core API additions
+
+##### Receive property change notifications via bus messages
+
+New API was added to receive element property change notifications via
+bus messages. So far, applications had to connect a callback to an element's
+`notify::property-name` signal via the GObject API, which was inconvenient for
+at least two reasons: one had to implement a signal callback function, and that
+callback function would usually be called from one of the streaming threads, so
+one had to marshal (send) any information gathered or pending requests to the
+main application thread which was tedious and error-prone.
+
+Enter [`gst_element_add_property_notify_watch()`][notify-watch] and
+[`gst_element_add_property_deep_notify_watch()`][deep-notify-watch] which will
+watch for changes of a property on the specified element, either only for this
+element or recursively for a whole bin or pipeline. Whenever such a
+property change happens, a `GST_MESSAGE_PROPERTY_NOTIFY` message will be posted
+on the pipeline bus with details of the element, the property and the new
+property value, all of which can be retrieved later from the message in the
+application via [`gst_message_parse_property_notify()`][parse-notify]. Unlike
+the GstBus watch functions, this API does not rely on a running GLib main loop.
+
+The above can be used to be notified asynchronously of caps changes in the
+pipeline, or volume changes on an audio sink element, for example.
+
+[notify-watch]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-add-property-notify-watch
+[deep-notify-watch]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-add-property-deep-notify-watch
+[parse-notify]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#gst-message-parse-property-notify
+
+##### GstBin "deep" element-added and element-removed signals
+
+GstBin has gained `"deep-element-added"` and `"deep-element-removed"` signals
+which makes it easier for applications and higher-level plugins to track when
+elements are added or removed from a complex pipeline with multiple sub-bins.
+
+`playbin` makes use of this to implement the new `"element-setup"` signal which
+can be used to configure elements as they are added to `playbin`, just like the
+existing `"source-setup"` signal which can be used to configure the source
+element created.
+
+##### Error messages can contain additional structured details
+
+It is often useful to provide additional, structured information in error,
+warning or info messages for applications (or higher-level elements) to make
+intelligent decisions based on them. To allow this, error, warning and info
+messages now have API for adding arbitrary additional information to them
+using a `GstStructure`:
+[`GST_ELEMENT_ERROR_WITH_DETAILS`][element-error-with-details] and
+corresponding API for the other message types.
+
+This is now used e.g. by the new [`GST_ELEMENT_FLOW_ERROR`][element-flow-error]
+API to include the actual flow error in the error message, and the
+[souphttpsrc element][souphttpsrc-detailed-errors] to provide the HTTP
+status code, and the URL (if any) to which a redirection has happened.
+
+[element-error-with-details]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-ELEMENT-ERROR-WITH-DETAILS:CAPS
+[element-flow-error]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-ELEMENT-FLOW-ERROR:CAPS
+[souphttpsrc-detailed-errors]: https://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/ext/soup/gstsouphttpsrc.c?id=60d30db912a1aedd743e66b9dcd2e21d71fbb24f#n1318
+
+##### Redirect messages have official API now
+
+Sometimes, elements need to redirect the current stream URL and tell the
+application to proceed with this new URL, possibly using a different
+protocol too (thus changing the pipeline configuration). Until now, this was
+informally implemented using `ELEMENT` messages on the bus.
+
+Now this has been formalized in the form of a new `GST_MESSAGE_REDIRECT` message.
+A new redirect message can be created using [`gst_message_new_redirect()`][new-redirect].
+If needed, multiple redirect locations can be specified by calling
+[`gst_message_add_redirect_entry()`][add-redirect] to add further redirect
+entries, all with metadata, so the application can decide which is
+most suitable (e.g. depending on the bitrate tags).
+
+[new-redirect]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#gst-message-new-redirect
+[add-redirect]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#gst-message-add-redirect-entry
+
+##### New pad linking convenience functions that automatically create ghost pads
+
+New pad linking convenience functions were added:
+[`gst_pad_link_maybe_ghosting()`][pad-maybe-ghost] and
+[`gst_pad_link_maybe_ghosting_full()`][pad-maybe-ghost-full] which were
+previously internal to GStreamer have now been exposed for general use.
+
+The existing pad link functions will refuse to link pads or elements at
+different levels in the pipeline hierarchy, requiring the developer to
+create ghost pads where necessary. These new utility functions will
+automatically create ghostpads as needed when linking pads at different
+levels of the hierarchy (e.g. from an element inside a bin to one that's at
+the same level in the hierarchy as the bin, or in another bin).
+
+[pad-maybe-ghost]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#gst-pad-link-maybe-ghosting
+[pad-maybe-ghost-full]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#gst-pad-link-maybe-ghosting-full
+
+##### Miscellaneous
+
+Pad probes: IDLE and BLOCK probes now work slightly differently in pull mode,
+so that push and pull mode have opposite scenarios for idle and blocking probes.
+In push mode, it will block with some data type and IDLE won't have any data.
+In pull mode, it will block _before_ getting a buffer and will be IDLE once some
+data has been obtained. ([commit][commit-pad-probes], [bug][bug-pad-probes])
+
+[commit-pad-probes]: https://cgit.freedesktop.org/gstreamer/gstreamer/commit/gst/gstpad.c?id=368ee8a336d0c868d81fdace54b24431a8b48cbf
+[bug-pad-probes]: https://bugzilla.gnome.org/show_bug.cgi?id=761211
+
+[`gst_parse_launch_full()`][parse-launch-full] can now be made to return a
+`GstBin` instead of a top-level pipeline by passing the new
+`GST_PARSE_FLAG_PLACE_IN_BIN` flag.
+
+[parse-launch-full]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstParse.html#gst-parse-launch-full
+
+The default GStreamer debug log handler can now be removed before
+calling `gst_init()`, so that it will never get installed and won't be active
+during initialization.
+
+A new [`STREAM_GROUP_DONE` event][stream-group-done-event] was added. In some
+ways it works similar to the `EOS` event in that it can be used to unblock
+downstream elements which may be waiting for further data, such as for example
+`input-selector`. Unlike `EOS`, further data flow may happen after the
+`STREAM_GROUP_DONE` event though (and without the need to flush the pipeline).
+This is used to unblock input-selector when switching between streams in
+adaptive streaming scenarios (e.g. HLS).
+
+[stream-group-done-event]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstEvent.html#gst-event-new-stream-group-done
+
+The `gst-launch-1.0` command line tool will now print unescaped caps in verbose
+mode (enabled by the -v switch).
+
+[`gst_element_call_async()`][call-async] has been added as convenience API for
+plugin developers. It is useful for one-shot operations that need to be done
+from a thread other than the current streaming thread. It is backed by a
+thread-pool that is shared by all elements.
+
+[call-async]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-call-async
+
+Various race conditions have been fixed around the `GstPoll` API used by e.g.
+`GstBus` and `GstBufferPool`. Some of these manifested themselves primarily
+on Windows.
+
+`GstAdapter` can now keep track of discontinuities signalled via the `DISCONT`
+buffer flag, and has gained [new API][new-adapter-api] to track PTS, DTS and
+offset at the last discont. This is useful for plugins implementing advanced
+trick mode scenarios.
+
+[new-adapter-api]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstAdapter.html#gst-adapter-pts-at-discont
+
+`GstTestClock` gained a new [`"clock-type"` property][clock-type-prop].
+
+[clock-type-prop]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstTestClock.html#GstTestClock--clock-type
+
+#### GstStream API for stream announcement and stream selection
+
+New stream listing and stream selection API: new API has been added to
+provide high-level abstractions for streams ([`GstStream`][stream-api])
+and collections of streams ([`GstStreamCollections`][stream-collection-api]).
+
+##### Stream listing
+
+A [`GstStream`][stream-api] contains all the information pertinent to a stream,
+such as stream id, caps, tags, flags and stream type(s); it can represent a
+single elementary stream (e.g. audio, video, subtitles, etc.) or a container
+stream. This will depend on the context. In a decodebin3/playbin3 one
+it will typically be elementary streams that can be selected and unselected.
+
+A [`GstStreamCollection`][stream-collection-api] represents a group of streams
+and is used to announce or publish all available streams. A GstStreamCollection
+is immutable - once created it won't change. If the available streams change,
+e.g. because a new stream appeared or some streams disappeared, a new stream
+collection will be published. This new stream collection may contain streams
+from the previous collection if those streams persist, or completely new ones.
+Stream collections do not yet list all theoretically available streams,
+e.g. other available DVD angles or alternative resolutions/bitrate of the same
+stream in case of adaptive streaming.
+
+New events and messages have been added to notify or update other elements and
+the application about which streams are currently available and/or selected.
+This way, we can easily and seamlessly let the application know whenever the
+available streams change, as happens frequently with digital television streams
+for example. The new system is also more flexible. For example, it is now also
+possible for the application to select multiple streams of the same type
+(e.g. in a transcoding/transmuxing scenario).
+
+A [`STREAM_COLLECTION` message][stream-collection-msg] is posted on the bus
+to inform the parent bin (e.g. `playbin3`, `decodebin3`) and/or the application
+about what streams are available, so you no longer have to hunt for this
+information at different places. The available information includes number of
+streams of each type, caps, tags etc.  Bins and/or the application can intercept
+the message synchronously to select and deselect streams before any data is
+produced - for the case where elements such as the demuxers support the new
+stream API, not necessarily in the parsebin compatibility fallback case.
+
+Similarly, there is also a [`STREAM_COLLECTION` event][stream-collection-event]
+to inform downstream elements of the available streams. This event can be used
+by elements to aggregate streams from multiple inputs into one single collection.
+
+The `STREAM_START` event was extended so that it can also contain a GstStream
+object with all information about the current stream, see
+[`gst_event_set_stream()`][event-set-stream] and
+[`gst_event_parse_stream()`][event-parse-stream].
+[`gst_pad_get_stream()`][pad-get-stream] is a new utility function that can be
+used to look up the GstStream from the `STREAM_START` sticky event on a pad.
+
+[stream-api]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstStream.html
+[stream-collection-api]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstStreamCollection.html
+[stream-collection-msg]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#gst-message-new-stream-collection
+[stream-collection-event]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstEvent.html#gst-event-new-stream-collection
+[event-set-stream]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstEvent.html#gst-event-set-stream
+[event-parse-stream]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstEvent.html#gst-event-parse-stream
+[pad-get-stream]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#gst-pad-get-stream
+
+##### Stream selection
+
+Once the available streams have been published, streams can be selected via
+their stream ID using the new `SELECT_STREAMS` event, which can be created
+with [`gst_event_new_select_streams()`][event-select-streams]. The new API
+supports selecting multiple streams per stream type. In the future, we may also
+implement explicit deselection of streams that will never be used, so
+elements can skip these and never expose them or output data for them in the
+first place.
+
+The application is then notified of the currently selected streams via the
+new `STREAMS_SELECTED` message on the pipeline bus, containing both the current
+stream collection as well as the selected streams. This might be posted in
+response to the application sending a `SELECT_STREAMS` event or when
+`decodebin3` or `playbin3` decide on the streams to be initially selected without
+application input.
+
+[event-select-streams]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstEvent.html#gst-event-new-select-streams
+
+##### Further reading
+
+See further below for some notes on the new elements supporting this new
+stream API, namely: `decodebin3`, `playbin3` and `parsebin`.
+
+More information about the new API and the new elements can also be found here:
+
+- GStreamer [stream selection design docs][streams-design]
+- Edward Hervey's talk ["The new streams API: Design and usage"][streams-talk] ([slides][streams-slides])
+- Edward Hervey's talk ["Decodebin3: Dealing with modern playback use cases"][db3-talk] ([slides][db3-slides])
+
+[streams-design]: https://cgit.freedesktop.org/gstreamer/gstreamer/tree/docs/design/part-stream-selection.txt
+[streams-talk]: https://gstconf.ubicast.tv/videos/the-new-gststream-api-design-and-usage/
+[streams-slides]: https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2016/Edward%20Hervey%20-%20The%20New%20Streams%20API%20Design%20and%20Usage.pdf
+[db3-talk]: https://gstconf.ubicast.tv/videos/decodebin3-or-dealing-with-modern-playback-use-cases/
+[db3-slides]: https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2015/Edward%20Hervey%20-%20decodebin3.pdf
+
+#### Audio conversion and resampling API
+
+The audio conversion library received a completely new and rewritten audio
+resampler, complementing the audio conversion routines moved into the audio
+library in the [previous release][release-notes-1.8]. Integrating the resampler
+with the other audio conversion library allows us to implement generic
+conversion much more efficiently, as format conversion and resampling can now
+be done in the same processing loop instead of having to do it in separate
+steps (our element implementations do not make use of this yet though).
+
+The new audio resampler library is a combination of some of the best features
+of other samplers such as ffmpeg, speex and SRC. It natively supports S16, S32,
+F32 and F64 formats and uses optimized x86 and neon assembly for most of its
+processing. It also has support for dynamically changing sample rates by incrementally
+updating the filter tables using linear or cubic interpolation. According to
+some benchmarks, it's one of the fastest and most accurate resamplers around.
+
+The `audioresample` plugin has been ported to the new audio library functions
+to make use of the new resampler.
+
+[release-notes-1.8]: https://gstreamer.freedesktop.org/releases/1.8/
+
+#### Support for SMPTE timecodes
+
+Support for SMPTE timecodes was added to the GStreamer video library. This
+comes with an abstraction for timecodes, [`GstVideoTimeCode`][video-timecode]
+and a [`GstMeta`][video-timecode-meta] that can be placed on video buffers for
+carrying the timecode information for each frame. Additionally there is
+various API for making handling of timecodes easy and to do various
+calculations with them.
+
+A new plugin called [`timecode`][timecode-plugin] was added, that contains an
+element called `timecodestamper` for putting the timecode meta on video frames
+based on counting the frames and another element called `timecodewait` that
+drops all video (and audio) until a specific timecode is reached.
+
+Additionally support was added to the Decklink plugin for including the
+timecode information when sending video out or capturing it via SDI, the
+`qtmux` element is able to write timecode information into the MOV container,
+and the `timeoverlay` element can overlay timecodes on top of the video.
+
+More information can be found in the [talk about timecodes][timecode-talk] at
+the GStreamer Conference 2016.
+
+[video-timecode]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideo.html#GstVideoTimeCode
+[video-timecode-meta]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideometa.html#gst-buffer-add-video-time-code-meta
+[timecode-plugin]: https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/gst/timecode
+[timecode-talk]: https://gstconf.ubicast.tv/videos/smpte-timecodes-in-gstreamer/
+
+#### GStreamer OpenMAX IL plugin
+
+The last gst-omx release, 1.2.0, was in July 2014. It was about time to get
+a new one out with all the improvements that have happened in the meantime.
+From now on, we will try to release gst-omx together with all other modules.
+
+This release features a lot of bugfixes, improved support for the Raspberry Pi
+and in general improved support for zerocopy rendering via EGL and a few minor
+new features.
+
+At this point, gst-omx is known to work best on the Raspberry Pi platform but
+it is also known to work on various other platforms. Unfortunately, we are
+not including configurations for any other platforms, so if you happen to use
+gst-omx: please send us patches with your configuration and code changes!
+
+### New Elements
+
+#### decodebin3, playbin3, parsebin (experimental)
+
+This release features new decoding and playback elements as experimental
+technology previews: `decodebin3` and `playbin3` will soon supersede the
+existing `decodebin` and `playbin` elements. We skipped the number 2 because
+it was already used back in the 0.10 days, which might cause confusion.
+Experimental technology preview means that everything should work fine already,
+but we can't guarantee there won't be minor behavioural changes in the
+next cycle. In any case, please test and report any problems back.
+
+Before we go into detail about what these new elements improve, let's look at
+the new [`parsebin`][parsebin] element. It works similarly to `decodebin` and
+`decodebin3`, only that it stops one step short and does not plug any actual
+decoder elements. It will only plug parsers, tag readers, demuxers and
+depayloaders. Also note that parsebin does not contain any queueing element.
+
+[`decodebin3`'s][decodebin3] internal architecture is slightly different from
+the existing `decodebin` element and fixes many long-standing issues with our
+decoding engine. For one, data is now fed into the internal `multiqueue` element
+*after* it has been parsed and timestamped, which means that the `multiqueue`
+element now has more knowledge and is able to calculate the interleaving of the
+various streams, thus minimizing memory requirements and doing away with magic
+values for buffering limits that were conceived when videos were 240p or 360p.
+Anyone who has tried to play back 4k video streams with decodebin2
+will have noticed the limitations of that approach. The improved timestamp
+tracking also enables `multiqueue` to keep streams of the same type (audio,
+video) aligned better, making sure switching between streams of the same type
+is very fast.
+
+Another major improvement in `decodebin3` is that it will no longer decode
+streams that are not being used. With the old `decodebin` and `playbin`, when
+there were 8 audio streams we would always decode all 8 streams even
+if 7 were not actually used. This caused a lot of CPU overhead, which was
+particularly problematic on embedded devices. When switching between streams
+`decodebin3` will try hard to re-use existing decoders. This is useful when
+switching between multiple streams of the same type if they are encoded in the
+same format.
+
+Re-using decoders is also useful when the available streams change on the fly,
+as might happen with radio streams (chained Oggs), digital television
+broadcasts, when adaptive streaming streams change bitrate, or when switching
+gaplessly to the next title. In order to guarantee a seamless transition, the
+old `decodebin2` would plug a second decoder for the new stream while finishing
+up the old stream. With `decodebin3`, this is no longer needed - at least not
+when the new and old format are the same. This will be particularly useful
+on embedded systems where it is often not possible to run multiple decoders
+at the same time, or when tearing down and setting up decoders is fairly
+expensive.
+
+`decodebin3` also allows for multiple input streams, not just a single one.
+This will be useful, in the future, for gapless playback, or for feeding
+multiple external subtitle streams to decodebin/playbin.
+
+`playbin3` uses `decodebin3` internally, and will supercede `playbin`.
+It was decided that it would be too risky to make the old `playbin` use the
+new `decodebin3` in a backwards-compatible way. The new architecture
+makes it awkward, if not impossible, to maintain perfect backwards compatibility
+in some aspects, hence `playbin3` was born, and developers can migrate to the
+new element and new API at their own pace.
+
+All of these new elements make use of the new `GstStream` API for listing and
+selecting streams, as described above. `parsebin` provides backwards
+compatibility for demuxers and parsers which do not advertise their streams
+using the new API yet (which is most).
+
+The new elements are not entirely feature-complete yet: `playbin3` does not
+support so-called decodersinks yet where the data is not decoded inside
+GStreamer but passed directly for decoding to the sink. `decodebin3` is missing
+the various `autoplug-*` signals to influence which decoders get autoplugged
+in which order. We're looking to add back this functionality, but it will probably
+be in a different way, with a single unified signal and using GstStream perhaps.
+
+For more information on these new elements, check out Edward Hervey's talk
+[*decodebin3 - dealing with modern playback use cases*][db3-talk]
+
+[parsebin]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-plugins/html/gst-plugins-base-plugins-parsebin.html
+[decodebin3]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-plugins/html/gst-plugins-base-plugins-decodebin3.html
+[db3-talk]: https://gstconf.ubicast.tv/videos/decodebin3-or-dealing-with-modern-playback-use-cases/
+
+#### LV2 ported from 0.10 and switched from slv2 to lilv2
+
+The LV2 wrapper plugin has been ported to 1.0 and moved from using the
+deprecated slv2 library to its replacement liblv2. We support sources and
+filter elements. lv2 is short for *Linux Audio Developer's Simple Plugin API
+(LADSPA) version 2* and is an open standard for audio plugins which includes
+support for audio synthesis (generation), digital signal processing of digital
+audio, and MIDI. The new lv2 plugin supersedes the existing LADSPA plugin.
+
+#### WebRTC DSP Plugin for echo-cancellation, gain control and noise suppression
+
+A set of new elements ([webrtcdsp][webrtcdsp], [webrtcechoprobe][webrtcechoprobe])
+based on the WebRTC DSP software stack can now be used to improve your audio
+voice communication pipelines. They support echo cancellation, gain control,
+noise suppression and more. For more details you may read
+[Nicolas' blog post][webrtc-blog-post].
+
+[webrtcdsp]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-plugins/html/gst-plugins-bad-plugins-webrtcdsp.html
+[webrtcechoprobe]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-plugins/html/gst-plugins-bad-plugins-webrtcechoprobe.html
+[webrtc-blog-post]: https://ndufresne.ca/2016/06/gstreamer-echo-canceller/
+
+#### Fraunhofer FDK AAC encoder and decoder
+
+New encoder and decoder elements wrapping the Fraunhofer FDK AAC library have
+been added (`fdkaacdec`, `fdkaacdec`). The Fraunhofer FDK AAC encoder is
+generally considered to be a very high-quality AAC encoder, but unfortunately
+it comes under a non-free license with the option to obtain a paid, commercial
+license.
+
+### Noteworthy element features and additions
+
+#### Major RTP and RTSP improvements
+
+- The RTSP server and source element, as well as the RTP jitterbuffer now support
+  remote clock synchronization according to [RFC7273][https://tools.ietf.org/html/rfc7273].
+- Support for application and profile specific RTCP packets was added.
+- The H265/HEVC payloader/depayloader is again in sync with the final RFC.
+- Seeking stability of the RTSP source and server was improved a lot and
+  runs stably now, even when doing scrub-seeking.
+- The RTSP server received various major bugfixes, including for regressions that
+  caused the IP/port address pool to not be considered, or NAT hole punching
+  to not work anymore. [Bugzilla #766612][https://bugzilla.gnome.org/show_bug.cgi?id=766612]
+- Various other bugfixes that improve the stability of RTP and RTSP, including
+  many new unit / integration tests.
+
+#### Improvements to splitmuxsrc and splitmuxsink
+
+- The splitmux element received reliability and error handling improvements,
+  removing at least one deadlock case. `splitmuxsrc` now stops cleanly at the end
+  of the segment when handling seeks with a stop time. We fixed a bug with large
+  amounts of downstream buffering causing incorrect out-of-sequence playback.
+
+- `splitmuxsrc` now has a `"format-location"` signal to directly specify the list
+  of files to play from.
+
+- `splitmuxsink` can now optionally send force-keyunit events to upstream
+  elements to allow splitting files more accurately instead of having to wait
+  for upstream to provide a new keyframe by itself.
+
+#### OpenGL/GLES improvements
+
+##### iOS and macOS (OS/X)
+
+- We now create OpenGL|ES 3.x contexts on iOS by default with a fallback to
+  OpenGL|ES 2.x if that fails.
+- Various zerocopy decoding fixes and enhancements with the
+  encoding/decoding/capturing elements.
+- libdispatch is now used on all Apple platforms instead of GMainLoop, removing
+  the expensive poll()/pthread_*() overhead.
+
+##### New API
+
+- `GstGLFramebuffer` - for wrapping OpenGL frame buffer objects.  It provides
+  facilities for attaching `GstGLMemory` objects to the necessary attachment
+  points, binding and unbinding and running a user-supplied function with the
+  framebuffer bound.
+- `GstGLRenderbuffer` (a `GstGLBaseMemory` subclass) - for wrapping OpenGL
+  render buffer objects that are typically used for depth/stencil buffers or
+  for color buffers where we don't care about the output.
+- `GstGLMemoryEGL` (a `GstGLMemory` subclass) - for combining `EGLImage`s with a GL
+  texture that replaces `GstEGLImageMemory` bringing the improvements made to the
+  other `GstGLMemory` implementations.  This fixes a performance regression in
+  zerocopy decoding on the Raspberry Pi when used with an updated gst-omx.
+
+##### Miscellaneous improvements
+
+- `gltestsrc` is now usable on devices/platforms with OpenGL 3.x and OpenGL|ES
+  and has completed or gained support for new patterns in line with the
+  existing ones in `videotestsrc`.
+- `gldeinterlace` is now available on devices/platforms with OpenGL|ES
+  implementations.
+- The dispmanx backend (used on the Raspberry Pi) now supports the
+  `gst_video_overlay_set_window_handle()` and
+  `gst_video_overlay_set_render_rectangle()` functions.
+- The `gltransformation` element now correctly transforms mouse coordinates (in
+  window space) to stream coordinates for both perspective and orthographic
+  projections.
+- The `gltransformation` element now detects if the
+  `GstVideoAffineTransformationMeta` is supported downstream and will efficiently
+  pass its transformation downstream. This is a performance improvement as it
+  results in less processing being required.
+- The wayland implementation now uses the multi-threaded safe event-loop API
+  allowing correct usage in applications that call wayland functions from
+  multiple threads.
+- Support for native 90 degree rotations and horizontal/vertical flips
+  in `glimagesink`.
+
+#### Vulkan
+
+- The Vulkan elements now work under Wayland and have received numerous
+  bugfixes.
+
+#### QML elements
+
+- `qmlglsink` video sink now works on more platforms, notably, Windows, Wayland,
+  and Qt's eglfs (for embedded devices with an OpenGL implementation) including
+  the Raspberry Pi.
+- New element `qmlglsrc` to record a QML scene into a GStreamer pipeline.
+
+#### KMS video sink
+
+- New element `kmssink` to render video using Direct Rendering Manager
+  (DRM) and Kernel Mode Setting (KMS) subsystems in the Linux
+  kernel. It is oriented to be used mostly in embedded systems.
+
+#### Wayland video sink
+
+- `waylandsink` now supports the wl_viewporter extension allowing
+  video scaling and cropping to be delegated to the Wayland
+  compositor. This extension is also been made optional, so that it can
+  also work on current compositors that don't support it. It also now has
+  support for the video meta, allowing zero-copy operations in more
+  cases.
+
+#### DVB improvements
+
+- `dvbsrc` now has better delivery-system autodetection and several
+  new parameter sanity-checks to improve its resilience to configuration
+  omissions and errors. Superfluous polling continues to be trimmed down,
+  and the debugging output has been made more consistent and precise.
+  Additionally, the channel-configuration parser now supports the new dvbv5
+  format, enabling `dvbbasebin` to automatically playback content transmitted
+  on delivery systems that previously required manual description, like ISDB-T.
+
+#### DASH, HLS and adaptivedemux
+
+- HLS now has support for Alternate Rendition audio and video tracks. Full
+  support for Alternate Rendition subtitle tracks will be in an upcoming release.
+- DASH received support for keyframe-only trick modes if the
+  `GST_SEEK_FLAG_TRICKMODE_KEY_UNITS` flag is given when seeking. It will
+  only download keyframes then, which should help with high-speed playback.
+  Changes to skip over multiple frames based on bandwidth and other metrics
+  will be added in the near future.
+- Lots of reliability fixes around seek handling and bitrate switching.
+
+#### Bluetooth improvements
+
+- The `avdtpsrc` element now supports metadata such as track title, artist
+  name, and more, which devices can send via AVRCP. These are published as
+  tags on the pipeline.
+- The `a2dpsink` element received some love and was cleaned up so that it
+  actually works after the initial GStreamer 1.0 port.
+
+#### GStreamer VAAPI
+
+- All the decoders have been split, one plugin feature per codec. So
+  far, the available ones, depending on the driver, are:
+  `vaapimpeg2dec`, `vaapih264dec`, `vaapih265dec`, `vaapivc1dec`, `vaapivp8dec`,
+  `vaapivp9dec` and `vaapijpegdec` (which already was split).
+- Improvements when mapping VA surfaces into memory. It now differentiates
+  between negotiation caps and allocations caps, since the allocation
+  memory for surfaces may be bigger than one that is going to be
+  mapped.
+- `vaapih265enc` now supports constant bitrate mode (CBR).
+- Since several VA drivers are unmaintained, we decide to keep a whitelist
+  with the va drivers we actually test, which is mostly the i915 and to a lesser
+  degree gallium from the mesa project. Exporting the environment variable
+  `GST_VAAPI_ALL_DRIVERS` disables the whitelist.
+- Plugin features are registered at run-time, according to their support by
+  the loaded VA driver. So only the decoders and encoder supported by the
+  system are registered. Since the driver can change, some dependencies are
+  tracked to invalidate the GStreamer registry and reload the plugin.
+- `dmabuf` importation from upstream has been improved, gaining performance.
+- `vaapipostproc` now can negotiate buffer transformations via caps.
+- Decoders now can do I-frame only reverse playback. This decodes I-frames
+  only because the surface pool is smaller than the required by the GOP to show all the
+  frames.
+- The upload of frames onto native GL textures has been optimized too, keeping
+  a cache of the internal structures for the offered textures by the sink.
+
+#### V4L2 changes
+
+- More pixels formats are now supported
+- Decoder is now using `G_SELECTION` instead of the deprecated `G_CROP`
+- Decoder now uses the `STOP` command to handle EOS
+- Transform element can now scale the pixel aspect ratio
+- Colorimetry support has been improved even more
+- We now support the `OUTPUT_OVERLAY` type of video node in v4l2sink
+
+#### Miscellaneous
+
+- `multiqueue`'s input pads gained a new `"group-id"` property which
+  can be used to group input streams. Typically one will assign
+  different id numbers to audio, video and subtitle streams for
+  example. This way `multiqueue` can make sure streams of the same
+  type advance in lockstep if some of the streams are unlinked and the
+  `"sync-by-running-time"` property is set. This is used in
+  decodebin3/playbin3 to implement almost-instantaneous stream
+  switching.  The grouping is required because different downstream
+  paths (audio, video, etc.)  may have different buffering/latency
+  etc. so might be consuming data from multiqueue with a slightly
+  different phase, and if we track different stream groups separately
+  we minimize stream switching delays and buffering inside the
+  `multiqueue`.
+- `alsasrc` now supports ALSA drivers without a position for each
+  channel, this is common in some professional or industrial hardware.
+- `libvpx` based decoders (`vp8dec` and `vp9dec`) now create multiple threads on
+  computers with multiple CPUs automatically.
+- `rfbsrc` - used for capturing from a VNC server - has seen a lot of
+  debugging. It now supports the latest version of the RFB
+  protocol and uses GIO everywhere.
+- `tsdemux` can now read ATSC E-AC-3 streams.
+- New `GstVideoDirection` video orientation interface for rotating, flipping
+  and mirroring video in 90° steps. It is implemented by the `videoflip` and
+  `glvideoflip` elements currently.
+- It is now possible to give `appsrc` a duration in time, and there is now a
+  non-blocking try-pull API for `appsink` that returns NULL if nothing is
+  available right now.
+- `x264enc` has support now for chroma-site and colorimetry settings
+- A new JPEG2000 parser element was added, and the JPEG2000 caps were cleaned
+  up and gained more information needed in combination with RTP and various
+  container formats.
+- Reverse playback support for `videorate` and `deinterlace` was implemented
+- Various improvements everywhere for reverse playback and `KEY_UNITS` trick mode
+- New cleaned up `rawaudioparse` and `rawvideoparse` elements that replace the
+  old `audioparse` and `videoparse` elements. There are compatibility element
+  factories registered with the old names to allow existing code to continue
+  to work.
+- The Decklink plugin gained support for 10 bit video SMPTE timecodes, and
+  generally got many bugfixes for various issues.
+- New API in `GstPlayer` for setting the multiview mode for stereoscopic
+  video, setting an HTTP/RTSP user agent and a time offset between audio and
+  video. In addition to that, there were various bugfixes and the new
+  gst-examples module contains Android, iOS, GTK+ and Qt example applications.
+- `GstBin` has new API for suppressing various `GstElement` or `GstObject`
+  flags that would otherwise be affected by added/removed child elements. This
+  new API allows `GstBin` subclasses to handle for themselves if they
+  should be considered a sink or source element, for example.
+- The `subparse` element can handle WebVTT streams now.
+- A new `sdpsrc` element was added that can read an SDP from a file, or get it
+  as a string as property and then sets up an RTP pipeline accordingly.
+
+### Plugin moves
+
+No plugins were moved this cycle. We'll make up for it next cycle, promise!
+
+### Rewritten memory leak tracer
+
+GStreamer has had basic functionality to trace allocation and freeing of
+both mini-objects (buffers, events, caps, etc.) and objects in the form of the
+internal `GstAllocTrace` tracing system. This API was never exposed in the
+1.x API series though. When requested, this would dump a list of objects and
+mini-objects at exit time which had still not been freed at that point,
+enabled with an environment variable. This subsystem has now been removed
+in favour of a new implementation based on the recently-added tracing framework.
+
+Tracing hooks have been added to trace the creation and destruction of
+GstObjects and mini-objects, and a new tracer plugin has been written using
+those new hooks to track which objects are still live and which are not. If
+GStreamer has been compiled against the libunwind library, the new leaks tracer
+will remember where objects were allocated from as well. By default the leaks
+tracer will simply output a warning if leaks have been detected on `gst_deinit()`.
+
+If the `GST_LEAKS_TRACER_SIG` environment variable is set, the leaks tracer
+will also handle the following UNIX signals:
+
+ - `SIGUSR1`: log alive objects
+ - `SIGUSR2`: create a checkpoint and print a list of objects created and
+   destroyed since the previous checkpoint.
+
+Unfortunately this will not work on Windows due to no signals, however.
+
+If the `GST_LEAKS_TRACER_STACK_TRACE` environment variable is set, the leaks
+tracer will also log the creation stack trace of leaked objects. This may
+significantly increase memory consumption however.
+
+New `MAY_BE_LEAKED` flags have been added to GstObject and GstMiniObject, so
+that objects and mini-objects that are likely to stay around forever can be
+flagged and blacklisted from the leak output.
+
+To give the new leak tracer a spin, simply call any GStreamer application such
+as `gst-launch-1.0` or `gst-play-1.0` like this:
+
+    GST_TRACERS=leaks gst-launch-1.0 videotestsrc num-buffers=10 ! fakesink
+
+If there are any leaks, a warning will be raised at the end.
+
+It is also possible to trace only certain types of objects or mini-objects:
+
+    GST_TRACERS="leaks(GstEvent,GstMessage)" gst-launch-1.0 videotestsrc num-buffers=10 ! fakesink
+
+This dedicated leaks tracer is much much faster than valgrind since all code is
+executed natively instead of being instrumented. This makes it very suitable
+for use on slow machines or embedded devices. It is however limited to certain
+types of leaks and won't catch memory leaks when the allocation has been made
+via plain old `malloc()` or `g_malloc()` or other means. It will also not trace
+non-GstObject GObjects.
+
+The goal is to enable leak tracing on GStreamer's Continuous-Integration and
+testing system, both for the regular unit tests (make check) and media tests
+(gst-validate), so that accidental leaks in common code paths can be detected
+and fixed quickly.
+
+For more information about the new tracer, check out Guillaume Desmottes's
+["Tracking Memory Leaks"][leaks-talk] talk or his [blog post][leaks-blog] about
+the topic.
+
+[leaks-talk]: https://gstconf.ubicast.tv/videos/tracking-memory-leaks/
+[leaks-blog]: https://blog.desmottes.be/?post/2016/06/20/GStreamer-leaks-tracer
+
+### GES and NLE changes
+
+- Clip priorities are now handled by the layers, and the GESTimelineElement
+  priority property is now deprecated and unused
+- Enhanced (de)interlacing support to always use the `deinterlace` element
+  and expose needed properties to users
+- Allow reusing clips children after removing the clip from a layer
+- We are now testing many more rendering formats in the gst-validate
+  test suite, and failures have been fixed.
+- Also many bugs have been fixed in this cycle!
+
+### GStreamer validate changes
+
+This cycle has been focused on making GstValidate more than just a validating
+tool, but also a tool to help developers debug their GStreamer issues. When
+reporting issues, we try to gather as much information as possible and expose
+it to end users in a useful way. For an example of such enhancements, check out
+Thibault Saunier's [blog post](improving-debugging-gstreamer-validate) about
+the new Not Negotiated Error reporting mechanism.
+
+Playbin3 support has been added so we can run validate tests with `playbin3`
+instead of playbin.
+
+We are now able to properly communicate between `gst-validate-launcher` and
+launched subprocesses with actual IPC between them. That has enabled the test
+launcher to handle failing tests specifying the exact expected issue(s).
+
+[improving-debugging-gstreamer-validate]: https://blogs.s-osg.org/improving-debugging-gstreamer-validate/
+
+### gst-libav changes
+
+gst-libav uses the recently released ffmpeg 3.2 now, which brings a lot of
+improvements and bugfixes from the ffmpeg team in addition to various new
+codec mappings on the GStreamer side and quite a few bugfixes to the GStreamer
+integration to make it more robust.
+
+## Build and Dependencies
+
+### Experimental support for Meson as build system
+
+#### Overview
+
+We have have added support for building GStreamer using the
+[Meson build system][meson]. This is currently experimental, but should work
+fine at least on Linux using the gcc or clang toolchains and on Windows using
+the MingW or MSVC toolchains.
+
+Autotools remains the primary build system for the time being, but we hope to
+someday replace it and will steadily work towards that goal.
+
+More information about the background and implications of all this and where
+we're hoping to go in future with this can be found in [Tim's mail][meson-mail]
+to the gstreamer-devel mailing list.
+
+For more information on Meson check out [these videos][meson-videos] and also
+the [Meson talk][meson-gstconf] at the GStreamer Conference.
+
+Immediate benefits for Linux users are faster builds and rebuilds. At the time
+of writing the Meson build of GStreamer is used by default in GNOME's jhbuild
+system.
+
+The Meson build currently still lacks many of the fine-grained configuration
+options to enable/disable specific plugins. These will be added back in due
+course.
+
+Note: The meson build files are not distributed in the source tarballs, you will
+need to get GStreamer from git if you want try it out.
+
+[meson]: http://mesonbuild.com/
+[meson-mail]: https://lists.freedesktop.org/archives/gstreamer-devel/2016-September/060231.html
+[meson-videos]: http://mesonbuild.com/videos.html
+[meson-gstconf]: https://gstconf.ubicast.tv/videos/gstreamer-development-on-windows-ans-faster-builds-everywhere-with-meson/
+
+#### Windows Visual Studio toolchain support
+
+Windows users might appreciate being able to build GStreamer using the MSVC
+toolchain, which is not possible using autotools. This means that it will be
+possible to debug GStreamer and applications in Visual Studio, for example.
+We require VS2015 or newer for this at the moment.
+
+There are two ways to build GStreamer using the MSVC toolchain:
+
+1. Using the MSVC command-line tools (`cl.exe` etc.) via Meson's "ninja" backend.
+2. Letting Meson's "vs2015" backend generate Visual Studio project files that
+   can be opened in Visual Studio and compiled from there.
+
+This is currently only for adventurous souls though. All the bits are in place,
+but support for all of this has not been merged into GStreamer's cerbero build
+tool yet at the time of writing. This will hopefully happen in the next cycle,
+but for now this means that those wishing to compile GStreamer with MSVC will
+have to get their hands dirty.
+
+There are also no binary SDK builds using the MSVC toolchain yet.
+
+For more information on GStreamer builds using Meson and the Windows toolchain
+check out Nirbheek Chauhan's blog post ["Building and developing GStreamer using Visual Studio"][msvc-blog].
+
+[msvc-blog]: http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html
+
+### Dependencies
+
+#### gstreamer
+
+libunwind was added as an optional dependency. It is used only for debugging
+and tracing purposes.
+
+The `opencv` plugin in gst-plugins-bad can now be built against OpenCV
+version 3.1, previously only 2.3-2.5 were supported.
+
+#### gst-plugins-ugly
+
+- `mpeg2dec` now requires at least libmpeg2 0.5.1 (from 2008).
+
+#### gst-plugins-bad
+
+- `gltransformation` now requires at least graphene 1.4.0.
+
+- `lv2` now plugin requires at least lilv 0.16 instead of slv2.
+
+### Packaging notes
+
+Packagers please note that the `gst/gstconfig.h` public header file in the
+GStreamer core library moved back from being an architecture dependent include
+to being architecture independent, and thus it is no longer installed into
+`$(libdir)/gstreamer-1.0/include/gst` but into the normal include directory
+where it lives happily ever after with all the other public header files. The
+reason for this is that we now check whether the target supports unaligned
+memory access based on predefined compiler macros at compile time instead of
+checking it at configure time.
+
+## Platform-specific improvements
+
+### Android
+
+#### New universal binaries for all supported ABIs
+
+We now provide a "universal" tarball to allow building apps against all the
+architectures currently supported (x86, x86-64, armeabi, armeabi-v7a,
+armeabi-v8a). This is needed for building with recent versions of the Android
+NDK which defaults to building against all supported ABIs. Use [the Android
+player example][android-player-example-build] as a reference for the required
+changes.
+
+[android-player-example-build]: https://cgit.freedesktop.org/gstreamer/gst-examples/commit/playback/player/android?id=a5cdde9119f038a1eb365aca20faa9741a38e788
+
+#### Miscellaneous
+
+- New `ahssrc` element that allows reading the hardware sensors, e.g. compass
+  or accelerometer.
+
+### macOS (OS/X) and iOS
+
+- Support for querying available devices on OS/X via the GstDeviceProvider
+  API was added.
+- It is now possible to create OpenGL|ES 3.x contexts on iOS and use them in
+  combination with the VideoToolbox based decoder element.
+- many OpenGL/GLES improvements, see OpenGL section above
+
+### Windows
+
+- gstconfig.h: Always use dllexport/import on Windows with MSVC
+- Miscellaneous fixes to make libs and plugins compile with the MVSC toolchain
+- MSVC toolchain support (see Meson section above for more details)
+
+## New Modules for Documentation, Examples, Meson Build
+
+Three new git modules have been added recently:
+
+### gst-docs
+
+This is a new module where we will maintain documentation in the markdown
+format.
+
+It contains the former gstreamer.com SDK tutorials which have kindly been made
+available by Fluendo under a Creative Commons license. The tutorials have been
+reviewed and updated for GStreamer 1.x and will be available as part of the
+[official GStreamer documentation][doc] going forward. The old gstreamer.com
+site will then be shut down with redirects pointing to the updated tutorials.
+
+Some of the existing docbook XML-formatted documentation from the GStreamer
+core module such as the *Application Development Manual* and the *Plugin
+Writer's Guide* have been converted to markdown as well and will be maintained
+in the gst-docs module in future. They will be removed from the GStreamer core
+module in the next cycle.
+
+This is just the beginning. Our goal is to provide a more cohesive documentation
+experience for our users going forward, and easier to create and maintain
+documentation for developers. There is a lot more work to do, get in touch if
+you want to help out.
+
+If you encounter any problems or spot any omissions or outdated content in the
+new documentation, please [file a bug in bugzilla][doc-bug] to let us know.
+
+We will probably release gst-docs as a separate tarball for distributions to
+package in the next cycle.
+
+[doc]: http://gstreamer.freedesktop.org/documentation/
+[doc-bug]: https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer&component=documentation
+
+### gst-examples
+
+A new [module][examples-git] has been added for examples. It does not contain
+much yet, currently it only contains a small [http-launch][http-launch] utility
+that serves a pipeline over http as well as various [GstPlayer playback frontends][puis]
+for Android, iOS, Gtk+ and Qt.
+
+More examples will be added over time. The examples in this repository should
+be more useful and more substantial than most of the examples we ship as part
+of our other modules, and also written in a way that makes them good example
+code. If you have ideas for examples, let us know.
+
+No decision has been made yet if this module will be released and/or packaged.
+It probably makes sense to do so though.
+
+[examples-git]: https://cgit.freedesktop.org/gstreamer/gst-examples/tree/
+[http-launch]: https://cgit.freedesktop.org/gstreamer/gst-examples/tree/network/http-launch/
+[puis]: https://cgit.freedesktop.org/gstreamer/gst-examples/tree/playback/player
+
+### gst-build
+
+[gst-build][gst-build-git] is a new meta module to build GStreamer using the
+new Meson build system. This module is not required to build GStreamer with
+Meson, it is merely for convenience and aims to provide a development setup
+similar to the existing `gst-uninstalled` setup.
+
+gst-build makes use of Meson's [subproject feature][meson-subprojects] and sets
+up the various GStreamer modules as subprojects, so they can all be updated and
+built in parallel.
+
+This module is still very new and highly experimental. It should work at least
+on Linux and Windows (OS/X needs some build fixes). Let us know of any issues
+you encounter by popping into the `#gstreamer` IRC channel or by
+[filing a bug][gst-build-bug].
+
+This module will probably not be released or packaged (does not really make sense).
+
+[gst-build-git]: https://cgit.freedesktop.org/gstreamer/gst-build/tree/
+[gst-build-bug]: https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer&component=gst-build
+[meson-subprojects]: https://github.com/mesonbuild/meson/wiki/Subprojects
+
+## Contributors
+
+Aaron Boxer, Aleix Conchillo Flaqué, Alessandro Decina, Alexandru Băluț, Alex
+Ashley, Alex-P. Natsios, Alistair Buxton, Allen Zhang, Andreas Naumann, Andrew
+Eikum, Andy Devar, Anthony G. Basile, Arjen Veenhuizen, Arnaud Vrac, Artem
+Martynovich, Arun Raghavan, Aurélien Zanelli, Barun Kumar Singh, Bernhard
+Miller, Brad Lackey, Branko Subasic, Carlos Garcia Campos, Carlos Rafael
+Giani, Christoffer Stengren, Daiki Ueno, Damian Ziobro, Danilo Cesar Lemes de
+Paula, David Buchmann, Dimitrios Katsaros, Duncan Palmer, Edward Hervey,
+Emmanuel Poitier, Enrico Jorns, Enrique Ocaña González, Fabrice Bellet,
+Florian Zwoch, Florin Apostol, Francisco Velazquez, Frédéric Bertolus, Fredrik
+Fornwall, Gaurav Gupta, George Kiagiadakis, Georg Lippitsch, Göran Jönsson,
+Graham Leggett, Gregoire Gentil, Guillaume Desmottes, Gwang Yoon Hwang, Haakon
+Sporsheim, Haihua Hu, Havard Graff, Heinrich Fink, Hoonhee Lee, Hyunjun Ko,
+Iain Lane, Ian, Ian Jamison, Jagyum Koo, Jake Foytik, Jakub Adam, Jan
+Alexander Steffens (heftig), Jan Schmidt, Javier Martinez Canillas, Jerome
+Laheurte, Jesper Larsen, Jie Jiang, Jihae Yi, Jimmy Ohn, Jinwoo Ahn, Joakim
+Johansson, Joan Pau Beltran, Jonas Holmberg, Jonathan Matthew, Jonathan Roy,
+Josep Torra, Julien Isorce, Jun Ji, Jürgen Slowack, Justin Kim, Kazunori
+Kobayashi, Kieran Bingham, Kipp Cannon, Koop Mast, Kouhei Sutou, Kseniia, Kyle
+Schwarz, Kyungyong Kim, Linus Svensson, Luis de Bethencourt, Marcin Kolny,
+Marcin Lewandowski, Marianna Smidth Buschle, Mario Sanchez Prada, Mark
+Combellack, Mark Nauwelaerts, Martin Kelly, Matej Knopp, Mathieu Duponchelle,
+Mats Lindestam, Matthew Gruenke, Matthew Waters, Michael Olbrich, Michal Lazo,
+Miguel París Díaz, Mikhail Fludkov, Minjae Kim, Mohan R, Munez, Nicola Murino,
+Nicolas Dufresne, Nicolas Huet, Nikita Bobkov, Nirbheek Chauhan, Olivier
+Crête, Paolo Pettinato, Patricia Muscalu, Paulo Neves, Peng Liu, Peter
+Seiderer, Philippe Normand, Philippe Renon, Philipp Zabel, Pierre Lamot, Piotr
+Drąg, Prashant Gotarne, Raffaele Rossi, Ray Strode, Reynaldo H. Verdejo
+Pinochet, Santiago Carot-Nemesio, Scott D Phillips, Sebastian Dröge, Sebastian
+Rasmussen, Sergei Saveliev, Sergey Borovkov, Sergey Mamonov, Sergio Torres
+Soldado, Seungha Yang, sezero, Song Bing, Sreerenj Balachandran, Stefan Sauer,
+Stephen, Steven Hoving, Stian Selnes, Thiago Santos, Thibault Saunier, Thijs
+Vermeir, Thomas Bluemel, Thomas Jones, Thomas Klausner, Thomas Scheuermann,
+Tim-Philipp Müller, Ting-Wei Lan, Tom Schoonjans, Ursula Maplehurst, Vanessa
+Chipirras Navalon, Víctor Manuel Jáquez Leal, Vincent Penquerc'h, Vineeth TM,
+Vivia Nikolaidou, Vootele Vesterblom, Wang Xin-yu (王昕宇), William Manley,
+Wim Taymans, Wonchul Lee, Xabier Rodriguez Calvar, Xavier Claessens, xlazom00,
+Yann Jouanin, Zaheer Abbas Merali
+
+... and many others who have contributed bug reports, translations, sent
+suggestions or helped testing.
+
+## Bugs fixed in 1.10
+
+More than [750 bugs][bugs-fixed-in-1.10] have been fixed during
+the development of 1.10.
+
+This list does not include issues that have been cherry-picked into the
+stable 1.8 branch and fixed there as well, all fixes that ended up in the
+1.8 branch are also included in 1.10.
+
+This list also does not include issues that have been fixed without a bug
+report in bugzilla, so the actual number of fixes is much higher.
+
+[bugs-fixed-in-1.10]: https://bugzilla.gnome.org/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&classification=Platform&limit=0&list_id=164074&order=bug_id&product=GStreamer&query_format=advanced&resolution=FIXED&target_milestone=1.8.1&target_milestone=1.8.2&target_milestone=1.8.3&target_milestone=1.8.4&target_milestone=1.9.1&target_milestone=1.9.2&target_milestone=1.9.90&target_milestone=1.10.0
+
+## Stable 1.10 branch
+
+After the 1.10.0 release there will be several 1.10.x bug-fix releases which
+will contain bug fixes which have been deemed suitable for a stable branch,
+but no new features or intrusive changes will be added to a bug-fix release
+usually. The 1.10.x bug-fix releases will be made from the git 1.10 branch,
+which is a stable branch.
+
+### 1.10.0
+
+1.10.0 was released on 1st November 2016.
+
+## Known Issues
+
+- iOS builds with iOS 6 SDK and old C++ STL. You need to select iOS 6 instead
+  of 7 or 8 in your projects settings to be able to link applications.
+  [Bug #766366](https://bugzilla.gnome.org/show_bug.cgi?id=766366)
+- Code signing for Apple platforms has some problems currently, requiring
+  manual work to get your application signed. [Bug #771860](https://bugzilla.gnome.org/show_bug.cgi?id=771860)
+- Building applications with Android NDK r13 on Windows does not work. Other
+  platforms and earlier/later versions of the NDK are not affected.
+  [Bug #772842](https://bugzilla.gnome.org/show_bug.cgi?id=772842)
+- The new leaks tracer may deadlock the application (or exhibit other undefined
+  behaviour) when `SIGUSR` handling is enabled via the `GST_LEAKS_TRACER_SIG`
+  environment variable. [Bug #770373](https://bugzilla.gnome.org/show_bug.cgi?id=770373)
+- vp8enc crashes on 32 bit Windows, but was working fine in 1.6. 64 bit Windows is unaffected.
+  [Bug #763663](https://bugzilla.gnome.org/show_bug.cgi?id=763663)
+
+## Schedule for 1.12
+
+Our next major feature release will be 1.12, and 1.11 will be the unstable
+development version leading up to the stable 1.12 release. The development
+of 1.11/1.12 will happen in the git master branch.
+
+The plan for the 1.12 development cycle is yet to be confirmed, but it is
+expected that feature freeze will be around early/mid-January,
+followed by several 1.11 pre-releases and the new 1.12 stable release
+in March.
+
+1.12 will be backwards-compatible to the stable 1.10, 1.8, 1.6, 1.4, 1.2 and
+1.0 release series.
+
+- - -
+
+*These release notes have been prepared by Olivier Crête, Sebastian Dröge,
+Nicolas Dufresne, Edward Hervey, Víctor Manuel Jáquez Leal, Tim-Philipp
+Müller, Reynaldo H. Verdejo Pinochet, Arun Raghavan, Thibault Saunier,
+Jan Schmidt, Wim Taymans, Matthew Waters*
+
+*License: [CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/)*
+
diff --git a/RELEASE b/RELEASE
index e8db314..e51488c 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,13 +1,15 @@
 
-Release notes for GStreamer Good Plugins 1.9.90
+Release notes for GStreamer Good Plugins 1.10.0
 
-The GStreamer team is pleased to announce the first release candidate of the
-stable 1.10 release series. The 1.10 release series is adding new features on
-top of the 1.0, 1.2, 1.4, 1.6 and 1.8 series and is part of the API and
-ABI-stable 1.x release series of the GStreamer multimedia framework.
+The GStreamer team is pleased to announce the first release of the new stable
+1.10 release series. The 1.10 release series is adding new features on top of
+the 1.0, 1.2, 1.4, 1.6 and 1.8 series and is part of the API and ABI-stable 1.x
+release series of the GStreamer multimedia framework.
 
 
-Binaries for Android, iOS, Mac OS X and Windows will be provided in the next days.
+Binaries for Android, iOS, Mac OS X and Windows will be provided shortly after
+the source release by the GStreamer project during the stable 1.10 release
+series.
 
 
 "Such ingratitude.  After all the times I've saved your life."
@@ -53,17 +55,15 @@
 
 Bugs fixed in this release
      
-      * 751559 : qtmux: Implement the preset interface.
-      * 766990 : multifilesink: 'buffer'-mode writes no longer atomic (regression)
-      * 769278 : aacparse: a few fixes and improvements for LOAS parsing
-      * 769757 : rtpjitterbuffer: Fix calculating next_seqnum when dropping old buffers from a full queue.
-      * 769768 : rtpjitterbuffer: lots of improvements around RTX
-      * 770951 : qtdemux: Crash with no cenc auxiliary offset available
-      * 771272 : jackaudiosink: hangs when jackd changes sample rate and/or buffer size
-      * 771278 : udpsrc: Compilation error on NetBSD
-      * 771395 : autodetect: Use gst_bin_set_suppressed_flags() API
-      * 772143 : qtmux: Don't calculate PTS offset and DTS with GST_CLOCK_TIME_NONE
-      * 772228 : tagschecking: Unit test fails because it sends untimestamped buffers to qtdemux
+      * 762207 : flvmux: Ensure we fallback to DTS when clipping
+      * 772496 : tests: Fix memory leak by gst_caps_to_string()
+      * 772497 : waveform : Fix Memory leak by gst_caps_to_string
+      * 772644 : Fix level test in CK_FORK=no mode
+      * 772656 : Fix souphttpsrc tests without CK_FORK=no
+      * 773509 : souphttpsrc: connection loss / reconnect issues
+      * 773580 : v4l2object: fix extra-controls leak
+      * 773582 : matroskamux does not allow resolutions above 4096x4096
+      * 773643 : wavparse: crashes on invalid wav file
 
 ==== Download ====
 
@@ -100,21 +100,17 @@
         
 Contributors to this release
     
-      * Arun Raghavan
-      * Georg Lippitsch
-      * Havard Graff
+      * Branko Subasic
+      * Gaurav Gupta
+      * Jan Alexander Steffens (heftig)
       * Jan Schmidt
-      * Mathieu Duponchelle
+      * Mark Nauwelaerts
+      * Michael Olbrich
       * Nicolas Dufresne
-      * Olivier Crête
+      * Nirbheek Chauhan
+      * Scott D Phillips
       * Sebastian Dröge
-      * Stian Selnes
       * Thibault Saunier
-      * Thomas Bluemel
-      * Thomas Klausner
-      * Thomas Scheuermann
       * Tim-Philipp Müller
-      * Vincent Penquerc'h
-      * Wonchul Lee
-      * Xabier Rodriguez Calvar
+      * Tobias Schneider
  
\ No newline at end of file
diff --git a/configure b/configure
index 3b0341c..972b0ae 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.9.90.
+# Generated by GNU Autoconf 2.69 for GStreamer Good Plug-ins 1.10.0.
 #
 # 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.9.90'
-PACKAGE_STRING='GStreamer Good Plug-ins 1.9.90'
+PACKAGE_VERSION='1.10.0'
+PACKAGE_STRING='GStreamer Good Plug-ins 1.10.0'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
 PACKAGE_URL=''
 
@@ -1969,7 +1969,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.9.90 to adapt to many kinds of systems.
+\`configure' configures GStreamer Good Plug-ins 1.10.0 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -2042,7 +2042,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GStreamer Good Plug-ins 1.9.90:";;
+     short | recursive ) echo "Configuration of GStreamer Good Plug-ins 1.10.0:";;
    esac
   cat <<\_ACEOF
 
@@ -2418,7 +2418,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GStreamer Good Plug-ins configure 1.9.90
+GStreamer Good Plug-ins configure 1.10.0
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -3229,7 +3229,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.9.90, which was
+It was created by GStreamer Good Plug-ins $as_me 1.10.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -4211,7 +4211,7 @@
 
 # Define the identity of the package.
  PACKAGE='gst-plugins-good'
- VERSION='1.9.90'
+ VERSION='1.10.0'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -4422,9 +4422,9 @@
 
 
 
-  PACKAGE_VERSION_MAJOR=$(echo 1.9.90 | cut -d'.' -f1)
-  PACKAGE_VERSION_MINOR=$(echo 1.9.90 | cut -d'.' -f2)
-  PACKAGE_VERSION_MICRO=$(echo 1.9.90 | cut -d'.' -f3)
+  PACKAGE_VERSION_MAJOR=$(echo 1.10.0 | cut -d'.' -f1)
+  PACKAGE_VERSION_MINOR=$(echo 1.10.0 | cut -d'.' -f2)
+  PACKAGE_VERSION_MICRO=$(echo 1.10.0 | cut -d'.' -f3)
 
 
 
@@ -4435,7 +4435,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
 $as_echo_n "checking nano version... " >&6; }
 
-  NANO=$(echo 1.9.90 | cut -d'.' -f4)
+  NANO=$(echo 1.10.0 | cut -d'.' -f4)
 
   if test x"$NANO" = x || test "x$NANO" = "x0" ; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
@@ -9276,10 +9276,10 @@
 done
 
 
-  GST_CURRENT=990
+  GST_CURRENT=1000
   GST_REVISION=0
-  GST_AGE=990
-  GST_LIBVERSION=990:0:990
+  GST_AGE=1000
+  GST_LIBVERSION=1000:0:1000
 
 
 
@@ -13907,8 +13907,8 @@
 
 
 
-GST_REQ=1.9.90
-GSTPB_REQ=1.9.90
+GST_REQ=1.10.0
+GSTPB_REQ=1.10.0
 
 
 
@@ -37545,7 +37545,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.9.90, which was
+This file was extended by GStreamer Good Plug-ins $as_me 1.10.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -37611,7 +37611,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.9.90
+GStreamer Good Plug-ins config.status 1.10.0
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index 3f0e7cd..78c2096 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.9.90],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good])
+AC_INIT([GStreamer Good Plug-ins],[1.10.0],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good])
 
 AG_GST_INIT
 
@@ -43,11 +43,11 @@
   [GStreamer API Version])
 
 AG_GST_LIBTOOL_PREPARE
-AS_LIBTOOL(GST, 990, 0, 990)
+AS_LIBTOOL(GST, 1000, 0, 1000)
 
 dnl *** required versions of GStreamer stuff ***
-GST_REQ=1.9.90
-GSTPB_REQ=1.9.90
+GST_REQ=1.10.0
+GSTPB_REQ=1.10.0
 
 dnl *** autotools stuff ****
 
diff --git a/docs/plugins/gst-plugins-good-plugins.args b/docs/plugins/gst-plugins-good-plugins.args
index cad472a..766e7ad 100644
--- a/docs/plugins/gst-plugins-good-plugins.args
+++ b/docs/plugins/gst-plugins-good-plugins.args
@@ -1015,7 +1015,7 @@
 <FLAGS>rw</FLAGS>
 <NICK>User Agent</NICK>
 <BLURB>The User-Agent string to send to the server.</BLURB>
-<DEFAULT>"GStreamer/1.9.90"</DEFAULT>
+<DEFAULT>"GStreamer/1.10.0"</DEFAULT>
 </ARG>
 
 <ARG>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-matroskamux.html b/docs/plugins/html/gst-plugins-good-plugins-matroskamux.html
index e46cd3d..967f267 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-matroskamux.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-matroskamux.html
@@ -315,39 +315,39 @@
 </tr>
 <tr>
 <td><p><span class="term">details</span></p></td>
-<td>video/mpeg, mpegversion=(int){ 1, 2, 4 }, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td>video/mpeg, mpegversion=(int){ 1, 2, 4 }, systemstream=(boolean)false, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-h265, stream-format=(string)hvc1, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-h265, stream-format=(string)hvc1, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-divx, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-divx, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-huffyuv, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-huffyuv, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-dv, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-dv, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-h263, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-h263, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-msmpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-msmpeg, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> image/jpeg, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
@@ -355,31 +355,31 @@
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-dirac, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-dirac, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-pn-realvideo, rmversion=(int)[ 1, 4 ], width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-pn-realvideo, rmversion=(int)[ 1, 4 ], width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-vp8, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-vp8, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-vp9, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-vp9, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-raw, format=(string){ YUY2, I420, YV12, UYVY, AYUV, GRAY8, BGR, RGB }, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-raw, format=(string){ YUY2, I420, YV12, UYVY, AYUV, GRAY8, BGR, RGB }, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-prores, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-prores, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 <tr>
 <td><p><span class="term"></span></p></td>
-<td> video/x-wmv, wmvversion=(int)[ 1, 3 ], width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</td>
+<td> video/x-wmv, wmvversion=(int)[ 1, 3 ], width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</td>
 </tr>
 </tbody>
 </table></div>
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 3558548..b0cc7db 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.9.90</td>
+<td>1.10.0</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 b191129..56d47d6 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.9.90</td>
+<td>1.10.0</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 1b43b4e..2577017 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.9.90</td>
+<td>1.10.0</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 48397a0..b6d70f2 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.9.90</td>
+<td>1.10.0</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 c544961..98b64d5 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.9.90</td>
+<td>1.10.0</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 d98e0ca..e013c94 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.9.90</td>
+<td>1.10.0</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 58182f4..6b28622 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.9.90</td>
+<td>1.10.0</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 ab0eafb..6e94511 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.9.90</td>
+<td>1.10.0</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 2c9ece3..68cc556 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.9.90</td>
+<td>1.10.0</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 6a6a42c..4aee8e7 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.9.90</td>
+<td>1.10.0</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 dab8a32..5120c9c 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.9.90</td>
+<td>1.10.0</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 ff15d2a..3e4eb58 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.9.90</td>
+<td>1.10.0</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 1f67fea..38ce196 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.9.90</td>
+<td>1.10.0</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 6996ce4..9821775 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.9.90</td>
+<td>1.10.0</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 8cabf2d..dac314e 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.9.90</td>
+<td>1.10.0</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 d84cb19..bf29bb3 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.9.90</td>
+<td>1.10.0</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 59a810e..25245a8 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.9.90</td>
+<td>1.10.0</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 85ef7f7..e749b7e 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.9.90</td>
+<td>1.10.0</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 7f463ac..49dfd00 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.9.90</td>
+<td>1.10.0</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 3572a65..2bb3bf0 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.9.90</td>
+<td>1.10.0</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 8d151bb..57ade2f 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.9.90</td>
+<td>1.10.0</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 bb31ef9..13dbb34 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.9.90</td>
+<td>1.10.0</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 74fbc54..1891393 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.9.90</td>
+<td>1.10.0</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 984f82d..9ad398c 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.9.90</td>
+<td>1.10.0</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 5f6f4a5..5dd8395 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.9.90</td>
+<td>1.10.0</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 b9847f3..3358a9a 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.9.90</td>
+<td>1.10.0</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 4545d25..17ce1f3 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.9.90</td>
+<td>1.10.0</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 a84b51f..2c318b6 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.9.90</td>
+<td>1.10.0</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 d377d30..0119777 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.9.90</td>
+<td>1.10.0</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 9eba158..3e12c16 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.9.90</td>
+<td>1.10.0</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 5d2d065..567961a 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.9.90</td>
+<td>1.10.0</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 6a75b69..9f01326 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.9.90</td>
+<td>1.10.0</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 90334b9..e4fa2e9 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.9.90</td>
+<td>1.10.0</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 10c54cd..f57f5f0 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.9.90</td>
+<td>1.10.0</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 3eb3bab..60527cf 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.9.90</td>
+<td>1.10.0</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 0d88404..f0a5ef7 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.9.90</td>
+<td>1.10.0</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 b5697cc..beb8d08 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.9.90</td>
+<td>1.10.0</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 aff4d69..cd19332 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.9.90</td>
+<td>1.10.0</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 167c51c..d105502 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.9.90</td>
+<td>1.10.0</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 c501025..5c2223d 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.9.90</td>
+<td>1.10.0</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 6e91ece..f5c2229 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.9.90</td>
+<td>1.10.0</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 8274a3e..1c5436e 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.9.90</td>
+<td>1.10.0</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 0075c4f..a1c905a 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.9.90</td>
+<td>1.10.0</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 e6a49c2..fb56684 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.9.90</td>
+<td>1.10.0</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 e091adb..1126f7a 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.9.90</td>
+<td>1.10.0</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 0aec980..d46bd73 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.9.90</td>
+<td>1.10.0</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 dc60652..256d8bb 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.9.90</td>
+<td>1.10.0</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 19872a1..815aed3 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.9.90</td>
+<td>1.10.0</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 fe27fe4..c2e0ac7 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.9.90</td>
+<td>1.10.0</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 460266c..72c8a8b 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.9.90</td>
+<td>1.10.0</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 34d572f..dcffbbf 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.9.90</td>
+<td>1.10.0</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 d44df4f..f8afaca 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.9.90</td>
+<td>1.10.0</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 5969499..0ef1aa0 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.9.90</td>
+<td>1.10.0</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 f32fcef..47fb048 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.9.90</td>
+<td>1.10.0</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 5481ed5..1cb201c 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.9.90</td>
+<td>1.10.0</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 f534f92..1bf57bd 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.9.90</td>
+<td>1.10.0</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 b86ca50..15e83be 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.9.90</td>
+<td>1.10.0</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 c73e404..7d6309f 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.9.90</td>
+<td>1.10.0</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 b6767bc..e1289d5 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.9.90</td>
+<td>1.10.0</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 d7e7090..f93666a 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.9.90</td>
+<td>1.10.0</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 41520c5..bd6a167 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.9.90</td>
+<td>1.10.0</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 c0c178a..3fc196f 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.9.90</td>
+<td>1.10.0</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 a98319b..b5add82 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.9.90</td>
+<td>1.10.0</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 cd6cf63..20c8888 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.9.90</td>
+<td>1.10.0</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 38512a0..4c26aeb 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.9.90</td>
+<td>1.10.0</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 f60486b..3ea1792 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-plugin-y4menc.html
@@ -41,7 +41,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.9.90</td>
+<td>1.10.0</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpbin.html b/docs/plugins/html/gst-plugins-good-plugins-rtpbin.html
index 842020c..0832545 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpbin.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpbin.html
@@ -71,7 +71,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="/usr/share/gtk-doc/html/gst-plugins-good-plugins-1.0gst-plugins-good-plugins-rtpbin.html#RTPJitterBufferMode"><span class="type">RTPJitterBufferMode</span></a></td>
+<td class="property_type"><span class="type">RTPJitterBufferMode</span></td>
 <td class="property_name"><a class="link" href="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--buffer-mode" title="The “buffer-mode” property">buffer-mode</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -86,7 +86,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="/usr/share/gtk-doc/html/gst-plugins-good-plugins-1.0gst-plugins-good-plugins-rtpbin.html#GstRTCPSync"><span class="type">GstRTCPSync</span></a></td>
+<td class="property_type"><span class="type">GstRTCPSync</span></td>
 <td class="property_name"><a class="link" href="gst-plugins-good-plugins-rtpbin.html#GstRtpBin--rtcp-sync" title="The “rtcp-sync” property">rtcp-sync</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -721,7 +721,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstRtpBin--buffer-mode"></a><h3>The <code class="literal">“buffer-mode”</code> property</h3>
-<pre class="programlisting">  “buffer-mode”              <a href="/usr/share/gtk-doc/html/gst-plugins-good-plugins-1.0gst-plugins-good-plugins-rtpbin.html#RTPJitterBufferMode"><span class="type">RTPJitterBufferMode</span></a></pre>
+<pre class="programlisting">  “buffer-mode”              <span class="type">RTPJitterBufferMode</span></pre>
 <p>Control the buffering and timestamping mode used by the jitterbuffer.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: Slave receiver to sender clock</p>
@@ -749,7 +749,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstRtpBin--rtcp-sync"></a><h3>The <code class="literal">“rtcp-sync”</code> property</h3>
-<pre class="programlisting">  “rtcp-sync”                <a href="/usr/share/gtk-doc/html/gst-plugins-good-plugins-1.0gst-plugins-good-plugins-rtpbin.html#GstRTCPSync"><span class="type">GstRTCPSync</span></a></pre>
+<pre class="programlisting">  “rtcp-sync”                <span class="type">GstRTCPSync</span></pre>
 <p>If not synchronizing (directly) to the NTP clock, determines how to sync
 the various streams.</p>
 <p>Flags: Read / Write</p>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtpjitterbuffer.html b/docs/plugins/html/gst-plugins-good-plugins-rtpjitterbuffer.html
index 4715d49..374b520 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtpjitterbuffer.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtpjitterbuffer.html
@@ -64,7 +64,7 @@
 <td class="property_flags">Read / Write</td>
 </tr>
 <tr>
-<td class="property_type"><a href="/usr/share/gtk-doc/html/gst-plugins-good-plugins-1.0gst-plugins-good-plugins-rtpbin.html#RTPJitterBufferMode"><span class="type">RTPJitterBufferMode</span></a></td>
+<td class="property_type"><span class="type">RTPJitterBufferMode</span></td>
 <td class="property_name"><a class="link" href="gst-plugins-good-plugins-rtpjitterbuffer.html#GstRtpJitterBuffer--mode" title="The “mode” property">mode</a></td>
 <td class="property_flags">Read / Write</td>
 </tr>
@@ -439,7 +439,7 @@
 <hr>
 <div class="refsect2">
 <a name="GstRtpJitterBuffer--mode"></a><h3>The <code class="literal">“mode”</code> property</h3>
-<pre class="programlisting">  “mode”                     <a href="/usr/share/gtk-doc/html/gst-plugins-good-plugins-1.0gst-plugins-good-plugins-rtpbin.html#RTPJitterBufferMode"><span class="type">RTPJitterBufferMode</span></a></pre>
+<pre class="programlisting">  “mode”                     <span class="type">RTPJitterBufferMode</span></pre>
 <p>Control the buffering and timestamping mode used by the jitterbuffer.</p>
 <p>Flags: Read / Write</p>
 <p>Default value: Slave receiver to sender clock</p>
diff --git a/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html b/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html
index 2da55e3..ad66c13 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-rtspsrc.html
@@ -693,7 +693,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.9.90"</p>
+<p>Default value: "GStreamer/1.10.0"</p>
 </div>
 <hr>
 <div class="refsect2">
diff --git a/docs/plugins/html/gst-plugins-good-plugins-videoflip.html b/docs/plugins/html/gst-plugins-good-plugins-videoflip.html
index 69272b4..61fe0b8 100644
--- a/docs/plugins/html/gst-plugins-good-plugins-videoflip.html
+++ b/docs/plugins/html/gst-plugins-good-plugins-videoflip.html
@@ -83,7 +83,7 @@
 <a name="gst-plugins-good-plugins-videoflip.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
 <p>
 GstVideoFlip implements
- GstVideoDirection.</p>
+ <a href="/usr/share/gtk-doc/html/gst-plugins-base-libs-1.0gst-plugins-base-libs-gstvideodirection.html#GstVideoDirection-struct">GstVideoDirection</a>.</p>
 </div>
 <div class="refsect1">
 <a name="gst-plugins-good-plugins-videoflip.description"></a><h2>Description</h2>
diff --git a/docs/plugins/html/home.png b/docs/plugins/html/home.png
index 4bf6d92..884ce1d 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 768fffc..d9934a6 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.9.90)
+      for GStreamer Good Plugins 1.0 (1.10.0)
       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 82cba0a..148fbff 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 8444ec0..efdeee7 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 7a90b99..ba481f5 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 55f3359..2e537ba 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 fdb8cc7..9317461 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 c1aad52..5ecf9ab 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 a38faa6..80efe03 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.9.90</version>
+  <version>1.10.0</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 61d8f92..19a9d5b 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.9.90</version>
+  <version>1.10.0</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 5ec03d2..027d630 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.9.90</version>
+  <version>1.10.0</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 c87b6c1..0371709 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.9.90</version>
+  <version>1.10.0</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 9ef2c4d..c4fa4bb 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.9.90</version>
+  <version>1.10.0</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 8d8e548..9f1e597 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.9.90</version>
+  <version>1.10.0</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 8781087..7d229d0 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.9.90</version>
+  <version>1.10.0</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 76c14c7..f187977 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.9.90</version>
+  <version>1.10.0</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 e6cd5fc..aaa3f20 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.9.90</version>
+  <version>1.10.0</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 79b1a68..7ca31f9 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.9.90</version>
+  <version>1.10.0</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 56b1906..2c3f917 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.9.90</version>
+  <version>1.10.0</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 1a0f4b1..7d32d0f 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.9.90</version>
+  <version>1.10.0</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 82a0457..bfb736f 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.9.90</version>
+  <version>1.10.0</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 009b669..668b19f 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.9.90</version>
+  <version>1.10.0</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 a2a7949..9277425 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.9.90</version>
+  <version>1.10.0</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 994233c..cc60d8d 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.9.90</version>
+  <version>1.10.0</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 0c06891..452e6f2 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.9.90</version>
+  <version>1.10.0</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 bea3572..8efd949 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.9.90</version>
+  <version>1.10.0</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 bb6b4ac..696b70f 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.9.90</version>
+  <version>1.10.0</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 eae17d6..d0c98cf 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.9.90</version>
+  <version>1.10.0</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 29c96e7..96b563f 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.9.90</version>
+  <version>1.10.0</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 f7c51b1..bfa65b4 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.9.90</version>
+  <version>1.10.0</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 30dade7..9b766c6 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.9.90</version>
+  <version>1.10.0</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 aa42b71..4d61dec 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.9.90</version>
+  <version>1.10.0</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 c1e16df..58db8d4 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.9.90</version>
+  <version>1.10.0</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 fce07e1..71556cd 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.9.90</version>
+  <version>1.10.0</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 83a2913..2d5136f 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.9.90</version>
+  <version>1.10.0</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 eac3219..ee46bba 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.9.90</version>
+  <version>1.10.0</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 df78953..ae84b50 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.9.90</version>
+  <version>1.10.0</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 5b22c3c..b577138 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.9.90</version>
+  <version>1.10.0</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 98514e0..a8d3544 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.9.90</version>
+  <version>1.10.0</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 0a53c5c..ae563e6 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.9.90</version>
+  <version>1.10.0</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 bd14077..3c0322e 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.9.90</version>
+  <version>1.10.0</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 98b93ef..cb4b72b 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.9.90</version>
+  <version>1.10.0</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 dacc7c3..c62bc42 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.9.90</version>
+  <version>1.10.0</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
@@ -65,7 +65,7 @@
           <name>video_%u</name>
           <direction>sink</direction>
           <presence>request</presence>
-          <details>video/mpeg, mpegversion=(int){ 1, 2, 4 }, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h265, stream-format=(string)hvc1, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-divx, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-huffyuv, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-dv, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h263, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-msmpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-theora; video/x-dirac, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-pn-realvideo, rmversion=(int)[ 1, 4 ], width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-vp8, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-vp9, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-raw, format=(string){ YUY2, I420, YV12, UYVY, AYUV, GRAY8, BGR, RGB }, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-prores, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-wmv, wmvversion=(int)[ 1, 3 ], width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</details>
+          <details>video/mpeg, mpegversion=(int){ 1, 2, 4 }, systemstream=(boolean)false, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h265, stream-format=(string)hvc1, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-divx, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-huffyuv, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-dv, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h263, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-msmpeg, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; image/jpeg, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-theora; video/x-dirac, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-pn-realvideo, rmversion=(int)[ 1, 4 ], width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-vp8, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-vp9, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-raw, format=(string){ YUY2, I420, YV12, UYVY, AYUV, GRAY8, BGR, RGB }, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-prores, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-wmv, wmvversion=(int)[ 1, 3 ], width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</details>
         </caps>
         <caps>
           <name>src</name>
diff --git a/docs/plugins/inspect/plugin-mulaw.xml b/docs/plugins/inspect/plugin-mulaw.xml
index 3061052..5812f6a 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.9.90</version>
+  <version>1.10.0</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 b9300d0..69dc6a1 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.9.90</version>
+  <version>1.10.0</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 c20ecb6..579cdac 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.9.90</version>
+  <version>1.10.0</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 e913106..2da433e 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.9.90</version>
+  <version>1.10.0</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 095ab09..5867f69 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.9.90</version>
+  <version>1.10.0</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 72ed2eb..09303d7 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.9.90</version>
+  <version>1.10.0</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 43eb33a..d5c1152 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.9.90</version>
+  <version>1.10.0</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 bf4e6c6..28f9ec3 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.9.90</version>
+  <version>1.10.0</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 3132a51..4e2fa91 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.9.90</version>
+  <version>1.10.0</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 5d927de..f9a892c 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.9.90</version>
+  <version>1.10.0</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 2e5ebdc..47346ee 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.9.90</version>
+  <version>1.10.0</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 36a579e..70c0787 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.9.90</version>
+  <version>1.10.0</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 aa1da72..721d489 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.9.90</version>
+  <version>1.10.0</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 fd9d379..1693371 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.9.90</version>
+  <version>1.10.0</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 4deda2b..0b9e3ba 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.9.90</version>
+  <version>1.10.0</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 04e5b2e..2c9916b 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.9.90</version>
+  <version>1.10.0</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 c6cf452..e69d83e 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.9.90</version>
+  <version>1.10.0</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 d3d2351..c60b331 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.9.90</version>
+  <version>1.10.0</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 3182912..f5512ae 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.9.90</version>
+  <version>1.10.0</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 8294a2a..abb6fb0 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.9.90</version>
+  <version>1.10.0</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 2c3af4d..dcbb89d 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.9.90</version>
+  <version>1.10.0</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 9513d24..00a83eb 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.9.90</version>
+  <version>1.10.0</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 35d6f4f..d3c9e2e 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.9.90</version>
+  <version>1.10.0</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 d0fb64d..65a051e 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.9.90</version>
+  <version>1.10.0</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 937eca6..a008a85 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.9.90</version>
+  <version>1.10.0</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 d1e4b0e..affec4f 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.9.90</version>
+  <version>1.10.0</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 83941e0..a4b5095 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.9.90</version>
+  <version>1.10.0</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 28f3ce3..04f39ca 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.9.90</version>
+  <version>1.10.0</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 54e03e5..9eb5331 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.9.90</version>
+  <version>1.10.0</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 dd1f1fc..223679e 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.9.90</version>
+  <version>1.10.0</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 d050e09..6ef9724 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.9.90</version>
+  <version>1.10.0</version>
   <license>LGPL</license>
   <source>gst-plugins-good</source>
   <package>GStreamer Good Plug-ins source release</package>
diff --git a/ext/soup/gstsouphttpsrc.c b/ext/soup/gstsouphttpsrc.c
index aef64d3..ce93be8 100644
--- a/ext/soup/gstsouphttpsrc.c
+++ b/ext/soup/gstsouphttpsrc.c
@@ -77,7 +77,6 @@
 #endif
 #include <gst/gstelement.h>
 #include <gst/gst-i18n-plugin.h>
-#include <gio/gio.h>
 #include <libsoup/soup.h>
 #include "gstsouphttpsrc.h"
 #include "gstsouputils.h"
@@ -183,7 +182,6 @@
 static void gst_soup_http_src_authenticate_cb (SoupSession * session,
     SoupMessage * msg, SoupAuth * auth, gboolean retrying,
     GstSoupHTTPSrc * src);
-static void gst_soup_http_src_destroy_input_stream (GstSoupHTTPSrc * src);
 
 #define gst_soup_http_src_parent_class parent_class
 G_DEFINE_TYPE_WITH_CODE (GstSoupHTTPSrc, gst_soup_http_src, GST_TYPE_PUSH_SRC,
@@ -451,7 +449,10 @@
 
   src->ret = GST_FLOW_OK;
   g_cancellable_reset (src->cancellable);
-  gst_soup_http_src_destroy_input_stream (src);
+  if (src->input_stream) {
+    g_object_unref (src->input_stream);
+    src->input_stream = NULL;
+  }
 
   gst_caps_replace (&src->src_caps, NULL);
   g_free (src->iradio_name);
@@ -470,7 +471,6 @@
   g_mutex_init (&src->mutex);
   g_cond_init (&src->have_headers_cond);
   src->cancellable = g_cancellable_new ();
-  src->poll_context = g_main_context_new ();
   src->location = NULL;
   src->redirection_uri = NULL;
   src->automatic_redirect = TRUE;
@@ -526,7 +526,6 @@
   g_mutex_clear (&src->mutex);
   g_cond_clear (&src->have_headers_cond);
   g_object_unref (src->cancellable);
-  g_main_context_unref (src->poll_context);
   g_free (src->location);
   g_free (src->redirection_uri);
   g_free (src->user_agent);
@@ -777,21 +776,6 @@
 }
 
 static void
-gst_soup_http_src_destroy_input_stream (GstSoupHTTPSrc * src)
-{
-  if (src->input_stream) {
-    if (src->poll_source) {
-      g_source_destroy (src->poll_source);
-      g_source_unref (src->poll_source);
-      src->poll_source = NULL;
-    }
-    g_input_stream_close (src->input_stream, src->cancellable, NULL);
-    g_object_unref (src->input_stream);
-    src->input_stream = NULL;
-  }
-}
-
-static void
 gst_soup_http_src_cancel_message (GstSoupHTTPSrc * src)
 {
   g_cancellable_cancel (src->cancellable);
@@ -1401,25 +1385,11 @@
   return TRUE;
 }
 
-static void
-gst_soup_http_src_check_input_stream_interfaces (GstSoupHTTPSrc * src)
-{
-  if (!src->input_stream)
-    return;
-
-  src->has_pollable_interface = G_IS_POLLABLE_INPUT_STREAM (src->input_stream)
-      && g_pollable_input_stream_can_poll ((GPollableInputStream *)
-      src->input_stream);
-}
-
 static GstFlowReturn
 gst_soup_http_src_send_message (GstSoupHTTPSrc * src)
 {
   g_return_val_if_fail (src->msg != NULL, GST_FLOW_ERROR);
 
-  g_assert (src->input_stream == NULL);
-  g_assert (src->poll_source == NULL);
-
   /* FIXME We are ignoring the GError here, might be useful to debug */
   src->input_stream =
       soup_session_send (src->session, src->msg, src->cancellable, NULL);
@@ -1444,8 +1414,6 @@
     return GST_FLOW_ERROR;
   }
 
-  gst_soup_http_src_check_input_stream_interfaces (src);
-
   return GST_FLOW_OK;
 }
 
@@ -1554,38 +1522,6 @@
   }
 }
 
-static gboolean
-_gst_soup_http_src_data_available_callback (GObject * pollable_stream,
-    gpointer udata)
-{
-  GstSoupHTTPSrc *src = udata;
-
-  src->have_data = TRUE;
-  return TRUE;
-}
-
-/* Need to wait on a gsource to know when data is available */
-static gboolean
-gst_soup_http_src_wait_for_data (GstSoupHTTPSrc * src)
-{
-  src->have_data = FALSE;
-
-  if (!src->poll_source) {
-    src->poll_source =
-        g_pollable_input_stream_create_source ((GPollableInputStream *)
-        src->input_stream, src->cancellable);
-    g_source_set_callback (src->poll_source,
-        (GSourceFunc) _gst_soup_http_src_data_available_callback, src, NULL);
-    g_source_attach (src->poll_source, src->poll_context);
-  }
-
-  while (!src->have_data && !g_cancellable_is_cancelled (src->cancellable)) {
-    g_main_context_iteration (src->poll_context, TRUE);
-  }
-
-  return src->have_data;
-}
-
 static GstFlowReturn
 gst_soup_http_src_read_buffer (GstSoupHTTPSrc * src, GstBuffer ** outbuf)
 {
@@ -1593,7 +1529,6 @@
   GstMapInfo mapinfo;
   GstBaseSrc *bsrc;
   GstFlowReturn ret;
-  GError *err = NULL;
 
   bsrc = GST_BASE_SRC_CAST (src);
 
@@ -1608,34 +1543,9 @@
     return GST_FLOW_ERROR;
   }
 
-  if (src->has_pollable_interface) {
-    while (1) {
-      read_bytes =
-          g_pollable_input_stream_read_nonblocking ((GPollableInputStream *)
-          src->input_stream, mapinfo.data, mapinfo.size, src->cancellable,
-          &err);
-      if (read_bytes == -1) {
-        if (err && g_error_matches (err, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK)) {
-          g_error_free (err);
-          err = NULL;
-
-          /* no data yet, wait */
-          if (gst_soup_http_src_wait_for_data (src))
-            /* retry */
-            continue;
-        }
-      }
-      break;
-    }
-  } else {
-    read_bytes =
-        g_input_stream_read (src->input_stream, mapinfo.data, mapinfo.size,
-        src->cancellable, NULL);
-  }
-
-  if (err)
-    g_error_free (err);
-
+  read_bytes =
+      g_input_stream_read (src->input_stream, mapinfo.data, mapinfo.size,
+      src->cancellable, NULL);
   GST_DEBUG_OBJECT (src, "Read %" G_GSSIZE_FORMAT " bytes from http input",
       read_bytes);
 
@@ -1710,7 +1620,11 @@
 
   /* Check for pending position change */
   if (src->request_position != src->read_position) {
-    gst_soup_http_src_destroy_input_stream (src);
+    if (src->input_stream) {
+      g_input_stream_close (src->input_stream, src->cancellable, NULL);
+      g_object_unref (src->input_stream);
+      src->input_stream = NULL;
+    }
   }
 
   if (g_cancellable_is_cancelled (src->cancellable)) {
@@ -1747,7 +1661,10 @@
       gst_event_unref (http_headers_event);
 
     g_mutex_lock (&src->mutex);
-    gst_soup_http_src_destroy_input_stream (src);
+    if (src->input_stream) {
+      g_object_unref (src->input_stream);
+      src->input_stream = NULL;
+    }
     g_mutex_unlock (&src->mutex);
     if (ret == GST_FLOW_CUSTOM_ERROR)
       goto retry;
diff --git a/ext/soup/gstsouphttpsrc.h b/ext/soup/gstsouphttpsrc.h
index 2629cb1..dd01656 100644
--- a/ext/soup/gstsouphttpsrc.h
+++ b/ext/soup/gstsouphttpsrc.h
@@ -89,10 +89,6 @@
 
   GCancellable *cancellable;
   GInputStream *input_stream;
-  gboolean has_pollable_interface;
-  gboolean have_data;
-  GMainContext *poll_context;
-  GSource *poll_source;
 
   gint reduce_blocksize_count;
   gint increase_blocksize_count;
diff --git a/gst-plugins-good.doap b/gst-plugins-good.doap
index a5fb63c..c4d5b57 100644
--- a/gst-plugins-good.doap
+++ b/gst-plugins-good.doap
@@ -34,6 +34,16 @@
 
  <release>
   <Version>
+   <revision>1.10.0</revision>
+   <branch>master</branch>
+   <name></name>
+   <created>2016-11-01</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.10.0.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
    <revision>1.9.90</revision>
    <branch>master</branch>
    <name></name>
diff --git a/gst-plugins-good.spec b/gst-plugins-good.spec
index cf7f597..44dda7a 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.9.90
+Version: 	1.10.0
 Release: 	1.gst
 Summary: 	GStreamer plug-ins with good code and licensing
 
diff --git a/gst/flv/gstflvmux.c b/gst/flv/gstflvmux.c
index 2080a3c..fec8f93 100644
--- a/gst/flv/gstflvmux.c
+++ b/gst/flv/gstflvmux.c
@@ -152,6 +152,20 @@
   *buffer = _gst_buffer_new_wrapped (*data, size, g_free);
 }
 
+static GstFlowReturn
+gst_flv_mux_clip_running_time (GstCollectPads * pads,
+    GstCollectData * cdata, GstBuffer * buf, GstBuffer ** outbuf,
+    gpointer user_data)
+{
+  buf = gst_buffer_make_writable (buf);
+
+  if (!GST_CLOCK_TIME_IS_VALID (GST_BUFFER_PTS (buf)))
+    GST_BUFFER_PTS (buf) = GST_BUFFER_DTS (buf);
+
+  return gst_collect_pads_clip_running_time (pads, cdata, buf, outbuf,
+      user_data);
+}
+
 static void
 gst_flv_mux_class_init (GstFlvMuxClass * klass)
 {
@@ -217,7 +231,7 @@
   gst_collect_pads_set_event_function (mux->collect,
       GST_DEBUG_FUNCPTR (gst_flv_mux_handle_sink_event), mux);
   gst_collect_pads_set_clip_function (mux->collect,
-      GST_DEBUG_FUNCPTR (gst_collect_pads_clip_running_time), mux);
+      GST_DEBUG_FUNCPTR (gst_flv_mux_clip_running_time), mux);
 
   gst_flv_mux_reset (GST_ELEMENT (mux));
 }
diff --git a/gst/imagefreeze/gstimagefreeze.c b/gst/imagefreeze/gstimagefreeze.c
index f122645..b331bff 100644
--- a/gst/imagefreeze/gstimagefreeze.c
+++ b/gst/imagefreeze/gstimagefreeze.c
@@ -491,6 +491,13 @@
       ret = TRUE;
       break;
     }
+    case GST_QUERY_LATENCY:
+      /* This will only return an accurate latency for the first buffer since
+       * all further buffers outputted by us are just copies of that one, and
+       * the latency is 0 in that case. However, latency changes are not
+       * straightforward, so let's do the conservative fix for now. */
+      ret = gst_pad_query_default (pad, parent, query);
+      break;
     default:
       ret = FALSE;
       break;
diff --git a/gst/matroska/matroska-mux.c b/gst/matroska/matroska-mux.c
index f77bd49..731612e 100644
--- a/gst/matroska/matroska-mux.c
+++ b/gst/matroska/matroska-mux.c
@@ -89,8 +89,8 @@
     );
 
 #define COMMON_VIDEO_CAPS \
-  "width = (int) [ 16, 4096 ], " \
-  "height = (int) [ 16, 4096 ] "
+  "width = (int) [ 16, MAX ], " \
+  "height = (int) [ 16, MAX ] "
 
 /* FIXME:
  * * require codec data, etc as needed
diff --git a/gst/multifile/gstsplitmuxpartreader.c b/gst/multifile/gstsplitmuxpartreader.c
index 5e98166..1753b37 100644
--- a/gst/multifile/gstsplitmuxpartreader.c
+++ b/gst/multifile/gstsplitmuxpartreader.c
@@ -994,7 +994,6 @@
     return FALSE;
 
   ret = gst_pad_peer_query (target, query);
-  gst_object_unref (GST_OBJECT_CAST (target));
 
   if (ret == FALSE)
     goto out;
@@ -1185,6 +1184,18 @@
   return TRUE;
 }
 
+gboolean
+gst_splitmux_part_reader_is_active (GstSplitMuxPartReader * part)
+{
+  gboolean ret;
+
+  SPLITMUX_PART_LOCK (part);
+  ret = part->active;
+  SPLITMUX_PART_UNLOCK (part);
+
+  return ret;
+}
+
 void
 gst_splitmux_part_reader_deactivate (GstSplitMuxPartReader * reader)
 {
diff --git a/gst/multifile/gstsplitmuxpartreader.h b/gst/multifile/gstsplitmuxpartreader.h
index 593d8ae..95d920f 100644
--- a/gst/multifile/gstsplitmuxpartreader.h
+++ b/gst/multifile/gstsplitmuxpartreader.h
@@ -103,6 +103,7 @@
 
 gboolean gst_splitmux_part_reader_activate (GstSplitMuxPartReader *part, GstSegment *seg);
 void gst_splitmux_part_reader_deactivate (GstSplitMuxPartReader *part);
+gboolean gst_splitmux_part_reader_is_active (GstSplitMuxPartReader *part);
 
 gboolean gst_splitmux_part_reader_src_query (GstSplitMuxPartReader *part, GstPad *src_pad, GstQuery * query);
 void gst_splitmux_part_reader_set_start_offset (GstSplitMuxPartReader *part, GstClockTime offset);
diff --git a/gst/multifile/gstsplitmuxsink.c b/gst/multifile/gstsplitmuxsink.c
index 585b1ff..12b2cac 100644
--- a/gst/multifile/gstsplitmuxsink.c
+++ b/gst/multifile/gstsplitmuxsink.c
@@ -264,12 +264,21 @@
 static void
 gst_splitmux_reset (GstSplitMuxSink * splitmux)
 {
-  if (splitmux->mq)
+  if (splitmux->mq) {
+    gst_element_set_locked_state (splitmux->mq, TRUE);
+    gst_element_set_state (splitmux->mq, GST_STATE_NULL);
     gst_bin_remove (GST_BIN (splitmux), splitmux->mq);
-  if (splitmux->muxer)
+  }
+  if (splitmux->muxer) {
+    gst_element_set_locked_state (splitmux->muxer, TRUE);
+    gst_element_set_state (splitmux->muxer, GST_STATE_NULL);
     gst_bin_remove (GST_BIN (splitmux), splitmux->muxer);
-  if (splitmux->active_sink)
+  }
+  if (splitmux->active_sink) {
+    gst_element_set_locked_state (splitmux->active_sink, TRUE);
+    gst_element_set_state (splitmux->active_sink, GST_STATE_NULL);
     gst_bin_remove (GST_BIN (splitmux), splitmux->active_sink);
+  }
 
   splitmux->sink = splitmux->active_sink = splitmux->muxer = splitmux->mq =
       NULL;
@@ -350,14 +359,16 @@
       GST_OBJECT_LOCK (splitmux);
       if (splitmux->provided_sink)
         gst_object_unref (splitmux->provided_sink);
-      splitmux->provided_sink = g_value_dup_object (value);
+      splitmux->provided_sink = g_value_get_object (value);
+      gst_object_ref_sink (splitmux->provided_sink);
       GST_OBJECT_UNLOCK (splitmux);
       break;
     case PROP_MUXER:
       GST_OBJECT_LOCK (splitmux);
       if (splitmux->provided_muxer)
         gst_object_unref (splitmux->provided_muxer);
-      splitmux->provided_muxer = g_value_dup_object (value);
+      splitmux->provided_muxer = g_value_get_object (value);
+      gst_object_ref_sink (splitmux->provided_muxer);
       GST_OBJECT_UNLOCK (splitmux);
       break;
     default:
@@ -1360,6 +1371,9 @@
 
   if (templ->name_template) {
     if (g_str_equal (templ->name_template, "video")) {
+      if (splitmux->have_video)
+        goto already_have_video;
+
       /* FIXME: Look for a pad template with matching caps, rather than by name */
       mux_template =
           gst_element_class_get_pad_template (GST_ELEMENT_GET_CLASS
@@ -1424,7 +1438,7 @@
     ctx->is_reference = TRUE;
   }
 
-  res = gst_ghost_pad_new (gname, mq_sink);
+  res = gst_ghost_pad_new_from_template (gname, mq_sink, templ);
   g_object_set_qdata ((GObject *) (res), PAD_CONTEXT, ctx);
 
   mq_stream_ctx_ref (ctx);
@@ -1443,14 +1457,22 @@
   gst_object_unref (mq_sink);
   gst_object_unref (mq_src);
 
+  if (is_video)
+    splitmux->have_video = TRUE;
+
   gst_pad_set_active (res, TRUE);
   gst_element_add_pad (element, res);
+
   GST_SPLITMUX_UNLOCK (splitmux);
 
   return res;
 fail:
   GST_SPLITMUX_UNLOCK (splitmux);
   return NULL;
+already_have_video:
+  GST_DEBUG_OBJECT (splitmux, "video sink pad already requested");
+  GST_SPLITMUX_UNLOCK (splitmux);
+  return NULL;
 }
 
 static void
@@ -1483,6 +1505,8 @@
 
   /* Can release the context now */
   mq_stream_ctx_unref (ctx);
+  if (ctx == splitmux->reference_ctx)
+    splitmux->reference_ctx = NULL;
 
   /* Release and free the mq input */
   gst_element_release_request_pad (splitmux->mq, mqsink);
@@ -1494,6 +1518,11 @@
   gst_object_unref (mqsrc);
   gst_object_unref (muxpad);
 
+  if (GST_PAD_PAD_TEMPLATE (pad) &&
+      g_str_equal (GST_PAD_TEMPLATE_NAME_TEMPLATE (GST_PAD_PAD_TEMPLATE (pad)),
+          "video"))
+    splitmux->have_video = FALSE;
+
   gst_element_remove_pad (element, pad);
 
   /* Reset the internal elements only after all request pads are released */
@@ -1551,6 +1580,8 @@
               create_element (splitmux, "mp4mux", "muxer")) == NULL)
         goto fail;
     } else {
+      /* Ensure it's not in locked state (we might be reusing an old element) */
+      gst_element_set_locked_state (provided_muxer, FALSE);
       if (!gst_bin_add (GST_BIN (splitmux), provided_muxer)) {
         g_warning ("Could not add muxer element - splitmuxsink will not work");
         gst_object_unref (provided_muxer);
@@ -1627,6 +1658,8 @@
         goto fail;
       splitmux->active_sink = splitmux->sink;
     } else {
+      /* Ensure it's not in locked state (we might be reusing an old element) */
+      gst_element_set_locked_state (provided_sink, FALSE);
       if (!gst_bin_add (GST_BIN (splitmux), provided_sink)) {
         g_warning ("Could not add sink elements - splitmuxsink will not work");
         gst_object_unref (provided_sink);
diff --git a/gst/multifile/gstsplitmuxsink.h b/gst/multifile/gstsplitmuxsink.h
index aeda8a5..fe832a5 100644
--- a/gst/multifile/gstsplitmuxsink.h
+++ b/gst/multifile/gstsplitmuxsink.h
@@ -129,6 +129,8 @@
 
   gboolean opening_first_fragment;
   gboolean switching_fragment;
+
+  gboolean have_video;
 };
 
 struct _GstSplitMuxSinkClass {
diff --git a/gst/multifile/gstsplitmuxsrc.c b/gst/multifile/gstsplitmuxsrc.c
index b710ca6..209d29f 100644
--- a/gst/multifile/gstsplitmuxsrc.c
+++ b/gst/multifile/gstsplitmuxsrc.c
@@ -750,12 +750,14 @@
   splitmux->pads = NULL;
   SPLITMUX_SRC_PADS_UNLOCK (splitmux);
 
+  SPLITMUX_SRC_UNLOCK (splitmux);
   for (cur = g_list_first (pads_list); cur != NULL; cur = g_list_next (cur)) {
     SplitMuxSrcPad *tmp = (SplitMuxSrcPad *) (cur->data);
     gst_pad_stop_task (GST_PAD (tmp));
     gst_element_remove_pad (GST_ELEMENT (splitmux), GST_PAD (tmp));
   }
   g_list_free (pads_list);
+  SPLITMUX_SRC_LOCK (splitmux);
 
   g_free (splitmux->parts);
   splitmux->parts = NULL;
@@ -943,6 +945,28 @@
   if (gst_splitmux_part_is_eos (splitmux->parts[splitpad->cur_part]))
     gst_splitmux_part_reader_deactivate (splitmux->parts[cur_part]);
 
+  if (splitmux->play_segment.rate >= 0.0) {
+    if (splitmux->play_segment.stop != -1) {
+      GstClockTime part_end =
+          gst_splitmux_part_reader_get_end_offset (splitmux->parts[cur_part]);
+      if (part_end >= splitmux->play_segment.stop) {
+        GST_DEBUG_OBJECT (splitmux,
+            "Stop position was within that part. Finishing");
+        next_part = -1;
+      }
+    }
+  } else {
+    if (splitmux->play_segment.start != -1) {
+      GstClockTime part_start =
+          gst_splitmux_part_reader_get_start_offset (splitmux->parts[cur_part]);
+      if (part_start >= splitmux->play_segment.start) {
+        GST_DEBUG_OBJECT (splitmux,
+            "Start position was within that part. Finishing");
+        next_part = -1;
+      }
+    }
+  }
+
   if (next_part != -1) {
     GST_DEBUG_OBJECT (splitmux, "At EOS on pad %" GST_PTR_FORMAT
         " moving to part %d", splitpad, next_part);
@@ -955,21 +979,23 @@
         (GstPad *) (splitpad));
 
     if (splitmux->cur_part != next_part) {
-      GstSegment tmp;
-      /* If moving backward into a new part, set stop
-       * to -1 to ensure we play the entire file - workaround
-       * a bug in qtdemux that misses bits at the end */
-      gst_segment_copy_into (&splitmux->play_segment, &tmp);
-      if (tmp.rate < 0)
-        tmp.stop = -1;
+      if (!gst_splitmux_part_reader_is_active (splitpad->reader)) {
+        GstSegment tmp;
+        /* If moving backward into a new part, set stop
+         * to -1 to ensure we play the entire file - workaround
+         * a bug in qtdemux that misses bits at the end */
+        gst_segment_copy_into (&splitmux->play_segment, &tmp);
+        if (tmp.rate < 0)
+          tmp.stop = -1;
 
-      /* This is the first pad to move to the new part, activate it */
+        /* This is the first pad to move to the new part, activate it */
+        GST_DEBUG_OBJECT (splitpad,
+            "First pad to change part. Activating part %d with seg %"
+            GST_SEGMENT_FORMAT, next_part, &tmp);
+        if (!gst_splitmux_part_reader_activate (splitpad->reader, &tmp))
+          goto error;
+      }
       splitmux->cur_part = next_part;
-      GST_DEBUG_OBJECT (splitpad,
-          "First pad to change part. Activating part %d with seg %"
-          GST_SEGMENT_FORMAT, next_part, &tmp);
-      if (!gst_splitmux_part_reader_activate (splitpad->reader, &tmp))
-        goto error;
     }
     res = TRUE;
   }
diff --git a/gst/rtsp/gstrtspsrc.c b/gst/rtsp/gstrtspsrc.c
index 189adc2..7e942d0 100644
--- a/gst/rtsp/gstrtspsrc.c
+++ b/gst/rtsp/gstrtspsrc.c
@@ -4178,6 +4178,7 @@
     GST_DEBUG_OBJECT (src, "freeing connection...");
     gst_rtsp_connection_free (info->connection);
     info->connection = NULL;
+    info->flushing = FALSE;
   }
   GST_RTSP_STATE_UNLOCK (src);
   return GST_RTSP_OK;
diff --git a/gst/udp/gstudpsrc.c b/gst/udp/gstudpsrc.c
index d60a014..0f22a76 100644
--- a/gst/udp/gstudpsrc.c
+++ b/gst/udp/gstudpsrc.c
@@ -128,7 +128,7 @@
 
 /* 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
+#ifndef G_PLATFORM_WIN32
 #include <netinet/ip.h>
 #endif
 
@@ -157,7 +157,7 @@
   GSocketControlMessage parent;
 
   guint ifindex;
-#ifndef G_OS_WIN32
+#ifndef G_PLATFORM_WIN32
 #ifndef __NetBSD__
   struct in_addr spec_dst;
 #endif
@@ -203,7 +203,7 @@
 
   message = g_object_new (GST_TYPE_IP_PKTINFO_MESSAGE, NULL);
   message->ifindex = pktinfo->ipi_ifindex;
-#ifndef G_OS_WIN32
+#ifndef G_PLATFORM_WIN32
 #ifndef __NetBSD__
   message->spec_dst = pktinfo->ipi_spec_dst;
 #endif
diff --git a/gst/wavparse/gstwavparse.c b/gst/wavparse/gstwavparse.c
index 6650d18..49bc03c 100644
--- a/gst/wavparse/gstwavparse.c
+++ b/gst/wavparse/gstwavparse.c
@@ -2216,7 +2216,7 @@
         else if (wav->segment.rate < 0.0)
           wav->segment.position = wav->segment.start;
       }
-      if (wav->state == GST_WAVPARSE_START) {
+      if (wav->state == GST_WAVPARSE_START || !wav->caps) {
         GST_ELEMENT_ERROR (wav, STREAM, WRONG_TYPE, (NULL),
             ("No valid input found before end of stream"));
         gst_pad_push_event (wav->srcpad, gst_event_new_eos ());
@@ -2427,7 +2427,7 @@
       break;
     }
     case GST_EVENT_EOS:
-      if (wav->state == GST_WAVPARSE_START) {
+      if (wav->state == GST_WAVPARSE_START || !wav->caps) {
         GST_ELEMENT_ERROR (wav, STREAM, WRONG_TYPE, (NULL),
             ("No valid input found before end of stream"));
       } else {
diff --git a/po/af.gmo b/po/af.gmo
index 1282875..a64bb66 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index acb5b65..c8768f4 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 cfaa53c..16f75c6 100644
--- a/po/az.gmo
+++ b/po/az.gmo
Binary files differ
diff --git a/po/az.po b/po/az.po
index 877e300..eb8ab83 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 7fb39b9..579805e 100644
--- a/po/bg.gmo
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
index 66cd2b5..c178a65 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 9113e8c..ed9e980 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 65eb600..fc2e788 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 e9f611d..eff02bc 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index 454ac54..1728937 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 6c72f2e..67d2a30 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index df8e70a..d13eb38 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 f6d25c0..5de95c3 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index bd8a643..35265ab 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 9d033c2..935ae22 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/el.po b/po/el.po
index cf5f53f..ca410ff 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 4487c55..e104ac1 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 57df2ec..bdaa8d2 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 85bf32c..16f8ad8 100644
--- a/po/eo.gmo
+++ b/po/eo.gmo
Binary files differ
diff --git a/po/eo.po b/po/eo.po
index a2bc1ff..13dc879 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 a435580..93725e7 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index 96ec954..7a64b00 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 037886b..77b0641 100644
--- a/po/eu.gmo
+++ b/po/eu.gmo
Binary files differ
diff --git a/po/eu.po b/po/eu.po
index 0a8c118..ee56d9f 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 c3ef98a..a92f349 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index 8a2ddd9..0acd618 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 04becb6..fc2751a 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index 02d810e..d88aae5 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 e3f70f8..3752c8a 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gl.po b/po/gl.po
index b1ed6e5..2b4f4ab 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 bdbdc27..faa2bb7 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.9.90\n"
+"Project-Id-Version: gst-plugins-good 1.10.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2016-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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"
@@ -37,32 +37,32 @@
 msgid "Could not connect to server"
 msgstr ""
 
-#: ext/soup/gstsouphttpsrc.c:912
+#: ext/soup/gstsouphttpsrc.c:896
 msgid "No URL set."
 msgstr ""
 
-#: ext/soup/gstsouphttpsrc.c:1227
+#: ext/soup/gstsouphttpsrc.c:1211
 msgid "Server does not support seeking."
 msgstr ""
 
-#: ext/soup/gstsouphttpsrc.c:1281
+#: ext/soup/gstsouphttpsrc.c:1265
 msgid "Could not resolve server name."
 msgstr ""
 
-#: ext/soup/gstsouphttpsrc.c:1287
+#: ext/soup/gstsouphttpsrc.c:1271
 msgid "Could not establish connection to server."
 msgstr ""
 
-#: ext/soup/gstsouphttpsrc.c:1292
+#: ext/soup/gstsouphttpsrc.c:1276
 msgid "Secure connection setup failed."
 msgstr ""
 
-#: ext/soup/gstsouphttpsrc.c:1300
+#: ext/soup/gstsouphttpsrc.c:1284
 msgid ""
 "A network error occurred, or the server closed the connection unexpectedly."
 msgstr ""
 
-#: ext/soup/gstsouphttpsrc.c:1307
+#: ext/soup/gstsouphttpsrc.c:1291
 msgid "Server sent bad data."
 msgstr ""
 
@@ -107,13 +107,13 @@
 msgid "This file contains too many streams. Only playing first %d"
 msgstr ""
 
-#: gst/rtsp/gstrtspsrc.c:6432
+#: gst/rtsp/gstrtspsrc.c:6433
 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:6437
+#: gst/rtsp/gstrtspsrc.c:6438
 msgid ""
 "No supported stream was found. You might need to allow more transport "
 "protocols or may otherwise be missing the right GStreamer RTSP extension "
@@ -253,80 +253,80 @@
 msgid "Error reading %d bytes from device '%s'."
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:1168
+#: sys/v4l2/gstv4l2object.c:1172
 #, c-format
 msgid "Failed to enumerate possible video formats device '%s' can work with"
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:2876
+#: sys/v4l2/gstv4l2object.c:2880
 #, c-format
 msgid "Could not map buffers from device '%s'"
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:2884
+#: sys/v4l2/gstv4l2object.c:2888
 #, c-format
 msgid "The driver of device '%s' does not support the IO method %d"
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:2891
+#: sys/v4l2/gstv4l2object.c:2895
 #, c-format
 msgid "The driver of device '%s' does not support any known IO method."
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3514 sys/v4l2/gstv4l2object.c:3525
+#: sys/v4l2/gstv4l2object.c:3518 sys/v4l2/gstv4l2object.c:3529
 #, c-format
 msgid "Device '%s' is busy"
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3531 sys/v4l2/gstv4l2object.c:3543
+#: sys/v4l2/gstv4l2object.c:3535 sys/v4l2/gstv4l2object.c:3547
 #, c-format
 msgid "Device '%s' cannot capture at %dx%d"
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3554
+#: sys/v4l2/gstv4l2object.c:3558
 #, c-format
 msgid "Device '%s' cannot capture in the specified format"
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3567
+#: sys/v4l2/gstv4l2object.c:3571
 #, c-format
 msgid "Device '%s' does support non-contiguous planes"
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3578
+#: sys/v4l2/gstv4l2object.c:3582
 #, c-format
 msgid "Could not get parameters on device '%s'"
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3586
+#: sys/v4l2/gstv4l2object.c:3590
 msgid "Video device did not accept new frame rate setting."
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3708
+#: sys/v4l2/gstv4l2object.c:3712
 msgid "Video device did not provide output format."
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3714
+#: sys/v4l2/gstv4l2object.c:3718
 msgid "Video device returned invalid dimensions."
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3722
+#: sys/v4l2/gstv4l2object.c:3726
 msgid "Video devices uses an unsupported interlacing method."
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:3729
+#: sys/v4l2/gstv4l2object.c:3733
 msgid "Video devices uses an unsupported pixel format."
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:4156
+#: sys/v4l2/gstv4l2object.c:4160
 msgid "Failed to configure internal buffer pool."
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:4162
+#: sys/v4l2/gstv4l2object.c:4166
 msgid "Video device did not suggest any buffer size."
 msgstr ""
 
-#: sys/v4l2/gstv4l2object.c:4177
+#: sys/v4l2/gstv4l2object.c:4181
 msgid "No downstream pool to import from."
 msgstr ""
 
diff --git a/po/hr.gmo b/po/hr.gmo
index 4a17795..c1090e7 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differ
diff --git a/po/hr.po b/po/hr.po
index 9907c25..9e30592 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 f8ccda4..ac40d95 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index e36935b..3e3d428 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 a73b695..2a4db4a 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
index a1d2a63..8e82b32 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 bd53af9..53cd4aa 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index 799759b..b7ac423 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 d9a6e75..673b098 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 6b550dc..7097cea 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 8b11df7..4067430 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/lt.po b/po/lt.po
index 15963ed..b3a0588 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 347368f..12f5ff1 100644
--- a/po/lv.gmo
+++ b/po/lv.gmo
Binary files differ
diff --git a/po/lv.po b/po/lv.po
index 9dcfc2c..dd97370 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 0e34cb4..a240d64 100644
--- a/po/mt.gmo
+++ b/po/mt.gmo
Binary files differ
diff --git a/po/mt.po b/po/mt.po
index 091ca8a..325bcc2 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 f806a8e..ee727e6 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index 22171cd..0a733a1 100644
--- a/po/nb.po
+++ b/po/nb.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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\n"
 "PO-Revision-Date: 2016-08-05 23:47+0200\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 12fbdf7..4abfeab 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index 5a273fd..194ac24 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 efacd54..a3a7240 100644
--- a/po/or.gmo
+++ b/po/or.gmo
Binary files differ
diff --git a/po/or.po b/po/or.po
index 47e1dc6..0cf3ffe 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 d502dd9..53bf122 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index d974478..073155d 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 3c6aa16..2939511 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 b8fe44a..0e63770 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 97f49ca..61d6a65 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index 9f4ac1a..3979b5c 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 0176890..22bb6f0 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/ru.po b/po/ru.po
index 48a619a..cfbb332 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 c60ba03..30b4310 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sk.po b/po/sk.po
index 8213ce4..af8ae36 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 bb0b11b..127db04 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index 5327073..10f76e8 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 ccc58ea..49ed5af 100644
--- a/po/sq.gmo
+++ b/po/sq.gmo
Binary files differ
diff --git a/po/sq.po b/po/sq.po
index f755648..6be8b1c 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 ca222f7..1a2d602 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr.po b/po/sr.po
index 064499c..2ad2f70 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 5e610fa..068b3a9 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index dbdb58b..e96f530 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 549629a..d9fd32f 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index ab087f6..053d252 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 1e8670c..5cbb513 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/uk.po b/po/uk.po
index fa55884..138146b 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 df24dc2..a9d7a5c 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index 5dfbe7e..c168f37 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 1590b02..9971292 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 a8a2c49..3bd25a0 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 7eecb14..33f4de5 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 ce3dc35..bd301a9 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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 8aaa25b..6a75768 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 abea9b8..241778e 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-09-30 12:16+0300\n"
+"POT-Creation-Date: 2016-11-01 17:46+0200\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/sys/v4l2/gstv4l2object.c b/sys/v4l2/gstv4l2object.c
index e7637d2..fb87744 100644
--- a/sys/v4l2/gstv4l2object.c
+++ b/sys/v4l2/gstv4l2object.c
@@ -519,6 +519,10 @@
     gst_caps_unref (v4l2object->probed_caps);
   }
 
+  if (v4l2object->extra_controls) {
+    gst_structure_free (v4l2object->extra_controls);
+  }
+
   g_free (v4l2object);
 }
 
diff --git a/sys/waveform/gstwaveformsink.c b/sys/waveform/gstwaveformsink.c
index 30b2ad5..b670a5f 100644
--- a/sys/waveform/gstwaveformsink.c
+++ b/sys/waveform/gstwaveformsink.c
@@ -322,8 +322,8 @@
     wfsink->cached_caps = gst_caps_ref (caps);
   }
 
-  GST_CAT_LOG_OBJECT (waveformsink_debug, wfsink, "Returning caps %s",
-      gst_caps_to_string (caps));
+  GST_CAT_LOG_OBJECT (waveformsink_debug, wfsink,
+      "Returning caps %" GST_PTR_FORMAT, caps);
 
   return caps;
 }
diff --git a/tests/check/elements/level.c b/tests/check/elements/level.c
index f05370f..b17ea16 100644
--- a/tests/check/elements/level.c
+++ b/tests/check/elements/level.c
@@ -96,6 +96,7 @@
 {
   GST_DEBUG ("cleanup_level");
 
+  gst_check_drop_buffers ();
   gst_pad_set_active (mysrcpad, FALSE);
   gst_pad_set_active (mysinkpad, FALSE);
   gst_check_teardown_src_pad (level);
@@ -194,7 +195,6 @@
   gst_element_set_bus (level, NULL);
   ASSERT_OBJECT_REFCOUNT (bus, "bus", 1);
   gst_object_unref (bus);
-  gst_buffer_unref (outbuffer);
   fail_unless (gst_element_set_state (level,
           GST_STATE_NULL) == GST_STATE_CHANGE_SUCCESS, "could not set to null");
   ASSERT_OBJECT_REFCOUNT (level, "level", 1);
@@ -241,7 +241,6 @@
   gst_object_unref (bus);
   gst_element_set_state (level, GST_STATE_NULL);
   cleanup_level (level);
-  gst_check_drop_buffers ();
 }
 
 GST_END_TEST;
@@ -298,7 +297,6 @@
   gst_message_unref (message);
   gst_element_set_bus (level, NULL);
   gst_object_unref (bus);
-  gst_buffer_unref (outbuffer);
   gst_element_set_state (level, GST_STATE_NULL);
   cleanup_level (level);
 }
@@ -377,7 +375,6 @@
   gst_bus_set_flushing (bus, TRUE);
   gst_element_set_bus (level, NULL);
   gst_object_unref (bus);
-  gst_buffer_unref (outbuffer);
   gst_element_set_state (level, GST_STATE_NULL);
   cleanup_level (level);
 }
@@ -436,7 +433,6 @@
   gst_message_unref (message);
   gst_element_set_bus (level, NULL);
   gst_object_unref (bus);
-  gst_buffer_unref (outbuffer);
   gst_element_set_state (level, GST_STATE_NULL);
   cleanup_level (level);
 }
@@ -503,7 +499,6 @@
   gst_message_unref (message);
   gst_element_set_bus (level, NULL);
   gst_object_unref (bus);
-  gst_buffer_unref (outbuffer);
   gst_element_set_state (level, GST_STATE_NULL);
   cleanup_level (level);
 }
@@ -543,7 +538,6 @@
 
   gst_element_set_bus (level, NULL);
   gst_object_unref (bus);
-  gst_buffer_unref (outbuffer);
   gst_element_set_state (level, GST_STATE_NULL);
   cleanup_level (level);
 }
@@ -591,7 +585,6 @@
 
   gst_element_set_bus (level, NULL);
   gst_object_unref (bus);
-  gst_buffer_unref (outbuffer);
   gst_element_set_state (level, GST_STATE_NULL);
   cleanup_level (level);
 }
diff --git a/tests/check/elements/souphttpsrc.c b/tests/check/elements/souphttpsrc.c
index 03f4d40..a6231fa 100644
--- a/tests/check/elements/souphttpsrc.c
+++ b/tests/check/elements/souphttpsrc.c
@@ -36,7 +36,6 @@
 #define SoupStatus SoupKnownStatusCode
 #endif
 
-static guint http_port = 0, https_port = 0;
 
 gboolean redirect = TRUE;
 
@@ -53,8 +52,8 @@
 static const char *basic_auth_path = "/basic_auth";
 static const char *digest_auth_path = "/digest_auth";
 
-static gboolean run_server (guint * http_port, guint * https_port);
-static void stop_server (void);
+static guint get_port_from_server (SoupServer * server);
+static SoupServer *run_server (gboolean use_https);
 
 static void
 handoff_cb (GstElement * fakesink, GstBuffer * buf, GstPad * pad,
@@ -85,22 +84,24 @@
   return NULL;
 }
 
-static int
-run_test (const char *format, ...)
+static gboolean
+run_test (gboolean use_https, const gchar * path, gint expected)
 {
   GstStateChangeReturn ret;
-
   GstElement *pipe, *src, *sink;
-
   GstBuffer *buf = NULL;
-
   GstMessage *msg;
-
   gchar *url;
+  gboolean res = FALSE;
+  SoupServer *server;
+  guint port;
 
-  va_list args;
-
-  int rc = -1;
+  server = run_server (use_https);
+  if (server == NULL) {
+    g_print ("Failed to start up %s server", use_https ? "HTTPS" : "HTTP");
+    /* skip this test */
+    return TRUE;
+  }
 
   pipe = gst_pipeline_new (NULL);
 
@@ -114,13 +115,9 @@
   gst_bin_add (GST_BIN (pipe), sink);
   fail_unless (gst_element_link (src, sink));
 
-  if (http_port == 0) {
-    GST_DEBUG ("failed to start soup http server");
-  }
-  fail_unless (http_port != 0);
-  va_start (args, format);
-  g_vasprintf (&url, format, args);
-  va_end (args);
+  port = get_port_from_server (server);
+  url = g_strdup_printf ("%s://127.0.0.1:%u%s",
+      use_https ? "https" : "http", port, path);
   fail_unless (url != NULL);
   g_object_set (src, "location", url, NULL);
   g_free (url);
@@ -148,8 +145,8 @@
       GST_MESSAGE_EOS | GST_MESSAGE_ERROR, -1);
   if (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_ERROR) {
     gchar *debug = NULL;
-
     GError *err = NULL;
+    gint rc = -1;
 
     gst_message_parse_error (msg, &err, &debug);
     GST_INFO ("error: %s", err->message);
@@ -170,6 +167,8 @@
     g_error_free (err);
     g_free (debug);
     gst_message_unref (msg);
+    GST_DEBUG ("Got HTTP error %u, expected %u", rc, expected);
+    res = (rc == expected);
     goto done;
   }
   gst_message_unref (msg);
@@ -183,6 +182,7 @@
      * it might be for lots of reasons (no network connection, whatever), we're
      * not interested in those */
     GST_DEBUG ("didn't manage to get data within 10 seconds, skipping test");
+    res = TRUE;
     goto done;
   }
 
@@ -191,34 +191,34 @@
   /* first buffer should have a 0 offset */
   fail_unless (GST_BUFFER_OFFSET (buf) == 0);
   gst_buffer_unref (buf);
-  rc = 0;
+  res = (expected == 0);
 
 done:
 
   gst_element_set_state (pipe, GST_STATE_NULL);
   gst_object_unref (pipe);
-  return rc;
+  gst_object_unref (server);
+  return res;
 }
 
 GST_START_TEST (test_first_buffer_has_offset)
 {
-  fail_unless (run_test ("http://127.0.0.1:%u/", http_port) == 0);
+  fail_unless (run_test (FALSE, "/", 0));
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_not_found)
 {
-  fail_unless (run_test ("http://127.0.0.1:%u/404", http_port) == 404);
-  fail_unless (run_test ("http://127.0.0.1:%u/404-with-data",
-          http_port) == 404);
+  fail_unless (run_test (FALSE, "/404", 404));
+  fail_unless (run_test (FALSE, "/404-with-data", 404));
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_forbidden)
 {
-  fail_unless (run_test ("http://127.0.0.1:%u/403", http_port) == 403);
+  fail_unless (run_test (FALSE, "/403", 403));
 }
 
 GST_END_TEST;
@@ -226,7 +226,7 @@
 GST_START_TEST (test_redirect_no)
 {
   redirect = FALSE;
-  fail_unless (run_test ("http://127.0.0.1:%u/302", http_port) == 302);
+  fail_unless (run_test (FALSE, "/302", 302));
 }
 
 GST_END_TEST;
@@ -234,17 +234,14 @@
 GST_START_TEST (test_redirect_yes)
 {
   redirect = TRUE;
-  fail_unless (run_test ("http://127.0.0.1:%u/302", http_port) == 0);
+  fail_unless (run_test (FALSE, "/302", 0));
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_https)
 {
-  if (!https_port)
-    GST_INFO ("Failed to start an HTTPS server; let's just skip this test.");
-  else
-    fail_unless (run_test ("https://127.0.0.1:%u/", https_port) == 0);
+  fail_unless (run_test (TRUE, "/", 0));
 }
 
 GST_END_TEST;
@@ -252,96 +249,96 @@
 GST_START_TEST (test_cookies)
 {
   static const char *biscotti[] = { "delacre=yummie", "koekje=lu", NULL };
-  int rc;
+  gboolean res;
 
   cookies = biscotti;
-  rc = run_test ("http://127.0.0.1:%u/", http_port);
+  res = run_test (FALSE, "/", 0);
   cookies = NULL;
-  fail_unless (rc == 0);
+  fail_unless (res);
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_good_user_basic_auth)
 {
-  int res;
+  gboolean res;
 
   user_id = good_user;
   user_pw = good_pw;
-  res = run_test ("http://127.0.0.1:%u%s", http_port, basic_auth_path);
+  res = run_test (FALSE, basic_auth_path, 0);
   GST_DEBUG ("Basic Auth user %s password %s res = %d", user_id, user_pw, res);
   user_id = user_pw = NULL;
-  fail_unless (res == 0);
+  fail_unless (res);
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_bad_user_basic_auth)
 {
-  int res;
+  gboolean res;
 
   user_id = bad_user;
   user_pw = good_pw;
-  res = run_test ("http://127.0.0.1:%u%s", http_port, basic_auth_path);
+  res = run_test (FALSE, basic_auth_path, 401);
   GST_DEBUG ("Basic Auth user %s password %s res = %d", user_id, user_pw, res);
   user_id = user_pw = NULL;
-  fail_unless (res == 401);
+  fail_unless (res);
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_bad_password_basic_auth)
 {
-  int res;
+  gboolean res;
 
   user_id = good_user;
   user_pw = bad_pw;
-  res = run_test ("http://127.0.0.1:%u%s", http_port, basic_auth_path);
+  res = run_test (FALSE, basic_auth_path, 401);
   GST_DEBUG ("Basic Auth user %s password %s res = %d", user_id, user_pw, res);
   user_id = user_pw = NULL;
-  fail_unless (res == 401);
+  fail_unless (res);
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_good_user_digest_auth)
 {
-  int res;
+  gboolean res;
 
   user_id = good_user;
   user_pw = good_pw;
-  res = run_test ("http://127.0.0.1:%u%s", http_port, digest_auth_path);
+  res = run_test (FALSE, digest_auth_path, 0);
   GST_DEBUG ("Digest Auth user %s password %s res = %d", user_id, user_pw, res);
   user_id = user_pw = NULL;
-  fail_unless (res == 0);
+  fail_unless (res);
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_bad_user_digest_auth)
 {
-  int res;
+  gboolean res;
 
   user_id = bad_user;
   user_pw = good_pw;
-  res = run_test ("http://127.0.0.1:%u%s", http_port, digest_auth_path);
+  res = run_test (FALSE, digest_auth_path, 401);
   GST_DEBUG ("Digest Auth user %s password %s res = %d", user_id, user_pw, res);
   user_id = user_pw = NULL;
-  fail_unless (res == 401);
+  fail_unless (res);
 }
 
 GST_END_TEST;
 
 GST_START_TEST (test_bad_password_digest_auth)
 {
-  int res;
+  gboolean res;
 
   user_id = good_user;
   user_pw = bad_pw;
-  res = run_test ("http://127.0.0.1:%u%s", http_port, digest_auth_path);
+  res = run_test (FALSE, digest_auth_path, 401);
   GST_DEBUG ("Digest Auth user %s password %s res = %d", user_id, user_pw, res);
   user_id = user_pw = NULL;
-  fail_unless (res == 401);
+  fail_unless (res);
 }
 
 GST_END_TEST;
@@ -424,9 +421,6 @@
 
 GST_END_TEST;
 
-static SoupServer *server;      /* NULL */
-static SoupServer *ssl_server;  /* NULL */
-
 static Suite *
 souphttpsrc_suite (void)
 {
@@ -443,27 +437,19 @@
   tc_internet = tcase_create ("internet");
 
   suite_add_tcase (s, tc_chain);
-  if (run_server (&http_port, &https_port)) {
-    atexit (stop_server);
-    tcase_add_test (tc_chain, test_first_buffer_has_offset);
-    tcase_add_test (tc_chain, test_redirect_yes);
-    tcase_add_test (tc_chain, test_redirect_no);
-    tcase_add_test (tc_chain, test_not_found);
-    tcase_add_test (tc_chain, test_forbidden);
-    tcase_add_test (tc_chain, test_cookies);
-    tcase_add_test (tc_chain, test_good_user_basic_auth);
-    tcase_add_test (tc_chain, test_bad_user_basic_auth);
-    tcase_add_test (tc_chain, test_bad_password_basic_auth);
-    tcase_add_test (tc_chain, test_good_user_digest_auth);
-    tcase_add_test (tc_chain, test_bad_user_digest_auth);
-    tcase_add_test (tc_chain, test_bad_password_digest_auth);
-
-    if (ssl_server != NULL)
-      tcase_add_test (tc_chain, test_https);
-  } else {
-    g_print ("Skipping 12 souphttpsrc tests, couldn't start or connect to "
-        "local http server\n");
-  }
+  tcase_add_test (tc_chain, test_first_buffer_has_offset);
+  tcase_add_test (tc_chain, test_redirect_yes);
+  tcase_add_test (tc_chain, test_redirect_no);
+  tcase_add_test (tc_chain, test_not_found);
+  tcase_add_test (tc_chain, test_forbidden);
+  tcase_add_test (tc_chain, test_cookies);
+  tcase_add_test (tc_chain, test_good_user_basic_auth);
+  tcase_add_test (tc_chain, test_bad_user_basic_auth);
+  tcase_add_test (tc_chain, test_bad_password_basic_auth);
+  tcase_add_test (tc_chain, test_good_user_digest_auth);
+  tcase_add_test (tc_chain, test_bad_user_digest_auth);
+  tcase_add_test (tc_chain, test_bad_password_digest_auth);
+  tcase_add_test (tc_chain, test_https);
 
   suite_add_tcase (s, tc_internet);
   tcase_set_timeout (tc_internet, 250);
@@ -577,84 +563,73 @@
   return port;
 }
 
-static gboolean
-run_server (guint * http_port, guint * https_port)
+static SoupServer *
+run_server (gboolean use_https)
 {
-  guint port = SOUP_ADDRESS_ANY_PORT;
-  guint ssl_port = SOUP_ADDRESS_ANY_PORT;
-  const char *ssl_cert_file = GST_TEST_FILES_PATH "/test-cert.pem";
-  const char *ssl_key_file = GST_TEST_FILES_PATH "/test-key.pem";
-  static int server_running = 0;
-  GSocketAddress *address;
-  GError *err = NULL;
+  SoupServer *server;
+  SoupServerListenOptions listen_flags;
+  guint port;
 
-  SoupAuthDomain *domain = NULL;
 
-  if (server_running)
-    return TRUE;
-
-  server_running = 1;
-
-  *http_port = *https_port = 0;
-
-  server = soup_server_new (NULL, NULL);
-  if (!server) {
-    GST_DEBUG ("Unable to create server");
-    return FALSE;
-  }
-  soup_server_add_handler (server, NULL, server_callback, NULL, NULL);
-  domain = soup_auth_domain_basic_new (SOUP_AUTH_DOMAIN_REALM, realm,
-      SOUP_AUTH_DOMAIN_BASIC_AUTH_CALLBACK, basic_auth_cb,
-      SOUP_AUTH_DOMAIN_ADD_PATH, basic_auth_path, NULL);
-  soup_server_add_auth_domain (server, domain);
-  g_object_unref (domain);
-  domain = soup_auth_domain_digest_new (SOUP_AUTH_DOMAIN_REALM, realm,
-      SOUP_AUTH_DOMAIN_DIGEST_AUTH_CALLBACK, digest_auth_cb,
-      SOUP_AUTH_DOMAIN_ADD_PATH, digest_auth_path, NULL);
-  soup_server_add_auth_domain (server, domain);
-  g_object_unref (domain);
-
-  address = g_inet_socket_address_new_from_string ("0.0.0.0", port);
-  soup_server_listen (server, address, 0, &err);
-  g_object_unref (address);
-  if (err) {
-    stop_server ();
-    g_clear_error (&err);
-    return FALSE;
-  }
-
-  *http_port = get_port_from_server (server);
-  GST_DEBUG ("HTTP server listening on port %u", *http_port);
-
-  if (ssl_cert_file && ssl_key_file) {
+  if (use_https) {
+    const char *ssl_cert_file = GST_TEST_FILES_PATH "/test-cert.pem";
+    const char *ssl_key_file = GST_TEST_FILES_PATH "/test-key.pem";
     GTlsBackend *backend = g_tls_backend_get_default ();
 
-    if (backend != NULL && g_tls_backend_supports_tls (backend)) {
-      ssl_server = soup_server_new (SOUP_SERVER_SSL_CERT_FILE, ssl_cert_file,
-          SOUP_SERVER_SSL_KEY_FILE, ssl_key_file, NULL);
-    } else {
+    if (backend == NULL || !g_tls_backend_supports_tls (backend)) {
       GST_INFO ("No TLS support");
+      return NULL;
     }
 
-    if (ssl_server) {
-      GST_INFO ("HTTPS server listening on port %u", *https_port);
-      soup_server_add_handler (ssl_server, NULL, server_callback, NULL, NULL);
-      address = g_inet_socket_address_new_from_string ("0.0.0.0", ssl_port);
-      soup_server_listen (ssl_server, address, SOUP_SERVER_LISTEN_HTTPS, &err);
-      g_object_unref (address);
+    server = soup_server_new (SOUP_SERVER_SSL_CERT_FILE, ssl_cert_file,
+        SOUP_SERVER_SSL_KEY_FILE, ssl_key_file, NULL);
+    listen_flags = SOUP_SERVER_LISTEN_HTTPS;
+  } else {
+    server = soup_server_new (NULL, NULL);
+    listen_flags = 0;
+  }
 
-      if (err) {
-        GST_ERROR ("Failed to start HTTPS server: %s", err->message);
-        stop_server ();
-        g_clear_error (&err);
-        return FALSE;
-      }
+  soup_server_add_handler (server, NULL, server_callback, NULL, NULL);
 
-      *https_port = get_port_from_server (ssl_server);
-      GST_DEBUG ("HTTPS server listening on port %u", *https_port);
+  {
+    SoupAuthDomain *domain;
+
+    domain = soup_auth_domain_basic_new (SOUP_AUTH_DOMAIN_REALM, realm,
+        SOUP_AUTH_DOMAIN_BASIC_AUTH_CALLBACK, basic_auth_cb,
+        SOUP_AUTH_DOMAIN_ADD_PATH, basic_auth_path, NULL);
+    soup_server_add_auth_domain (server, domain);
+    g_object_unref (domain);
+
+    domain = soup_auth_domain_digest_new (SOUP_AUTH_DOMAIN_REALM, realm,
+        SOUP_AUTH_DOMAIN_DIGEST_AUTH_CALLBACK, digest_auth_cb,
+        SOUP_AUTH_DOMAIN_ADD_PATH, digest_auth_path, NULL);
+    soup_server_add_auth_domain (server, domain);
+    g_object_unref (domain);
+  }
+
+  {
+    GSocketAddress *address;
+    GError *err = NULL;
+
+    address =
+        g_inet_socket_address_new_from_string ("0.0.0.0",
+        SOUP_ADDRESS_ANY_PORT);
+    soup_server_listen (server, address, listen_flags, &err);
+    g_object_unref (address);
+
+    if (err) {
+      GST_ERROR ("Failed to start %s server: %s",
+          use_https ? "HTTPS" : "HTTP", err->message);
+      g_object_unref (server);
+      g_error_free (err);
+      return NULL;
     }
   }
 
+  port = get_port_from_server (server);
+  GST_DEBUG ("%s server listening on port %u", use_https ? "HTTPS" : "HTTP",
+      port);
+
   /* check if we can connect to our local http server */
   {
     GSocketConnection *conn;
@@ -662,48 +637,18 @@
 
     client = g_socket_client_new ();
     g_socket_client_set_timeout (client, 2);
-    conn = g_socket_client_connect_to_host (client, "127.0.0.1", *http_port,
-        NULL, NULL);
+    conn =
+        g_socket_client_connect_to_host (client, "127.0.0.1", port, NULL, NULL);
     if (conn == NULL) {
-      GST_INFO ("Couldn't connect to http server 127.0.0.1:%u", *http_port);
+      GST_INFO ("Couldn't connect to 127.0.0.1:%u", port);
       g_object_unref (client);
-      stop_server ();
-      return FALSE;
+      g_object_unref (server);
+      return NULL;
     }
+
     g_object_unref (conn);
-
-    if (ssl_server == NULL)
-      goto skip_https_check;
-
-    conn = g_socket_client_connect_to_host (client, "127.0.0.1", *https_port,
-        NULL, NULL);
-    if (conn == NULL) {
-      GST_INFO ("Couldn't connect to https server 127.0.0.1:%u", *https_port);
-      g_object_unref (client);
-      stop_server ();
-      return FALSE;
-    }
-    g_object_unref (conn);
-
-  skip_https_check:
-
     g_object_unref (client);
   }
 
-  return TRUE;
-}
-
-static void
-stop_server (void)
-{
-  GST_INFO ("cleaning up");
-
-  if (server) {
-    g_object_unref (server);
-    server = NULL;
-  }
-  if (ssl_server) {
-    g_object_unref (ssl_server);
-    ssl_server = NULL;
-  }
+  return server;
 }
diff --git a/tests/check/elements/videomixer.c b/tests/check/elements/videomixer.c
index 5720092..ff8d1fa 100644
--- a/tests/check/elements/videomixer.c
+++ b/tests/check/elements/videomixer.c
@@ -973,6 +973,7 @@
 
 GST_END_TEST;
 
+#if 0
 GST_START_TEST (test_flush_start_flush_stop)
 {
   GstPadTemplate *sink_template;
@@ -1025,7 +1026,7 @@
 }
 
 GST_END_TEST;
-
+#endif
 
 static Suite *
 videomixer_suite (void)
@@ -1044,7 +1045,14 @@
   tcase_add_test (tc_chain, test_duration_is_max);
   tcase_add_test (tc_chain, test_duration_unknown_overrides);
   tcase_add_test (tc_chain, test_loop);
+  /* This test is racy and occasionally fails in interesting ways
+   * just like the corresponding adder test does/did, see
+   * https://bugzilla.gnome.org/show_bug.cgi?id=708891
+   * It's unlikely that it will ever be fixed for videomixer/collectpads,
+   * as it works fine with compositor */
+#if 0
   tcase_add_test (tc_chain, test_flush_start_flush_stop);
+#endif
 
   /* Use a longer timeout */
 #ifdef HAVE_VALGRIND
diff --git a/tests/examples/rtp/client-rtpaux.c b/tests/examples/rtp/client-rtpaux.c
index 011fcce..890dc1a 100644
--- a/tests/examples/rtp/client-rtpaux.c
+++ b/tests/examples/rtp/client-rtpaux.c
@@ -163,10 +163,13 @@
     gpointer user_data)
 {
   SessionData *data = (SessionData *) user_data;
+  gchar *caps_str;
   g_print ("Looking for caps for pt %u in session %u, have %u\n", pt, session,
       data->sessionNum);
   if (session == data->sessionNum) {
-    g_print ("Returning %s\n", gst_caps_to_string (data->caps));
+    caps_str = gst_caps_to_string (data->caps);
+    g_print ("Returning %s\n", caps_str);
+    g_free (caps_str);
     return gst_caps_ref (data->caps);
   }
   return NULL;
diff --git a/win32/common/config.h b/win32/common/config.h
index 3869d7a..1a142f0 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-09-30"
+#define GST_PACKAGE_RELEASE_DATETIME "2016-11-01"
 
 /* Define if static plugins should be built */
 #undef GST_PLUGIN_BUILD_STATIC
@@ -401,7 +401,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.9.90"
+#define PACKAGE_STRING "GStreamer Good Plug-ins 1.10.0"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "gst-plugins-good"
@@ -410,7 +410,7 @@
 #undef PACKAGE_URL
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "1.9.90"
+#define PACKAGE_VERSION "1.10.0"
 
 /* directory where plugins are located */
 #ifdef _DEBUG
@@ -445,7 +445,7 @@
 #undef TARGET_CPU
 
 /* Version number of package */
-#define VERSION "1.9.90"
+#define VERSION "1.10.0"
 
 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
    significant byte first (like Motorola and SPARC, unlike Intel). */